Skip to content

Billomat MCP by usefulapi

by usefulapi.io · remote · no sign-in to list tools · v1.3.3 · published by io.usefulapi

Read Billomat clients, invoices, offers, credit notes, reminders; create clients and draft invoices.

Deletes · 6Final · 1

34 tools: 6 can delete or cancel things, 1 do something that can't be undone and 27 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http billomat https://billomat.usefulapi.io/mcp

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "billomat_invoice_totals" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true}; The input addresses people (input.to): what it sends cannot be taken back.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

34 tools

Deletes or cancels 6Claude Code: deny
  • billomat_add_invoice_itemWRITE: add one line item to an invoice that is still a DRAFT (Billomat refuses it for any other status).No findings

    Why it is in this group

    • The name "billomat_add_invoice_item" says "add": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: add one line item to an invoice that is still a DRAFT (Billomat refuses it for any other status). Does not complete or send the invoice.

    Annotations the server declares

    • title: Add an item to a draft invoice
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
  • billomat_create_articleWRITE: create a new article (product or service) with a price.No findings

    Why it is in this group

    • The name "billomat_create_article" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new article (product or service) with a price. Billomat assigns the article number.

    Annotations the server declares

    • title: Create an article
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
  • billomat_create_clientWRITE: create a new client (customer) in Billomat.No findings

    Why it is in this group

    • The name "billomat_create_client" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create a new client (customer) in Billomat. Billomat assigns the client number. Nothing is sent to the client. Check billomat_list_clients first to avoid duplicates.

    Annotations the server declares

    • title: Create a client
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
  • billomat_create_draft_invoiceWRITE: create an invoice as a DRAFT (Entwurf) for a client, with optional line items.No findings

    Why it is in this group

    • The name "billomat_create_draft_invoice" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create an invoice as a DRAFT (Entwurf) for a client, with optional line items. The invoice is NOT completed, has no number yet and is NOT sent; review and complete it in Billomat. Nothing is charged.

    Annotations the server declares

    • title: Create a draft invoice
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
  • billomat_create_draft_offerWRITE: create an offer (Angebot) as a DRAFT for a client, with optional line items.No findings

    Why it is in this group

    • The name "billomat_create_draft_offer" says "create": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: create an offer (Angebot) as a DRAFT for a client, with optional line items. The offer is NOT completed, has no number yet and is NOT sent; review and complete it in Billomat.

    Annotations the server declares

    • title: Create a draft offer
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
  • billomat_update_clientWRITE: change fields of an existing client (only the fields you pass are changed; everything else stays).No findings

    Why it is in this group

    • The name "billomat_update_client" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    WRITE: change fields of an existing client (only the fields you pass are changed; everything else stays). Read the client first with billomat_get_client. Nothing is sent to the client.

    Annotations the server declares

    • title: Update a client
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
Can't be undone 1Claude Code: ask
  • billomat_invoice_totalsInvoice totals grouped by client, status, day, week, month or year (for example group_by=client,year).1 finding

    Why it is in this group

    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "billomat_invoice_totals" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true}; The input addresses people (input.to): what it sends cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Invoice totals grouped by client, status, day, week, month or year (for example group_by=client,year). Takes the same filters as billomat_list_invoices. Read-only.

    Annotations the server declares

    • title: Invoice totals by group
    • readOnlyHint: true
