Skip to content

Connectors · Accounting & finance

sevdesk MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to sevdesk and the rest of your systems. It gives your agent 153 sevdesk actions (76 reads, 63 writes and 14 that wait for a confirmation) and holds the sevdesk credential itself, so the agent never does. It paces sevdesk's limits and records every call.

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

claude mcp add --transport http actionlake https://connect.actionlake.com/mcp
the first call
do {  action: "sevdesk.invoices.list",  intent: "check which sevdesk account is connected"}# Retrieve invoices · read · 1 upstream call
  • 153actionsin one signed file
  • 76readlook, never change
  • 63writecreate and update
  • 14wait for a yesdestructive, confirmed first

Set up

Connect sevdesk in three steps.

  1. 01

    Add actionlake to Claude.

    Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.

    https://connect.actionlake.com/mcp
  2. 02

    Connect sevdesk.

    API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.

    • api_tokensevdesk API token: sevdesk > Settings > Users > (your user) > API token
    account { op: "connections.requirements", service: "sevdesk" }
    # free: exactly what to paste, and what is found for you
  3. 03

    Make the first call. Check before a write.

    Ask in plain words; Claude picks the action. Before anything changes, check validates the call and prices it, for free.

    do    { action: "sevdesk.invoices.list" }# retrieve invoices · read · 1 upstream callcheck { action: "sevdesk.invoices.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent

sevdesk at a glance

Sign-in
API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
You provide
api_token
Limits we pace to
10 calls a second, per connection
API covered
Sevdesk API v1 (OpenAPI 3.0)my.sevdesk.de/api/v1
Built from
sevdesk's documentation, read 23 October 2026api.sevdesk.de
Service file
Version 1.0.0, signed (Ed25519)
Cached reads
66 of 76 reads, for up to 5 minutes; a write clears what it affects
Shared entities
8, so ask can line sevdesk up with your other systems
Data
Processed and stored in Sydney, Australia. No US region yet

Capabilities

What an AI agent can do in sevdesk.

153 actions in 30 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

  • 76readlook, never change
  • 63writecreate and update
  • 14destructivewait for a confirmation
  1. Invoices

    18

    6 read · 11 write · 1 destructive

    Retrieve invoices · Create a new invoice · Find invoice by ID · Create invoice from order

  2. Credit notes

    16

    3 read · 12 write · 1 destructive

    Retrieve CreditNote · Create a new creditNote · Find creditNote by ID · Update an existing creditNote

  3. Orders

    14

    6 read · 7 write · 1 destructive

    Retrieve orders · Create a new order · Find order by ID · Update an existing order

  4. Exports

    10

    8 read · 2 write · 0 destructive

    Start DATEV CSV ZIP export · Start DATEV XML ZIP export · Export contact · Export creditNote

  5. Contacts

    9

    6 read · 2 write · 1 destructive

    Retrieve contacts · Create a new contact · Find contact by ID · Update an existing contact

  6. Vouchers

    8

    2 read · 6 write · 0 destructive

    Retrieve vouchers · Create a new voucher · Find voucher by ID · Update an existing voucher

  7. Check accounts

    7

    3 read · 3 write · 1 destructive

    Retrieve check accounts · Find check account by ID · Update an existing check account · Deletes a check account

  8. Check account transactions

    6

    2 read · 3 write · 1 destructive

    Retrieve transactions · Create a new transaction · Find check account transaction by ID · Update an existing check account transaction

22 more areas · 65 actions
  • Contact custom field settings 6
  • Accounting contacts 5
  • Communication ways 5
  • Contact addresses 5
  • Contact custom fields 5
  • Parts 5
  • Receipt guidance 5
  • Tags 5
  • Order positions 4
  • Reports 4
  • Private transaction rules 3
  • Doc server 2
  • Export progress 2
  • Communication way keys 1
  • Credit note positions 1
  • Export jobs 1
  • Invoice positions 1
  • Sev clients 1
  • Tag relations 1
  • Text placeholders 1
  • Tools 1
  • Voucher positions 1

Top actions

The sevdesk API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 40 of sevdesk's 40 action names are shared with at least one other connector, so an agent learns them once.

