Ask your ERP stack in plain language
The Maesn MCP server connects Claude and other AI assistants to more than 30 ERP and accounting systems, so your team can query, analyze and update financial data by asking. Securely, with no data stored, hosted in Germany.
Show me all unpaid invoices for Company A.
GET /invoices ?paymentStatus=… + authentication injected
What is an MCP server
The Model Context Protocol is an open standard for letting an AI assistant reach tools and data in a structured way, so a model does not need a bespoke integration for every system it should be able to see. The assistant is handed a set of callable functions, it calls them, it gets structured responses back. Simple, and it holds one assumption: that whatever sits behind those functions can be queried synchronously and answers in a structure.
The Maesn MCP server speaks that standard on one side and the Maesn Unified API on the other. What it bridges to is the part that matters: a single connection reaches every system Maesn supports, with the same authentication, the same normalized data model and the same compliance guarantees you get from the API itself.
That is a different proposition from connecting an assistant to one system. Adding one more MCP server means an assistant can see one more system. Putting an MCP server on a unified layer means it reaches an entire European stack through the same functions, with the same field names, however differently each of those systems works underneath.
Assistants are powerful, and blind to your numbers
The most useful question a finance team can ask an assistant is usually the one it cannot answer: what do our actual numbers say?
A general-purpose assistant has no live connection to DATEV, Exact Online or whatever system holds the source of truth, and the usual workarounds are familiar and bad. People export a CSV and paste it into a chat window, which loses structure, context and freshness in the same second. Engineering teams build a one-off integration to a single system and then maintain it indefinitely. And every approach runs into the wall that keeps most enterprise AI work stuck in a pilot: how do you give an assistant access to financial data without losing control of security and compliance?
Underneath that sits a technical reason it is harder here than elsewhere. DATEV, many SAP landscapes and plenty of smaller systems work through batch exports, file uploads, CSV or XML payloads, or they accept work and process it later. None of that is a query. An assistant pointed at a system like that has nothing to call and no schema to reason about, which is why connecting a model directly to a finance backend tends to end in a script that downloads a file and a person who reads it.
The translation work is therefore the product, and it predates MCP as a standard. Structurally heterogeneous systems were mapped into one synchronously queryable model first. The MCP server is the consequence of that groundwork, not a replacement for it.
One MCP server, 30+ systems
A DATEV MCP server, an Exact Online MCP server and a Visma eAccounting MCP server are not separate products. They are this one, pointed at a different system.
- One agent integration per system
- Exports, mappings and merges by hand
- File-based systems out of reach
- A separate report per entity
- One interface to the whole stack
- Structured data a model can use
- The awkward systems included
- One question across subsidiaries
Because the server runs on the Unified API, one connection reaches more than 30 ERP and accounting platforms across Europe, among them DATEV, Exact Online, Xero, QuickBooks, Sage, Lexware Office, sevdesk, Pennylane, Visma e-conomic, Microsoft Dynamics 365 Business Central, Odoo and Fortnox. The integration directory is the current list, and it is the same list the rest of the platform runs on.
The practical consequence is that there is nothing to install per system. Connect Claude once and you can work with DATEV today and Xero tomorrow without changing anything in your setup. And because the data arrives through the Unified API it arrives normalized, so customers, suppliers, invoices, bills, journal entries, accounts and payments follow one consistent model regardless of source system. The answers an assistant gives are comparable across entities and clients rather than shaped by the quirks of each platform.
A sentence in, the right call out
You do not structure an API call and the assistant does not learn an ERP schema. The server does that part.
The middle step is where the work is. The server validates the input, applies the filters the question implies, injects the credentials and makes the correct call against the Unified API. That last part matters more than it sounds: the assistant never handles a customer's credentials, because the connection the customer already authorized is what the server uses.
What comes back is structured data, which the assistant then explains in words, with the record identifiers, amounts and dates included. Almost every resource of the Unified API is reachable this way, and the current list lives in the repository README rather than in a table here that would go stale.
Questions that used to be an export and an afternoon
Once an assistant is connected, teams work in questions rather than queries. It retrieves the underlying records through the MCP server and then does the reasoning on them: the trend, the total, the flag. Four of these are reads and the last one is a write.
“Show me revenue per customer for the last six months and highlight the three customers with the strongest growth.”
“List all open items for supplier Müller GmbH and total the outstanding payables.”
“Based on our journal entries, which accounts moved the most this quarter, and by how much?”
“Pull the debtor and creditor balances and flag anything overdue by more than 30 days.”
“Create a draft invoice for customer Acme for these three line items.”
The write case is not an afterthought. The server is bilateral, so an assistant can act on your numbers as well as report them, across the resources below. Depending on the target system a write is processed directly or handed to asynchronous processing with confirmation once it is done, so a prompt that creates an invoice is not a fire and forget action. For anything recurring, an approval step between the assistant and the write is the sane default.
It inherits the controls you already trust
Security is the reason most teams hesitate to connect AI to financial data, and the reason this is built the way it is.
No-storage architecture
Your data is not persisted, so there is no second copy to govern.
ISO 27001 certified
The same certification that covers the rest of the platform.
GDPR compliant
Processing under European data protection law, not adapted to it.
Built and hosted in Germany
EU hosting for the MCP server exactly as for the Unified API.
Every request runs through the Unified API under the established, authenticated connection to the source system. Maesn operates a no-storage architecture: your data is not persisted, so there is no second copy of your financials sitting somewhere waiting to be governed. ISO 27001, GDPR and building and hosting in Germany apply to the MCP server exactly as they apply to the rest of the platform.
Worth saying plainly: giving an assistant access through Maesn does not widen your attack surface and does not weaken your compliance posture. What is recorded is that a call happened, with the endpoint, the target system, the account key and the timestamp, which is a record of the transfer rather than of the data.
Two ways to run it, depending on who asks
Remote, hosted by Maesn
- No local installation, connect your assistant and start
- Runs under the same EU hosting and the same guarantees
- Access on request, so a short conversation gets you set up
Local, on your machine
- Clone the repository and install the dependencies
- One entry in your agent's configuration file
- Start the server and point Claude Desktop at it
For teams the fastest path is the hosted server: no local installation, connect your assistant and start. Ask us for access and an API key and we will set you up.
For developers who want to self-host: clone the repository, install the dependencies and start the server with npx nx serve maesn-mcp. Then point your agent at it, which for Claude Desktop is one entry in claude_desktop_configuration.json, shown here as it appears in the documentation.
{"mcpServers": {"maesn-mcp": {"command": "node","args": ["<ABSOLUTE_PATH>/apps/maesn-mcp/dist/main.js"]}}}
The teams who live in this data every day
The clearest value is internal. Controlling and FP&A get ad-hoc revenue, margin and cash-flow questions answered in seconds, across every client or entity, without waiting for a report. Accounts payable get open items, supplier balances and due dates on demand, with the ability to draft and update records. Accounts receivable get overdue receivables and customer balances flagged conversationally instead of dug out of a dashboard. At month-end, journal-entry and account movements can be explained in plain language, which is how anomalies get spotted early rather than after the close.
The same capability is a foundation for product builders. Instead of building and maintaining an integration per system to expose accounting data to their own AI features, they connect once and inherit the full system coverage and the security model. Skip the exports and the one-off integrations, and give the assistant a direct line to the data instead.
Common questions
Build once on the Unified API.
See how the MCP server works for your integration, or dive into the technical reference.