Only reads 27Claude Code: allow
  • billomat_get_articleGet one article with its prices, unit, tax and supplier.No findings

    Why it is in this group

    • The name "billomat_get_article" says "get": a word for reading.
    Description, as the server wrote it
    Get one article with its prices, unit, tax and supplier.

    Annotations the server declares

    • title: Get an article
    • readOnlyHint: true
  • billomat_get_clientGet one client with address, contact person, bank details, payment terms and revenue.No findings

    Why it is in this group

    • The name "billomat_get_client" says "get": a word for reading.
    Description, as the server wrote it
    Get one client with address, contact person, bank details, payment terms and revenue.

    Annotations the server declares

    • title: Get a client
    • readOnlyHint: true
  • billomat_get_companyShow the own company data of the Billomat account (name, address, bank details, tax numbers, currency).No findings

    Why it is in this group

    • The name "billomat_get_company" says "get": a word for reading.
    Description, as the server wrote it
    Show the own company data of the Billomat account (name, address, bank details, tax numbers, currency).

    Annotations the server declares

    • title: Get the own company data
    • readOnlyHint: true
  • billomat_get_confirmationGet one order confirmation.No findings

    Why it is in this group

    • The name "billomat_get_confirmation" says "get": a word for reading.
    Description, as the server wrote it
    Get one order confirmation.

    Annotations the server declares

    • title: Get an order confirmation
    • readOnlyHint: true
  • billomat_get_credit_noteGet one credit note.No findings

    Why it is in this group

    • The name "billomat_get_credit_note" says "get": a word for reading.
    Description, as the server wrote it
    Get one credit note.

    Annotations the server declares

    • title: Get a credit note
    • readOnlyHint: true
  • billomat_get_current_userShow the Billomat user the API key belongs to (name, email, role and rights).No findings

    Why it is in this group

    • The name "billomat_get_current_user" says "get": a word for reading.
    Description, as the server wrote it
    Show the Billomat user the API key belongs to (name, email, role and rights). Use it to check which rights the key has.

    Annotations the server declares

    • title: Get the current user
    • readOnlyHint: true
  • billomat_get_delivery_noteGet one delivery note.No findings

    Why it is in this group

    • The name "billomat_get_delivery_note" says "get": a word for reading.
    Description, as the server wrote it
    Get one delivery note.

    Annotations the server declares

    • title: Get a delivery note
    • readOnlyHint: true
  • billomat_get_incoming_invoiceGet one incoming invoice with amounts and open amount.No findings

    Why it is in this group

    • The name "billomat_get_incoming_invoice" says "get": a word for reading.
    Description, as the server wrote it
    Get one incoming invoice with amounts and open amount.

    Annotations the server declares

    • title: Get an incoming invoice
    • readOnlyHint: true
  • billomat_get_invoiceGet one invoice (status, totals, dates, client, payment terms).No findings

    Why it is in this group

    • The name "billomat_get_invoice" says "get": a word for reading.
    Description, as the server wrote it
    Get one invoice (status, totals, dates, client, payment terms). Its line items come from billomat_list_invoice_items.

    Annotations the server declares

    • title: Get an invoice
    • readOnlyHint: true
  • billomat_get_offerGet one offer (status, totals, validity, client).No findings

    Why it is in this group

    • The name "billomat_get_offer" says "get": a word for reading.
    Description, as the server wrote it
    Get one offer (status, totals, validity, client).

    Annotations the server declares

    • title: Get an offer
    • readOnlyHint: true
  • billomat_get_reminderGet one payment reminder.No findings

    Why it is in this group

    • The name "billomat_get_reminder" says "get": a word for reading.
    Description, as the server wrote it
    Get one payment reminder.

    Annotations the server declares

    • title: Get a reminder
    • readOnlyHint: true
  • billomat_get_supplierGet one supplier with address and bank details.No findings

    Why it is in this group

    • The name "billomat_get_supplier" says "get": a word for reading.
    Description, as the server wrote it
    Get one supplier with address and bank details.

    Annotations the server declares

    • title: Get a supplier
    • readOnlyHint: true
  • billomat_list_articlesList the articles (products and services) with prices, units and tax.No findings

    Why it is in this group

    • The name "billomat_list_articles" says "list": a word for reading.
    Description, as the server wrote it
    List the articles (products and services) with prices, units and tax. Paged.

    Annotations the server declares

    • title: List articles
    • readOnlyHint: true
  • billomat_list_clientsList the clients (customers) of the account, filtered by name, number, email, contact person, country, note or tags.No findings

    Why it is in this group

    • The name "billomat_list_clients" says "list": a word for reading.
    Description, as the server wrote it
    List the clients (customers) of the account, filtered by name, number, email, contact person, country, note or tags. Paged.

    Annotations the server declares

    • title: List or search clients
    • readOnlyHint: true
  • billomat_list_confirmationsList order confirmations (Auftragsbestaetigungen), filtered by client, status (DRAFT, COMPLETED, CANCELED, CLEARED), number, date range or text.No findings

    Why it is in this group

    • The name "billomat_list_confirmations" says "list": a word for reading.
    Description, as the server wrote it
    List order confirmations (Auftragsbestaetigungen), filtered by client, status (DRAFT, COMPLETED, CANCELED, CLEARED), number, date range or text. Paged.

    Annotations the server declares

    • title: List order confirmations
    • readOnlyHint: true
  • billomat_list_credit_notesList credit notes (Gutschriften), filtered by client, status (DRAFT, OPEN, PAID), date range or text.No findings

    Why it is in this group

    • The name "billomat_list_credit_notes" says "list": a word for reading.
    Description, as the server wrote it
    List credit notes (Gutschriften), filtered by client, status (DRAFT, OPEN, PAID), date range or text. Paged.

    Annotations the server declares

    • title: List credit notes
    • readOnlyHint: true
  • billomat_list_delivery_notesList delivery notes (Lieferscheine), filtered by client, status (DRAFT, CREATED), number, date range or text.No findings

    Why it is in this group

    • The name "billomat_list_delivery_notes" says "list": a word for reading.
    Description, as the server wrote it
    List delivery notes (Lieferscheine), filtered by client, status (DRAFT, CREATED), number, date range or text. Paged.

    Annotations the server declares

    • title: List delivery notes
    • readOnlyHint: true
  • billomat_list_incoming_invoicesList incoming invoices (Eingangsrechnungen, from suppliers), filtered by supplier, status (OPEN, PAID, OVERDUE), number, date range, note or tags.No findings

    Why it is in this group

    • The name "billomat_list_incoming_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List incoming invoices (Eingangsrechnungen, from suppliers), filtered by supplier, status (OPEN, PAID, OVERDUE), number, date range, note or tags. Paged.

    Annotations the server declares

    • title: List incoming invoices
    • readOnlyHint: true
  • billomat_list_invoice_itemsList the line items (positions) of one invoice.No findings

    Why it is in this group

    • The name "billomat_list_invoice_items" says "list": a word for reading.
    Description, as the server wrote it
    List the line items (positions) of one invoice.

    Annotations the server declares

    • title: List the items of an invoice
    • readOnlyHint: true
  • billomat_list_invoice_paymentsList the payments that were recorded on invoices (read-only), optionally for one invoice, a date range or payment types.No findings

    Why it is in this group

    • The name "billomat_list_invoice_payments" says "list": a word for reading.
    Description, as the server wrote it
    List the payments that were recorded on invoices (read-only), optionally for one invoice, a date range or payment types.

    Annotations the server declares

    • title: List invoice payments
    • readOnlyHint: true
  • billomat_list_invoicesList invoices (Rechnungen), filtered by client, status (DRAFT, OPEN, PAID, OVERDUE, CANCELED), number, date range, text or tags.No findings

    Why it is in this group

    • The name "billomat_list_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List invoices (Rechnungen), filtered by client, status (DRAFT, OPEN, PAID, OVERDUE, CANCELED), number, date range, text or tags. Paged; each invoice carries totals and the open amount.

    Annotations the server declares

    • title: List invoices
    • readOnlyHint: true
  • billomat_list_offersList offers (Angebote), filtered by client, status (DRAFT, OPEN, WON, LOST, CANCELED, CLEARED), number, date range or text.No findings

    Why it is in this group

    • The name "billomat_list_offers" says "list": a word for reading.
    Description, as the server wrote it
    List offers (Angebote), filtered by client, status (DRAFT, OPEN, WON, LOST, CANCELED, CLEARED), number, date range or text. Paged.

    Annotations the server declares

    • title: List offers
    • readOnlyHint: true
  • billomat_list_recurring_invoicesList recurring invoices (Abo-Rechnungen): name, cycle (DAILY, WEEKLY, MONTHLY, YEARLY), client and next run.No findings

    Why it is in this group

    • The name "billomat_list_recurring_invoices" says "list": a word for reading.
    Description, as the server wrote it
    List recurring invoices (Abo-Rechnungen): name, cycle (DAILY, WEEKLY, MONTHLY, YEARLY), client and next run. Paged.

    Annotations the server declares

    • title: List recurring invoices
    • readOnlyHint: true
  • billomat_list_remindersList payment reminders (Mahnungen), filtered by client, status (DRAFT, OPEN, OVERDUE, PAID, CANCELED), invoice number, date range or text.No findings

    Why it is in this group

    • The name "billomat_list_reminders" says "list": a word for reading.
    Description, as the server wrote it
    List payment reminders (Mahnungen), filtered by client, status (DRAFT, OPEN, OVERDUE, PAID, CANCELED), invoice number, date range or text. Paged.

    Annotations the server declares

    • title: List reminders
    • readOnlyHint: true
  • billomat_list_suppliersList the suppliers of the account, filtered by name, email, contact person, country, note or tags.No findings

    Why it is in this group

    • The name "billomat_list_suppliers" says "list": a word for reading.
    Description, as the server wrote it
    List the suppliers of the account, filtered by name, email, contact person, country, note or tags. Paged.

    Annotations the server declares

    • title: List suppliers
    • readOnlyHint: true
  • billomat_list_taxesList the tax rates (Steuersaetze) of the account, with the default one.No findings

    Why it is in this group

    • The name "billomat_list_taxes" says "list": a word for reading.
    Description, as the server wrote it
    List the tax rates (Steuersaetze) of the account, with the default one.

    Annotations the server declares

    • title: List tax rates
    • readOnlyHint: true
  • billomat_list_unitsList the units (Einheiten) used for article and item quantities, optionally filtered by name.No findings

    Why it is in this group

    • The name "billomat_list_units" says "list": a word for reading.
    Description, as the server wrote it
    List the units (Einheiten) used for article and item quantities, optionally filtered by name.

    Annotations the server declares

    • title: List units
    • readOnlyHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.3.3. Values in angle brackets are yours to fill in.