ActionWhat it doesEffectSame name in
sevdesk.invoices.listRetrieve invoicesRetrieve invoices.readfinance.invoice.list101 connectors
sevdesk.orders.listRetrieve ordersRetrieve orders.readfinance.quote.list52 connectors
sevdesk.contacts.listRetrieve contactsRetrieve contacts.readcrm.company.list162 connectors
sevdesk.vouchers.listRetrieve vouchersRetrieve vouchers.readfinance.expense.list40 connectors
sevdesk.check_accounts.listRetrieve check accountsRetrieve check accounts.readfinance.bank_account.list35 connectors
sevdesk.credit_notes.listRetrieve CreditNoteRetrieve CreditNote.readfinance.credit_note.list33 connectors
sevdesk.tags.listRetrieve tagsRetrieve tags.readcrm.tag.list65 connectors
sevdesk.invoices.createCreate a new invoiceCreate a new invoice.writefinance.invoice.create74 connectors
sevdesk.orders.createCreate a new orderCreate a new order.writefinance.quote.create52 connectors
sevdesk.vouchers.createCreate a new voucherCreate a new voucher.writefinance.expense.create36 connectors
sevdesk.contacts.createCreate a new contactCreate a new contact.writecrm.company.create142 connectors
sevdesk.orders.deleteDeletes an orderDeletes an order.destructivefinance.quote.delete36 connectors

Try it

Prompts to paste into Claude.

Each one names the sevdesk actions it will call, so you know what it reads and what it changes before you send it.

  1. Readread

    Which sevdesk invoices are more than 30 days overdue? Group them by customer with the total owed.

    callssevdesk.invoices.list

  2. Writewrite

    Create a new invoice in sevdesk. Show me exactly what you will send before you save it.

    callssevdesk.invoices.create

  3. Across systemsread

    Which sevdesk companies have invoices in ConnectWise PSA, and how many each?

    callssevdesk.contacts.listconnectwise_manage.invoices.list

Across your systems

sevdesk, joined to the rest of your business.

One ask fetches from sevdesk and another system, joins the rows on the same customer on our side, and hands your agent the answer, not every row.

  • Which sevdesk companies have invoices in ConnectWise PSA, and how many each?

    sevdesk.contacts.list + connectwise_manage.invoices.list, on crm.company · ConnectWise PSA

  • Which sevdesk companies have tickets in HubSpot CRM, and how many each?

    sevdesk.contacts.list + hubspot_crm.tickets.list, on crm.company · HubSpot CRM

Also mapped by other connectorscrm.company 227commerce.product 109finance.invoice 91crm.tag 47finance.quote 45finance.credit_note 28finance.expense 26finance.bank_account 25
ask
ask {  intent: "which sevdesk companies have invoices in ConnectWise PSA, and how many each",  steps: [    { action: "sevdesk.contacts.list", as: "co", input: {}, limit: 100, max_pages: 5 },    { action: "connectwise_manage.invoices.list", as: "inv", input: {}, limit: 100, max_pages: 5 },    { join: {        left: "co",        right: "inv",        on: "crm.company",        group_by: "co.name",        select: ["co.name", "count(inv.id) as invoices"]    } }  ]}
Example. Run it through check first: it validates the steps and prices them, and it is free.

Governance for sevdesk

Destructive actions wait for a yes.

14 sevdesk actions are destructive. These are all of them:

  • Deletes an ordersevdesk.orders.delete
  • Deletes a contactsevdesk.contacts.delete
  • Deletes an creditNotesevdesk.credit_notes.delete
  • Deletes a check accountsevdesk.check_accounts.delete
  • Deletes a tagsevdesk.tags.delete
  • Deletes a check account transactionsevdesk.check_account_transactions.delete
  • Cancel an invoice / Create cancellation invoicesevdesk.invoices.cancel
  • Deletes an order Positionsevdesk.order_positions.delete
  • Deletes a contact addresssevdesk.contact_addresses.delete
  • Deletes a communication waysevdesk.communication_ways.delete
  • Deletes an accounting contactsevdesk.accounting_contacts.delete
  • Delete a contact fieldsevdesk.contact_custom_fields.delete
  • Delete the rule by idsevdesk.private_transaction_rules.delete
  • Deletes a contact field settingsevdesk.contact_custom_field_settings.delete

A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

dosevdesk.orders.deleteconfirm_policy: human

Deletes an order?

intent: the user asked me to deletes an order

run suspended · waiting for a named person · key sevdesk-agent cannot confirm itself
In the console, or from an emailed signed link.
a key for this connector
account {  op: "keys.create", name: "sevdesk-agent",  allowed_actions: ["sevdesk.*"], cap_calls: 2000,  confirm_policy: "human_for_writes",  approval_rules: [    { match: "sevdesk.orders.delete", approver: "[email protected]" },    { match: "sevdesk.contacts.delete", approver: "[email protected]" },    { match: "sevdesk.credit_notes.delete", approver: "[email protected]" }  ]}
Illustrative. Scoped to sevdesk only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

