Anmelden

MCP-Werkzeuge

Als Markdown ansehen

Jedes Werkzeug des MCP-Servers, aus seinen eigenen Definitionen geschrieben. Einen Assistenten verbinden richtet den Server ein. Ein Assistent liest die volle Beschreibung jedes Werkzeugs in tools/list. Die Beschreibungen der Argumente stehen dort wie hier auf Englisch.

documents:read

get_document

Liest einen Beleg als ocost.document.v1, wie GET /public/v1/documents/{document_id}.

ArgumentTypBedeutung
document_iduuid, PflichtAn id Ocost gave (a UUID)
JSON
{
  "name": "get_document",
  "arguments": {
    "document_id": "01a1b08c-7aa1-7b52-9d4e-2f1f1c0c4f11"
  }
}

get_file

Liefert Status, Grund und Belege einer Datei, wie GET /public/v1/files/{file_id}.

ArgumentTypBedeutung
file_iduuid, PflichtAn id Ocost gave (a UUID)
JSON
{
  "name": "get_file",
  "arguments": {
    "file_id": "01a1b08c-6e3a-7562-8f4a-7924722667b1"
  }
}

list_files

Listet Dateien nach ihrer letzten Änderung, älteste zuerst, wie GET /public/v1/files.

ArgumentTypBedeutung
statusListe aus received, reading, read, not_read, failedOnly files in these statuses
updated_sincedate-timeFiles changed at or after this time (ISO 8601)
cursorstringnext_cursor of the page before
limitinteger 1–100, Standard 50Dateien je Seite.
JSON
{
  "name": "list_files",
  "arguments": {
    "status": ["read", "not_read", "failed"],
    "updated_since": "2026-11-09T08:00:00Z"
  }
}

read_document

Liest die Seiten eines Belegs als Text, bis zu 4 Seiten und 12.000 Zeichen.

ArgumentTypBedeutung
document_iduuid, PflichtDie ID eines Belegs.
pagesListe aus integerDie Seitenzahlen der Datei, die gelesen werden.
JSON
{
  "name": "read_document",
  "arguments": {
    "document_id": "01a1b08c-7aa1-7b52-9d4e-2f1f1c0c4f11",
    "pages": [1, 2]
  }
}

find_documents

Listet Belege, neueste zuerst, nach Art, Familie oder Firma.