claude mcp add --transport http billomat https://billomat.usefulapi.io/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__billomat__billomat_get_current_user",
      "mcp__billomat__billomat_get_company",
      "mcp__billomat__billomat_list_clients",
      "mcp__billomat__billomat_get_client",
      "mcp__billomat__billomat_list_articles",
      "mcp__billomat__billomat_get_article",
      "mcp__billomat__billomat_list_suppliers",
      "mcp__billomat__billomat_get_supplier",
      "mcp__billomat__billomat_list_invoices",
      "mcp__billomat__billomat_get_invoice",
      "mcp__billomat__billomat_list_invoice_items",
      "mcp__billomat__billomat_list_invoice_payments",
      "mcp__billomat__billomat_list_recurring_invoices",
      "mcp__billomat__billomat_list_offers",
      "mcp__billomat__billomat_get_offer",
      "mcp__billomat__billomat_list_confirmations",
      "mcp__billomat__billomat_get_confirmation",
      "mcp__billomat__billomat_list_delivery_notes",
      "mcp__billomat__billomat_get_delivery_note",
      "mcp__billomat__billomat_list_credit_notes",
      "mcp__billomat__billomat_get_credit_note",
      "mcp__billomat__billomat_list_reminders",
      "mcp__billomat__billomat_get_reminder",
      "mcp__billomat__billomat_list_incoming_invoices",
      "mcp__billomat__billomat_get_incoming_invoice",
      "mcp__billomat__billomat_list_taxes",
      "mcp__billomat__billomat_list_units"
    ],
    "ask": [
      "mcp__billomat__billomat_invoice_totals"
    ],
    "deny": [
      "mcp__billomat__billomat_create_client",
      "mcp__billomat__billomat_update_client",
      "mcp__billomat__billomat_create_article",
      "mcp__billomat__billomat_create_draft_invoice",
      "mcp__billomat__billomat_add_invoice_item",
      "mcp__billomat__billomat_create_draft_offer"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as billomat. Review it before you use it.