MCP-Server
← Alle Server

sevdesk

Buchhaltung

Kontakte, Ausgangsrechnungen, Eingangsbelege, Angebote, Artikel, Bankumsätze und Auswertungen aus sevdesk. Lesen und Anlegen — kein Ändern, kein Löschen, kein Buchen.

21 Tools · OAuth 2.1 mit PKCE · v1.0.0

Lesend

16 Tools

Fragen ab. Können nichts verändern.

system_info Konto und Buchhaltungsversion

Zeigt, mit welchem sevdesk-Konto gesprochen wird und in welcher Buchhaltungswelt es lebt. Das ist kein Beiwerk: seit dem sevdesk-Update 2.0 heißt die Steuerregel taxRule und nicht mehr taxType. Wer beim Anlegen die falsche schickt, bekommt 422 oder einen Beleg mit falscher Steuerregel. Guter erster Aufruf. Nennt außerdem die Bankkonten und die nächste freie Kundennummer.

ohne Argumente
search_contacts Kontakte suchen

Kontakte auflisten oder suchen. Wichtig zu wissen: sevdesk dokumentiert für die Kontaktliste nur den Filter customerNumber. Eine Namenssuche gibt es dort nicht — dieser Server holt deshalb Seiten und filtert den Namen selbst. Bei großen Adressbeständen also lieber die Kundennummer nehmen oder limit erhöhen. Das Ergebnis sagt, wie gefiltert wurde.

name: string  ·  customer_number: string  ·  limit: integer
get_contact Kontakt im Detail

Ein Kontakt mit Adressen und Kommunikationswegen. Adressen und Telefon/E-Mail sind bei sevdesk eigene Objekte und stehen NICHT am Kontakt — dieser Aufruf holt sie mit.

contact_id*: integer
search_invoices Rechnungen suchen

Ausgangsrechnungen suchen. Nach Status filtern geht nur mit 100 (Entwurf), 200 (offen/verschickt) und 1000 (bezahlt) — die Rechnungen selbst können auch 50 und 750 (teilweise bezahlt) haben, danach lässt sich aber nicht filtern. Die Kundennamen werden mitgeholt; ohne das stünde an jeder Rechnung nur eine ID.

status: integer  ·  contact_id: integer  ·  invoice_number: string  ·  date_from: string  ·  date_to: string  ·  limit: integer
get_invoice Rechnung im Detail

Eine Rechnung mit allen Positionen, Steuerangaben und Beträgen. Die Positionen sind ein eigener Aufruf bei sevdesk und werden hier mitgeholt.

invoice_id*: integer
download_document Beleg als PDF

Erzeugt einen zeitlich begrenzten Download-Link auf das PDF einer Rechnung, eines Auftrags oder einer Gutschrift. sevdesk liefert PDFs nur als base64 gegen den Token, deshalb stellt dieser Server die Datei über einen eigenen, nicht erratbaren Link bereit. Der Abruf setzt bewusst preventSendBy — ein Download darf den Beleg nicht als versendet markieren. Eingangsbelege (Voucher) haben kein PDF über die API.

doc_type*: string  ·  document_id*: integer  ·  minutes: integer
search_vouchers Eingangsbelege suchen

Belege (Voucher) sind bei sevdesk die Eingangsseite: Lieferantenrechnungen, Quittungen, Kassenbons. creditDebit trennt Einnahme (C) von Ausgabe (D). Status: 50 Entwurf, 100 offen/fällig, 1000 bezahlt.

status: integer  ·  credit_debit: string  ·  supplier_id: integer  ·  description: string  ·  date_from: string  ·  date_to: string  ·  limit: integer
get_voucher Eingangsbeleg im Detail

Ein Beleg mit seinen Positionen. Die Positionen tragen das Buchungskonto — die eigentlich interessante Information an einem Eingangsbeleg.

voucher_id*: integer
search_orders Angebote und Aufträge suchen

Aufträge sind bei sevdesk drei Dinge zugleich: Angebot (AN), Auftragsbestätigung (AB) und Lieferschein (LI) — unterschieden über orderType. Status: 100 Entwurf, 200 verschickt, 300 abgelehnt, 500 angenommen, 750 teilweise berechnet, 1000 berechnet.

status: integer  ·  contact_id: integer  ·  order_number: string  ·  date_from: string  ·  date_to: string  ·  limit: integer
get_order Auftrag im Detail

Ein Angebot, eine Auftragsbestätigung oder ein Lieferschein mit allen Positionen.

order_id*: integer
search_parts Artikel suchen

Artikel und Leistungen aus dem Stamm. Name und Artikelnummer filtert sevdesk selbst. Der Lagerbestand ist ein eigener Aufruf pro Artikel und wird nur auf Wunsch geholt.

name: string  ·  part_number: string  ·  with_stock: boolean  ·  limit: integer
check_accounts Bankkonten und Kontostände

Die Bankkonten des Mandanten. Der Kontostand zu einem Stichtag ist ein eigener Aufruf und wird nur geholt, wenn ein Datum mitgegeben wird.

balance_date: string
search_transactions Bankumsätze suchen