What sevdesk costs on actionlake.

Every sevdesk action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call sevdesk refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

  • 1upstream call per actionall 153 sevdesk actions
  • 153actions pageeach page of a long list is one call
  • 66reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every sevdesk action.

153 actions by area: the id your agent calls, what it does, and its effect.

Invoices18
  • sevdesk.invoices.book_amountBook an invoicewrite
  • sevdesk.invoices.cancelCancel an invoice / Create cancellation invoicedestructive
  • sevdesk.invoices.change_parameterUpdate an invoice templatewrite
  • sevdesk.invoices.createCreate a new invoicewrite
  • sevdesk.invoices.create_from_orderCreate invoice from orderwrite
  • sevdesk.invoices.create_reminderCreate invoice reminderwrite
  • sevdesk.invoices.enshrineEnshrinewrite
  • sevdesk.invoices.getFind invoice by IDread
  • sevdesk.invoices.get_is_partially_paidCheck if an invoice is already partially paidread
  • sevdesk.invoices.get_pdfRetrieve pdf document of an invoiceread
  • sevdesk.invoices.get_xmlRetrieve XML of an e-invoiceread
  • sevdesk.invoices.listRetrieve invoicesread
  • sevdesk.invoices.list_positionsFind invoice positionsread
  • sevdesk.invoices.mark_sentMark invoice as sentwrite
  • sevdesk.invoices.renderRender the pdf document of an invoicewrite
  • sevdesk.invoices.reset_to_draftReset status to draftwrite
  • sevdesk.invoices.reset_to_openReset status to openwrite
  • sevdesk.invoices.send_via_emailSend invoice via emailwrite
Credit notes16
  • sevdesk.credit_notes.book_amountBook a credit notewrite
  • sevdesk.credit_notes.change_parameterUpdate an of credit note templatewrite
  • sevdesk.credit_notes.createCreate a new creditNotewrite
  • sevdesk.credit_notes.create_from_invoiceCreates a new creditNote from an invoicewrite
  • sevdesk.credit_notes.create_from_voucherCreates a new creditNote from a voucherwrite
  • sevdesk.credit_notes.deleteDeletes an creditNotedestructive
  • sevdesk.credit_notes.enshrineEnshrinewrite
  • sevdesk.credit_notes.getFind creditNote by IDread
  • sevdesk.credit_notes.get_pdfRetrieve pdf document of a credit noteread
  • sevdesk.credit_notes.listRetrieve CreditNoteread
  • sevdesk.credit_notes.mark_sentMark credit note as sentwrite
  • sevdesk.credit_notes.reset_to_draftReset status to draftwrite
  • sevdesk.credit_notes.reset_to_openReset status to openwrite
  • sevdesk.credit_notes.send_by_printingSend credit note by printingwrite
  • sevdesk.credit_notes.send_via_emailSend credit note via emailwrite
  • sevdesk.credit_notes.updateUpdate an existing creditNotewrite
Orders14
  • sevdesk.orders.change_parameterUpdate an order templatewrite
  • sevdesk.orders.createCreate a new orderwrite
  • sevdesk.orders.create_contract_noteCreate contract note from orderwrite
  • sevdesk.orders.create_packing_listCreate packing list from orderwrite
  • sevdesk.orders.deleteDeletes an orderdestructive
  • sevdesk.orders.getFind order by IDread
  • sevdesk.orders.get_pdfRetrieve pdf document of an orderread
  • sevdesk.orders.listRetrieve ordersread
  • sevdesk.orders.list_discountsFind order discountsread
  • sevdesk.orders.list_positionsFind order positionsread
  • sevdesk.orders.list_related_objectsFind related objectsread
  • sevdesk.orders.mark_sentMark order as sentwrite
  • sevdesk.orders.send_via_emailSend order via emailwrite
  • sevdesk.orders.updateUpdate an existing orderwrite
Exports10
  • sevdesk.exports.contact_list_csvExport contactread
  • sevdesk.exports.create_datev_csv_zip_jobStart DATEV CSV ZIP exportwrite
  • sevdesk.exports.create_datev_xml_zip_jobStart DATEV XML ZIP exportwrite
  • sevdesk.exports.credit_note_csvExport creditNoteread
  • sevdesk.exports.datev_csv_legacyExport datevread
  • sevdesk.exports.invoice_csvExport invoiceread
  • sevdesk.exports.invoice_zipExport Invoice as zipread
  • sevdesk.exports.transactions_csvExport transactionread
  • sevdesk.exports.voucher_list_csvExport voucher as zipread
  • sevdesk.exports.voucher_zipExport voucher zipread