ArgumentTypBedeutung
kindacceptance_protocol, agreement, bonus_payment_notification, … (81 Werte)Eine Belegart, wie kind_detail sie unter Werte listet.
company_iduuidDie ID einer Firma, aus find_company.
familyinvoices, payments, buying, contracts, reports, people, otherEine Gruppe von Arten, etwa invoices oder contracts.
JSON
{
  "name": "find_documents",
  "arguments": {
    "kind": "credit_note",
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

find_contracts

Listet Verträge mit Laufzeit, Kündigungsfrist und wiederkehrenden Beträgen.

ArgumentTypBedeutung
company_iduuidDie ID einer Firma, aus find_company.
JSON
{
  "name": "find_contracts",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

find_company

Findet Lieferanten und Kunden nach Namen, mit ihren IDs.

ArgumentTypBedeutung
namestring, Standard ""Ein Teil des Namens. Ohne ihn werden alle gelistet.
JSON
{
  "name": "find_company",
  "arguments": {
    "name": "Musterbüro"
  }
}

find_project

Findet Projekte nach Namen, mit ihren IDs.

ArgumentTypBedeutung
namestring, Standard ""Ein Teil des Namens. Ohne ihn werden alle gelistet.
JSON
{
  "name": "find_project",
  "arguments": {
    "name": "Neubau"
  }
}

company_documents

Listet die Belege einer Firma in beide Richtungen, bis zu 30.

ArgumentTypBedeutung
company_iduuid, PflichtDie ID einer Firma, aus find_company.
JSON
{
  "name": "company_documents",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

invoice_detail

Zeigt eine Rechnung wie ihre Seite in Ocost: Beträge, Fälligkeit, Skonto, Bestellung und Verlauf.

ArgumentTypBedeutung
invoice_iduuid, PflichtDie ID einer Rechnung.
JSON
{
  "name": "invoice_detail",
  "arguments": {
    "invoice_id": "01a1b08c-8c3d-7f41-a2b5-3e4f5a6b7c8d"
  }
}

open_decisions

Listet die offenen Entscheidungen der verbundenen Person, fällige zuerst.

Nur über eine OAuth-Verbindung, als die Person, die sie erlaubt hat.

ArgumentTypBedeutung
company_iduuidDie ID einer Firma, aus find_company.
project_iduuidDie ID eines Projekts, aus find_project.
JSON
{
  "name": "open_decisions",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

check_invoice

Prüft Eingangsrechnungen nach § 14 UStG, und ob jede eine E-Rechnung ist.

ArgumentTypBedeutung
document_idsListe aus uuidDie zu prüfenden Rechnungen, nach ihren IDs.
company_iduuidDie ID einer Firma, aus find_company.
issued_sincedateDas Ausstellungsdatum, ab.
issued_untildateDas Ausstellungsdatum, bis.
only_missingboolean, Standard falseNur Rechnungen, denen etwas fehlt.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "check_invoice",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c",
    "issued_since": "2026-01-01",
    "only_missing": true
  }
}

documents:write

send_file

Schickt eine Datei als Base64, wie POST /public/v1/files.

ArgumentTypBedeutung
filenamestring, PflichtIts name, e.g. bill.pdf
content_base64string, PflichtThe file's bytes in base64: a PDF, an image (JPEG, PNG, TIFF, WebP) or an e-invoice's XML (XRechnung, UBL, CII), at most 25 MB
external_refstringYour own id for it, e.g. an Odoo bill's 'account.move,42'; kept and given back
JSON
{
  "name": "send_file",
  "arguments": {
    "filename": "invoice.pdf",
    "content_base64": "JVBERi0xLjcK…",
    "external_ref": "account.move,42"
  }
}

search:read

search_documents

Durchsucht, was Belege sagen: exakt, nach Wörtern, nach Bedeutung oder beides.

ArgumentTypBedeutung
querystring, PflichtWas gefunden werden soll.
matchexact, keywords, meaning, hybrid, Standard "hybrid"exact wie geschrieben, keywords nach Wörtern, meaning nach Bedeutung, hybrid beides.
document_iduuidNur in diesem Beleg suchen.
kindsListe aus acceptance_protocol, agreement, bonus_payment_notification, … (81 Werte)Nur diese Belegarten, wie kind_detail sie unter Werte listet.
familyinvoices, payments, buying, contracts, reports, people, otherEine Gruppe von Arten, etwa invoices oder contracts.
company_iduuidDie ID einer Firma, aus find_company.
project_iduuidDie ID eines Projekts, aus find_project.
site_iduuidDie ID eines Standorts.
issued_sincedateDas Ausstellungsdatum, ab.
issued_untildateDas Ausstellungsdatum, bis.
due_sincedateDas Fälligkeitsdatum einer Rechnung, ab.
due_untildateDas Fälligkeitsdatum einer Rechnung, bis.
gross_minDezimalzahlDer Bruttobetrag ab, in der Währung des Unternehmens.
gross_maxDezimalzahlDer Bruttobetrag bis, in der Währung des Unternehmens.
directionincoming, outgoingincoming von Lieferanten, outgoing an Kunden.
statusopen, paidBei einer Rechnung: open oder paid.
categorystringEin ECLASS-Code beliebiger Ebene, aus find_category.
limitintegerHöchstens so viele Zeilen.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "search_documents",
  "arguments": {
    "query": "Bürostuhl",
    "match": "hybrid",
    "kinds": ["invoice"],
    "issued_since": "2026-01-01"
  }
}

search

Sucht Belege für Deep Research und Unternehmenswissen in ChatGPT.

ArgumentTypBedeutung
querystring, PflichtWhat to find
JSON
{
  "name": "search",
  "arguments": {
    "query": "Wartungsvertrag Aufzug"
  }
}

fetch

Holt ein Ergebnis von search ganz: seine ersten vier Seiten, bis zu 12.000 Zeichen.

ArgumentTypBedeutung
idstring, PflichtA result's id
JSON
{
  "name": "fetch",
  "arguments": {
    "id": "01a1b08c-7aa1-7b52-9d4e-2f1f1c0c4f11"
  }
}

figures:read

find_category

Macht aus Wörtern in jeder Sprache von Ocost ECLASS-Codes.

ArgumentTypBedeutung
wordsstring, PflichtWörter für eine Kategorie, in jeder Sprache von Ocost.
JSON
{
  "name": "find_category",
  "arguments": {
    "words": "Büromaterial"
  }
}

company_profile

Fasst die letzten 12 Monate einer Firma zusammen: Einkauf, Verkauf, Konditionen, offene Posten und Zahlungsdauer.

ArgumentTypBedeutung
company_iduuid, PflichtDie ID einer Firma, aus find_company.
JSON
{
  "name": "company_profile",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

project_overview

Vergleicht den Plan eines Projekts mit dem Ausgegebenen und dem Gebundenen, nach Lieferant und Monat.

ArgumentTypBedeutung
project_iduuid, PflichtDie ID eines Projekts, aus find_project.
JSON
{
  "name": "project_overview",
  "arguments": {
    "project_id": "01a1b08c-4b1c-7d20-9a4b-2c3d4e5f6a7b"
  }
}

query_figures

Summiert Datensätze für ein Diagramm, einen Vergleich oder eine Anzahl.

ArgumentTypBedeutung
sourcedocuments, lines, invoices, … (11 Werte), PflichtWas summiert wird, etwa invoices oder lines.
group_byListe aus Objekt (field, bucket, level), PflichtEin oder zwei Felder: die Zeilen, dann die Spalten.
measureObjekt (agg, field, signed)Was summiert wird: eine Anzahl, oder Summe, Durchschnitt, Minimum oder Maximum eines Felds.
filtersListe aus Objekt (field, values, since, until, min, max)Bedingungen auf Feldern der Quelle.
yearintegerEin Jahr. period ersetzt es.
compareprevious_period, previous_yearMit dem Zeitraum davor vergleichen, oder mit demselben ein Jahr früher.
top_nintegerNur die größten Gruppen.
matchingObjekt (query, match)Nur die Belege, die eine Suche findet.
titlestringDer Titel der Tabelle.
periodstringKlartext, etwa 2025, Q3 2025 oder last year.
JSON
{
  "name": "query_figures",
  "arguments": {
    "source": "invoices",
    "measure": {"agg": "sum", "field": "net"},
    "group_by": [{"field": "company"}],
    "filters": [{"field": "direction", "values": ["incoming"]}],
    "period": "2025",
    "top_n": 10
  }
}

top_companies

Ordnet die größten Lieferanten oder Kunden nach Netto über einen Zeitraum.

ArgumentTypBedeutung
sidesuppliers, customers, Standard "suppliers"Lieferanten (Standard) oder Kunden.
periodstringKlartext, etwa 2025, Q3 2025 oder last year.
sincedateAb diesem Datum.
untildateBis zu diesem Datum.
categorystringEin ECLASS-Code oder Wörter.
ninteger, Standard 10Wie viele gelistet werden.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "top_companies",
  "arguments": {
    "side": "suppliers",
    "period": "2025",
    "n": 10
  }
}

spend_over_time

Liefert Netto je Monat, Quartal oder Jahr, auf Wunsch nach Firma oder Kategorie.

ArgumentTypBedeutung
periodstringKlartext, etwa 2025, Q3 2025 oder last year.
bucketmonth, quarter, year, Standard "month"Monat (Standard), Quartal oder Jahr.
bycompany, categoryEine Spalte je Firma oder je ECLASS-Segment.
sidesuppliers, customers, Standard "suppliers"Lieferanten (Standard) oder Kunden.
sincedateAb diesem Datum.
untildateBis zu diesem Datum.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "spend_over_time",
  "arguments": {
    "period": "last 12 months",
    "bucket": "month",
    "by": "company"
  }
}

largest_documents

Listet die größten Belege nach Brutto über einen Zeitraum.

ArgumentTypBedeutung
kindstringEine andere Art als zu zahlende Rechnungen, etwa credit_note.
sidesuppliers, customers, Standard "suppliers"Lieferanten (Standard) oder Kunden.
periodstringKlartext, etwa 2025, Q3 2025 oder last year.
sincedateAb diesem Datum.
untildateBis zu diesem Datum.
ninteger, Standard 10Wie viele gelistet werden.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "largest_documents",
  "arguments": {
    "period": "Q3 2025",
    "n": 10
  }
}