Umsätze auf den Bankkonten. isBooked=false zeigt genau das, was noch keinem Beleg zugeordnet ist — der übliche Einstieg für „was ist noch offen in der Buchhaltung?".

check_account_id: integer  ·  is_booked: boolean  ·  only_credit: boolean  ·  only_debit: boolean  ·  payee: string  ·  purpose: string  ·  date_from: string  ·  date_to: string  ·  limit: integer
revenue Umsatz auswerten

Umsatz über einen Zeitraum, aus den Rechnungen gerechnet und nach Monat aufgeteilt. 'gestellt' zählt alles, was verschickt oder bezahlt ist; 'bezahlt' nur Bezahltes. Entwürfe zählen nie mit — sie sind kein Umsatz.

date_from*: string  ·  date_to*: string  ·  basis: string  ·  limit: integer
open_items Offene Posten

Rechnungen, die noch nicht vollständig bezahlt sind, nach Überfälligkeit sortiert. Teilzahlungen zählen mit: offen ist Brutto minus paidAmount, nicht der ganze Betrag.

contact_id: integer  ·  overdue_only: boolean  ·  limit: integer
booking_accounts Erlaubte Buchungskonten

Welche Buchungskonten es gibt und welche Steuerregeln und Steuersätze dazu passen. Vor jedem create_voucher der richtige Aufruf: sevdesk lehnt eine unpassende Kombination aus Konto, Steuerregel und Steuersatz mit 422 ab, und die Meldung von dort erklärt nicht, welche Kombination gegangen wäre. Der Wert hängt vom Mandanten ab (Kleinunternehmer sehen andere Regeln).

richtung: string  ·  suche: string

Schreibend

5 Tools

Legen Neues an. Ändern und löschen nichts Bestehendes.

create_contact Kontakt anlegen

Legt einen Kunden, Lieferanten oder Partner an. Entweder 'firma' (dann ist es eine Organisation) oder 'vorname'/'nachname' (dann eine Person) — sevdesk entscheidet den Typ genau daran. Die Kategorie ist Pflicht und lässt sich später nicht über diesen Server ändern.

kategorie*: string  ·  firma: string  ·  vorname: string  ·  nachname: string  ·  kundennummer: string  ·  beschreibung: string  ·  ust_id: string  ·  steuernummer: string  ·  iban: string  ·  zahlungsziel_tage: integer
create_part Artikel anlegen

Legt einen Artikel oder eine Leistung im Stamm an. Die Einheit ist bei sevdesk ein eigenes Objekt, für das es keinen Endpunkt zum Nachschlagen gibt — sie wird deshalb aus einem vorhandenen Artikel übernommen, oder man gibt einheit_id mit. Erlaubte Steuersätze sind 0, 7 und 19.

name*: string  ·  artikelnummer*: string  ·  preis_netto: number  ·  einkaufspreis: number  ·  steuersatz*: number  ·  text: string  ·  lagerbestand: number  ·  lager_fuehren: boolean  ·  einheit_id: integer  ·  interner_kommentar: string
create_invoice Rechnung als Entwurf anlegen

Legt eine Ausgangsrechnung als ENTWURF an (Status 100). Verschickt oder gebucht wird nichts — das bleibt bewusst in sevdesk. sevdesk verlangt beim Anlegen mehrere IDs, für die es keinen Endpunkt zum Nachschlagen gibt (Kontaktperson, Einheit, Land); die werden aus vorhandenen Belegen des Kontos gelesen. Die Antwort sagt, was tatsächlich in der Rechnung gelandet ist — eine verworfene Position meldet sevdesk sonst nicht.

kontakt_id*: integer  ·  positionen*: array  ·  datum: string  ·  anschrift: string  ·  kopftext: string  ·  fusstext: string  ·  zahlungsziel_tage: integer  ·  preise_sind: string  ·  steuerregel_id: integer  ·  steuerart: string  ·  steuertext: string  ·  kontaktperson_id: integer  ·  einheit_id: integer  ·  land_id: integer  ·  waehrung: string
create_voucher Eingangsbeleg anlegen

Legt einen Eingangsbeleg an (Lieferantenrechnung, Quittung, Kassenbon) — als Entwurf oder als offen, nie als bezahlt. Jede Position braucht ein Buchungskonto; welche es gibt und welche Steuerregeln und -sätze dazu passen, zeigt booking_accounts. Passt die Kombination nicht, antwortet sevdesk mit 422. Eine bereits hochgeladene Datei lässt sich über 'datei' anhängen.

beschreibung*: string  ·  positionen*: array  ·  lieferant_id: integer  ·  lieferant_name: string  ·  datum: string  ·  faellig_am: string  ·  richtung: string  ·  entwurf: boolean  ·  steuerregel_id: integer  ·  steuerart: string  ·  datei: string
upload_voucher_file Belegdatei hochladen

Lädt einen Scan oder ein PDF in den Zwischenspeicher von sevdesk. Der zurückgegebene Dateiname gehört anschließend als 'datei' in create_voucher — erst dadurch hängt die Datei am Beleg. Ohne diesen zweiten Schritt verfällt der Upload.

dateiname*: string  ·  inhalt_base64*: string  ·  mime_type: string