Overview
KLARA MCP is a server built on the open Model Context Protocol (MCP), operated by ePost Service Ltd. It connects MCP-capable AI assistants – such as Claude or ChatGPT – to your KLARA company. The assistant can search and maintain customers and articles, create invoices with line items and recipients, record bookings with receipts, and add variable salary items to open payslips.
- Server address:
https://mcp.klara.ch/mcp - Transport: Streamable HTTP · Login: OAuth 2.0 with your personal KLARA API key
- 64 tools across seven areas, see Available tools
Connect
Step 1 for every client: create an API key in KLARA. In KLARA, under Users, create a new API key. Give it only the roles you actually need – KLARA MCP reaches exactly what the key's role opens. Login works exclusively with an API key; enter your KLARA password only on KLARA itself, never anywhere else.
Connect with Claude
- In Claude, go to Settings → Connectors, choose Add custom connector and enter
https://mcp.klara.ch/mcp– or pick the KLARA entry in the connector directory. - Claude opens the KLARA MCP login page: paste your API key and connect.
Connect with ChatGPT
- Open chatgpt.com/plugins and click the plus “New plugin”. Enter the address
https://mcp.klara.ch/mcp. - On first connection the KLARA MCP login page opens: paste your API key and connect.
Start with the prompt “KLARA whoami” – the assistant then shows which company you're connected to and which areas your role opens.
Examples
Typical requests to your AI assistant look like this (all details are made up):
Capabilities
| Area | What the assistant can do | Access |
|---|---|---|
| Customers & articles | Search, create and update: customers with addresses, contacts, UID and VAT number; articles with prices, VAT and images; categories and filters. | Read Approval |
| Invoices & orders | Create invoices with line items and recipients and fetch them as PDF; delivery via email, ePost, eBill or print; look up order documents. | Read Approval |
| Accounting | Record manual bookings with receipts, look up the chart of accounts and VAT catalogues, read open bank-reconciliation positions and VAT reports. | Read Approval |
| Payroll | Browse the employee directory and add variable salary items (hours, allowances, bonuses) to open payslips. | Read Approval |
The confirmation gate
Everything irreversible runs in two steps: the assistant prepares the action and shows you a summary plus a link to the KLARA MCP approval page. There you approve the action yourself, with the code from your authenticator app or with a passkey (Touch ID, Face ID, Windows Hello). The assistant never receives a code or a secret; it only executes what you have approved, not even on instructions found in a document. The approval applies to exactly this action and is logged on the server. On the approval page you can also discard the action. When you connect for the first time you set up the authenticator app once (QR code); it applies to your API key, even if you later connect KLARA to another AI service. Different browser or device: enter your API key there once. Each action is executed exactly once. This applies to every write access: master data (customers, contacts, addresses, articles, categories, images) as well as deletions, creating and sending invoices, bookings, receipts, salary items and number counters. Unconfirmed preparations expire on their own after 30 minutes.
Available tools
KLARA MCP provides 64 tools – every operation is its own tool. Read only retrieves data, Approval prepares the action and requires your approval in the browser (authenticator code or passkey), Write only affects preparations (discard).
Context
| Tool | Purpose | Access |
|---|---|---|
klara_whoami | Connected company, login type and which areas your role opens | Read |
Reference data
| Tool | Purpose | Access |
|---|---|---|
klara_accounts | Chart of accounts – all of it or one account by code | Read |
klara_account_picker | Account picker for booking lines, including links values | Read |
klara_booking_types | Booking types | Read |
klara_business_case_templates | Business case templates – catalogue, company selection or a single one | Read |
klara_business_case | A single business case by id | Read |
klara_business_case_from_template | Read the business case derived from a template (ready booking template, read-only) | Read |
klara_accounting_config | The company's accounting settings | Read |
klara_financial_years | The company's financial years | Read |
klara_vat_master | VAT master catalogue – list, current only or a single entry | Read |
klara_vat_types | VAT types – list or a single one | Read |
klara_vat_cases | VAT cases (e.g. TAXABLE_SUPPLY) – list or a single one | Read |
klara_vat_profile | The company's VAT profile (reporting mode, net tax rate) | Read |
klara_vat_suggestions | KLARA's VAT suggestions | Read |
klara_company_vats | VAT rates stored in the company | Read |
klara_vat_included_setting | Whether prices are kept including or excluding VAT | Read |
klara_bank_accounts | The company's bank accounts | Read |
klara_exchange_rate | Exchange rate of a currency to CHF | Read |
klara_article_categories | Article categories – list or a single one | Read |
klara_article_filters | Article filters – list or a single one | Read |
klara_city | A city in KLARA's city register | Read |
Customers and articles
| Tool | Purpose | Access |
|---|---|---|
klara_search_customers | Search customers by name, email, phone or customer number | Read |
klara_get_customer | One customer in detail, optionally with contacts and additional addresses | Read |
klara_search_articles | Articles via full-text search or list by product type | Read |
klara_article_details | One article with variants, set items and image | Read |
klara_lookup_articles | Articles by article numbers or as a resolved variant list | Read |
klara_prepare_customer_create | Create a customer – including UID, VAT and commercial register number | Approval |
klara_prepare_customer_update | Update a customer – the server reads the record and replaces only the given fields | Approval |
klara_prepare_customer_delete | Delete a customer (final) | Approval |
klara_prepare_contact_create | Create a customer's contact person | Approval |
klara_prepare_contact_update | Update a contact person | Approval |
klara_prepare_contact_delete | Delete a contact person (final) | Approval |
klara_prepare_address_create | Create a customer's additional address | Approval |
klara_prepare_address_update | Update an additional address | Approval |
klara_prepare_address_delete | Delete an additional address (final) | Approval |
klara_prepare_article_create | Create an article – including VAT type, case and code | Approval |
klara_prepare_article_update | Update an article – the server takes mandatory fields from the record | Approval |
klara_prepare_article_delete | Delete an article (final) | Approval |
klara_prepare_articles_bulk | Create several articles in one call | Approval |
klara_prepare_catalog_create | Create an article category or filter | Approval |
klara_prepare_catalog_update | Update an article category or filter | Approval |
klara_prepare_catalog_delete | Delete an article category or filter (final) | Approval |
klara_prepare_catalog_assign | Assign a category or filter to a list of articles | Approval |
klara_prepare_article_image_upload | Add or replace an article image (PNG/JPEG) | Approval |
klara_prepare_article_image_delete | Delete an article image (final) | Approval |
Invoices and order documents
| Tool | Purpose | Access |
|---|---|---|
klara_get_invoice | One invoice with recipient, line items and booking status | Read |
klara_list_invoices | Search and page invoices: free text, status and payment-state filters | Read |
klara_invoice_pdf | Fetch the invoice as PDF and extract its text | Read |
klara_order_documents | Look up order documents for an order number | Read |
klara_order_numbering | Read the numbering configuration (automatic or manual) | Read |
klara_prepare_invoice | Create an invoice with recipient and line items, or edit a draft | Approval |
klara_prepare_send_invoice | Deliver a booked invoice: smart delivery or a fixed channel (email, ePost, eBill, print) | Approval |
klara_prepare_next_number | Pull the next order or document number (advances the counter irreversibly) | Approval |
Accounting
| Tool | Purpose | Access |
|---|---|---|
klara_bank_open_positions | Open positions of the bank reconciliation | Read |
klara_vat_report | Read the VAT report of a period (without recalculation) | Read |
klara_prepare_booking | Record a manual booking, optionally with a receipt PDF; debit/credit is checked upfront | Approval |
klara_prepare_receipt_attachment | Attach a receipt PDF to an existing booking | Approval |
Payroll
| Tool | Purpose | Access |
|---|---|---|
klara_search_employees | Employee directory with search, filter and sorting | Read |
klara_addable_salary_items | Which salary types may be added to a person's open payslip | Read |
klara_payroll_file_check | Check the payroll interface file – format and size only, never the content | Read |
klara_prepare_salary_item | Record a variable salary item (hours, allowances, bonuses) on an open payslip | Approval |
Approval gate
| Tool | Purpose | Access |
|---|---|---|
klara_pending_actions | Show prepared actions that are not yet confirmed | Read |
klara_confirm | Execute an action you approved on the approval page | Approval |
klara_cancel_pending | Discard a prepared action for good | Write |
Security & data
- Login via OAuth 2.0, exclusively with an API key. The AI assistant never receives your KLARA API key – it stays encrypted on the KLARA MCP server (operated by ePost Service Ltd, hosted in Frankfurt) and is used only for calls to KLARA. There is deliberately no login with KLARA username and password: your password belongs only on KLARA's own login page.
- Your role determines access. KLARA MCP reaches exactly the areas that your API key's role opens in KLARA – nothing more.
- Data minimisation. Social security (AHV) number, date of birth, personnel number, number of children and cash payment are removed from every response and never reach the AI assistant. Payroll export files return format and size only, their content is never passed through the connector. Email addresses are masked in lists. Everything else you retrieve reaches the assistant in plain text: your employees' names and wage types, customer data, invoice lines, receipt texts.
- What the AI assistant sees. Tool results – such as found customers or an invoice summary – flow into your conversation and are processed by the respective provider (e.g. Anthropic or OpenAI) like the rest of your chat content.
- Voluntary add-on service. The AI connector is not part of normal KLARA usage – you activate it deliberately and decide yourself which AI service to connect KLARA to. The chosen provider processes the retrieved content under its own terms, possibly outside Switzerland. The login page points this out when you connect.
- Deletion periods. Login links and one-time codes are deleted when they expire. Receipt content of prepared actions is removed immediately after execution, cancellation or expiry, their summaries after 30 days. Connections unused for 180 days are deleted together with the encrypted API key; the invoice log after one year.
- Privacy. Details on data processing at KLARA are set out in the privacy statement.
- Ending access. Delete the API key in KLARA under Users – access ends immediately and completely. You can additionally remove the connector in your AI assistant.
Troubleshooting
“Access denied” or an area is missing
Your API key's role lacks the permission, or your company lacks the matching KLARA subscription – without it, a function stays closed even for administrators. Ask the assistant for “KLARA whoami”: the answer shows which areas are open. For more access, create a key with the right role in KLARA under Users and reconnect.
A city is rejected when creating a record
KLARA validates cities against its own registry and knows some only with the canton suffix – for example “Studen BE” instead of “Studen”. Adjust the spelling and retry; the error message points this out.
Creating an invoice demands a document number
Your company numbers invoices manually. KLARA MCP then deliberately pulls no number from the counter – tell the assistant the next number in your series, and it is used as the document number. With automatic numbering this happens by itself.
No invoice PDF is created on booking
That's KLARA API behaviour: unlike the UI, it renders no document when booking. Ask the assistant to create the PDF afterwards – on request it attaches it to the booking.
New features don't show up
AI assistants memorise a server's tool list when connecting. After KLARA MCP updates, disconnect once and reconnect.
The first answer takes long
After a longer pause the server restarts (cold start). The first request can therefore take a few seconds; after that it's fast.
“This action is no longer valid”
Prepared actions expire after 30 minutes without confirmation – for safety. Simply ask the assistant to prepare the action again.
Server error with an incident id on booking, PDF or sending
Known issues in the KLARA interface (as of August 2026, reported to KLARA): booking invoices, rendering PDFs and sending can fail through the interface with a server error, while the same action works in the KLARA user interface. Perform the action in KLARA; the incident id from the message helps support.
Support
Questions, problems or security concerns about KLARA MCP: support@klara.ch
Helpful for a quick answer: the error message from your AI assistant – for KLARA errors it contains an incident id that makes the case unambiguous. Never include API keys or passwords.
More about KLARA: klara.ch · For developers: developer.klara.ch