payables_due

Listet offene Eingangsrechnungen, die in einem Zeitraum fällig werden, Skonto-Fristen zuerst.

ArgumentTypBedeutung
windowthis_week, next_7_days, next_14_days, next_30_days, this_monthWann die Rechnungen fällig werden.
sincedateAb diesem Datum.
untildateBis zu diesem Datum.
company_iduuidDie ID einer Firma, aus find_company.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "payables_due",
  "arguments": {
    "window": "next_14_days"
  }
}

vat_preview

Zeigt eine Vorschau der USt-Voranmeldung nach Kennzahl, zur Prüfung durch die Steuerberatung.

ArgumentTypBedeutung
periodstringEin Monat (2026-10) oder ein Quartal (2026-Q4).
kzstringEine Kennzahl, um ihre Rechnungen zu listen.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "vat_preview",
  "arguments": {
    "period": "2026-10"
  }
}

find_anomalies

Markiert doppelte Rechnungen, geänderte Bankverbindungen und Preise über der Bestellung.

ArgumentTypBedeutung
sincedateAb diesem Datum.
untildateBis zu diesem Datum.
kindsListe aus duplicate, bank_changed, price_above_orderNur diese Hinweise.
titlestringDer Titel der Tabelle.
JSON
{
  "name": "find_anomalies",
  "arguments": {
    "since": "2026-08-01",
    "until": "2026-10-31",
    "kinds": ["bank_changed"]
  }
}