Contacts9
  • sevdesk.contacts.check_customer_number_availabilityCheck if a customer number is availableread
  • sevdesk.contacts.createCreate a new contactwrite
  • sevdesk.contacts.deleteDeletes a contactdestructive
  • sevdesk.contacts.find_by_custom_field_valueFind contacts by custom field valueread
  • sevdesk.contacts.getFind contact by IDread
  • sevdesk.contacts.get_next_customer_numberGet next free customer numberread
  • sevdesk.contacts.get_tabs_item_countGet number of all itemsread
  • sevdesk.contacts.listRetrieve contactsread
  • sevdesk.contacts.updateUpdate an existing contactwrite
Vouchers8
  • sevdesk.vouchers.book_amountBook a voucherwrite
  • sevdesk.vouchers.createCreate a new voucherwrite
  • sevdesk.vouchers.enshrineEnshrinewrite
  • sevdesk.vouchers.getFind voucher by IDread
  • sevdesk.vouchers.listRetrieve vouchersread
  • sevdesk.vouchers.reset_to_draftReset status to draftwrite
  • sevdesk.vouchers.reset_to_openReset status to openwrite
  • sevdesk.vouchers.updateUpdate an existing voucherwrite
Check accounts7
  • sevdesk.check_accounts.create_clearing_accountCreate a new clearing accountwrite
  • sevdesk.check_accounts.create_file_import_accountCreate a new file import accountwrite
  • sevdesk.check_accounts.deleteDeletes a check accountdestructive
  • sevdesk.check_accounts.getFind check account by IDread
  • sevdesk.check_accounts.get_balance_at_dateGet the balance at a given dateread
  • sevdesk.check_accounts.listRetrieve check accountsread
  • sevdesk.check_accounts.updateUpdate an existing check accountwrite
Check account transactions6
  • sevdesk.check_account_transactions.createCreate a new transactionwrite
  • sevdesk.check_account_transactions.deleteDeletes a check account transactiondestructive
  • sevdesk.check_account_transactions.enshrineEnshrinewrite
  • sevdesk.check_account_transactions.getFind check account transaction by IDread
  • sevdesk.check_account_transactions.listRetrieve transactionsread
  • sevdesk.check_account_transactions.updateUpdate an existing check account transactionwrite
Contact custom field settings6
  • sevdesk.contact_custom_field_settings.createCreate contact field settingwrite
  • sevdesk.contact_custom_field_settings.deleteDeletes a contact field settingdestructive
  • sevdesk.contact_custom_field_settings.getFind contact field setting by IDread
  • sevdesk.contact_custom_field_settings.get_reference_countReceive count referenceread
  • sevdesk.contact_custom_field_settings.listRetrieve contact field settingsread
  • sevdesk.contact_custom_field_settings.updateUpdate contact field settingwrite
Accounting contacts5
  • sevdesk.accounting_contacts.createCreate a new accounting contactwrite
  • sevdesk.accounting_contacts.deleteDeletes an accounting contactdestructive
  • sevdesk.accounting_contacts.getFind accounting contact by IDread
  • sevdesk.accounting_contacts.listRetrieve accounting contactread
  • sevdesk.accounting_contacts.updateUpdate an existing accounting contactwrite
Communication ways5
  • sevdesk.communication_ways.createCreate a new contact communication waywrite
  • sevdesk.communication_ways.deleteDeletes a communication waydestructive
  • sevdesk.communication_ways.getFind communication way by IDread
  • sevdesk.communication_ways.listRetrieve communication waysread
  • sevdesk.communication_ways.updateUpdate an existing communication waywrite
Contact addresses5
  • sevdesk.contact_addresses.createCreate a new contact addresswrite
  • sevdesk.contact_addresses.deleteDeletes a contact addressdestructive
  • sevdesk.contact_addresses.getFind contact address by IDread
  • sevdesk.contact_addresses.listRetrieve contact addressesread
  • sevdesk.contact_addresses.updateUpdate an existing contact addresswrite
Contact custom fields5
  • sevdesk.contact_custom_fields.createCreate contact fieldwrite
  • sevdesk.contact_custom_fields.deleteDelete a contact fielddestructive
  • sevdesk.contact_custom_fields.getRetrieve contact fieldsread
  • sevdesk.contact_custom_fields.listRetrieve contact fieldsread
  • sevdesk.contact_custom_fields.updateUpdate a contact fieldwrite
Parts5
  • sevdesk.parts.createCreate a new partwrite
  • sevdesk.parts.getFind part by IDread
  • sevdesk.parts.get_stockGet stock of a partread
  • sevdesk.parts.listRetrieve partsread
  • sevdesk.parts.updateUpdate an existing partwrite
Receipt guidance5
  • sevdesk.receipt_guidance.get_for_account_numberGet guidance by account numberread
  • sevdesk.receipt_guidance.list_all_accountsGet all account guidesread
  • sevdesk.receipt_guidance.list_for_expenseGet guidance for expense accountsread
  • sevdesk.receipt_guidance.list_for_revenueGet guidance for revenue accountsread
  • sevdesk.receipt_guidance.list_for_tax_ruleGet guidance by Tax Ruleread
Tags5
  • sevdesk.tags.createCreate a new tagwrite
  • sevdesk.tags.deleteDeletes a tagdestructive
  • sevdesk.tags.getFind tag by IDread
  • sevdesk.tags.listRetrieve tagsread
  • sevdesk.tags.updateUpdate tagwrite
Order positions4
  • sevdesk.order_positions.deleteDeletes an order Positiondestructive
  • sevdesk.order_positions.getFind order position by IDread
  • sevdesk.order_positions.listRetrieve order positionsread
  • sevdesk.order_positions.updateUpdate an existing order positionwrite
Reports4
  • sevdesk.reports.contact_listExport contact listread
  • sevdesk.reports.invoice_listExport invoice listread
  • sevdesk.reports.order_listExport order listread
  • sevdesk.reports.voucher_listExport voucher listread
Private transaction rules3
  • sevdesk.private_transaction_rules.createCreate a new rulewrite
  • sevdesk.private_transaction_rules.deleteDelete the rule by iddestructive
  • sevdesk.private_transaction_rules.listList existing rulesread
Doc server2
  • sevdesk.doc_server.list_letterpapersRetrieve letterpapersread
  • sevdesk.doc_server.list_templatesRetrieve templatesread
Export progress2
  • sevdesk.export_progress.generate_download_hashGenerate download hashread
  • sevdesk.export_progress.getGet progressread
Communication way keys1
  • sevdesk.communication_way_keys.listRetrieve communication way keysread
Credit note positions1
  • sevdesk.credit_note_positions.listRetrieve creditNote positionsread
Export jobs1
  • sevdesk.export_jobs.get_download_infoGet job download inforead
Invoice positions1
  • sevdesk.invoice_positions.listRetrieve InvoicePosread
Sev clients1
  • sevdesk.sev_clients.update_export_configUpdate export configwrite
Tag relations1
  • sevdesk.tag_relations.listRetrieve tag relationsread
Text placeholders1
  • sevdesk.text_placeholders.listRetrieve Placeholdersread
Tools1
  • sevdesk.tools.get_bookkeeping_system_versionRetrieve bookkeeping system versionread
Voucher positions1
  • sevdesk.voucher_positions.listRetrieve voucher positionsread

Questions

The sevdesk MCP server, answered.

Is there a sevdesk MCP server for Claude?

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 153 sevdesk actions across invoices, credit notes, orders and exports, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by sevdesk.

What do I need to connect sevdesk?

Sevdesk API token: sevdesk > Settings > Users > (your user) > API token. The free call account { op: "connections.requirements", service: "sevdesk" } lists exactly what to paste.

Can an AI agent delete or change things in sevdesk?

Only if its key allows it, and only with an explicit confirmation. 14 sevdesk actions are destructive, including deletes an order, deletes a contact and deletes an creditNote. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

Will an AI agent use up my sevdesk API limit?

actionlake paces every call to the limits in the sevdesk service file: 10 calls a second per connection. Repeated reads are answered from cache (66 sevdesk actions can be), which never reaches sevdesk.

What does a sevdesk action cost?

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (153 sevdesk actions page). Cache hits, searches, dry runs and calls sevdesk refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

Which sevdesk API does it cover?

The sevdesk API v1 (OpenAPI 3.0) at my.sevdesk.de/api/v1. It is built from sevdesk's documentation as read on 23 October 2026. 153 actions in 30 areas, each one in the signed service file (version 1.0.0).

Can I combine sevdesk with my other systems?

Yes. ask joins sevdesk to ConnectWise PSA or HubSpot CRM on the same customer and returns the answer rather than every row. sevdesk maps crm.company, which 227 other connectors also map.

Does actionlake keep my sevdesk data, and where?

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your sevdesk credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

Which AI clients can use it?

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

Give your agent sevdesk today.

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.