supplier_profile

Fasst einen Lieferanten in einem Aufruf zusammen: Ausgaben, Konditionen, Zahlungsdauer, offene Posten und Preise.

ArgumentTypBedeutung
company_iduuid, PflichtDie ID einer Firma, aus find_company.
JSON
{
  "name": "supplier_profile",
  "arguments": {
    "company_id": "01a1b08c-5c2d-7e10-8b3a-1d2e3f4a5b6c"
  }
}

exports:write

export_table

Exportiert die Tabelle eines anderen Werkzeugs als Excel oder CSV, hinter einem Link, der 30 Minuten gilt.

ArgumentTypBedeutung
queryObjekt (tool, args), PflichtDie query einer Tabelle, unverändert, wie ein Werkzeug sie lieferte.
titlestring, Standard "Ocost"Der Titel der Tabelle.
formatxlsx, csv, Standard "xlsx"Excel (xlsx, Standard) oder CSV.
JSON
{
  "name": "export_table",
  "arguments": {
    "query": {"tool": "top_companies", "args": {"period": "2025"}},
    "title": "Top suppliers 2025",
    "format": "xlsx"
  }
}

make_datev_export

Erstellt den DATEV-Export eines Zeitraums als ein ZIP, hinter einem signierten Link.

Nur über eine OAuth-Verbindung, als die Person, die sie erlaubt hat.

ArgumentTypBedeutung
starts_ondate, PflichtDer erste Tag des Zeitraums.
ends_ondate, PflichtDer letzte Tag des Zeitraums, im selben Geschäftsjahr.
JSON
{
  "name": "make_datev_export",
  "arguments": {
    "starts_on": "2026-10-01",
    "ends_on": "2026-10-31"
  }
}