The Model Context Protocol (MCP) is an open standard that lets AI assistants interact with external services. Think of it as a USB-C port for AI — one protocol to connect any AI tool to e-invoice.be.
The e-invoice.be MCP server gives AI agents access to your invoices, credit notes, Peppol network data, and usage statistics — all through natural language.
All MCP tools are read-only . No data can be created, modified, or deleted through MCP. To create or send documents, use the REST API .
Prerequisites
Before setting up MCP, you need:
An e-invoice.be account — sign up at app.e-invoice.be
An API key — go to Settings → API Keys in your dashboard (learn more )
Server URL: https://api.e-invoice.be/mcp
The endpoint is the same across all clients. Transport is streamable HTTP, authenticated with your API key as a Bearer token.
Setup
Claude Code
Claude Desktop
ChatGPT
Cursor
VS Code
Windsurf
Claude Code Claude Code supports remote MCP servers natively via streamable HTTP.CLI (recommended): This registers the server at user scope. To add it at project scope, append --scope project. Manual JSON — add to ~/.claude.json (user scope) or .claude/settings.local.json (project scope):After adding, restart Claude Code or run /mcp to verify the server appears in the list.
Claude Code MCP docs Official documentation for MCP in Claude Code
Claude Desktop Claude Desktop does not yet support remote streamable HTTP MCP servers directly. You need mcp-remote as a bridge (requires Node.js ≥ v18). Step 1 — Open the config file from Claude → Settings → Developer → Edit Config :OS Config path macOS ~/Library/Application Support/Claude/claude_desktop_config.jsonWindows %APPDATA%\Claude\claude_desktop_config.jsonLinux ~/.config/Claude/claude_desktop_config.json
Step 2 — Add (or merge into) the mcpServers key:Step 3 — Restart Claude Desktop. The e-invoice tools appear under the hammer (🔨) icon in the composer.
Claude Desktop MCP docs Official documentation for connecting MCP servers to Claude Desktop
ChatGPT ChatGPT supports remote MCP servers as custom connectors (available on Plus, Pro, Business, and Enterprise plans). Custom connectors via developer mode are currently not available for all account types in the EEA, GB, and CH regions. Since most e-invoice.be users are in the EU, verify that your ChatGPT plan supports this feature before proceeding.
Setup flow:
Open chatgpt.com → Settings → Connectors → Advanced → Developer mode (toggle on)
Click Create → Add custom connector
Fill in the connector details:
Name: e-invoice
Description: Send, validate, and look up Peppol invoices
MCP server URL: https://api.e-invoice.be/mcp
Authentication: Custom header
Header name: Authorization
Header value: Bearer YOUR_API_KEY
Save and accept the trust prompt
Enable the connector inside any chat via the + → Connectors menu
ChatGPT connectors overview Learn about connectors in ChatGPT
Developer mode docs Enable custom MCP connectors
Cursor Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project): After saving, restart Cursor or open a new chat session. The tools will appear in the MCP tools list.
Cursor MCP docs Official documentation for MCP in Cursor
VS Code (GitHub Copilot) Add to .vscode/mcp.json in your project root: Alternatively, add to your user or workspace settings.json under the mcp.servers key.
VS Code MCP docs Official documentation for MCP in VS Code
Windsurf Add to ~/.codeium/windsurf/mcp_config.json: Restart Windsurf after saving the configuration.
Don’t have an API key yet? See the Authentication guide to create one.
Available Tools
Documents
Tool Description get_documentRetrieve a single invoice or credit note by ID, including line items, tax details, payment info, and attachments get_document_attachmentsList all attachments for a document get_document_attachmentGet a specific attachment with a signed download URL (valid for 1 hour) get_document_timelineGet the chronological event history for a document (creation, validation, transmission, delivery)
Inbox
Tool Description get_inboxList all received documents with filtering by type, sender, date range, and full-text search get_inbox_invoicesList only received invoices get_inbox_credit_notesList only received credit notes
Outbox
Tool Description get_outboxList all sent documents with filtering by receiver, date range, and full-text search
Drafts
Tool Description get_draftsList draft documents with filtering by state (DRAFT, TRANSIT, FAILED), type, and date range
Peppol Lookup
These tools are public and do not require authentication.
Tool Description get_lookup_peppol_idVerify if a participant is registered on the Peppol network and retrieve their supported document types get_lookup_participantsSearch for Peppol participants by name, with optional country filter
Statistics
Tool Description get_statsRetrieve sending and receiving statistics, grouped by day, week, or month
Example Prompts
Once connected, you can interact with your e-invoice.be account using natural language:
“Show me all invoices received this month”
“Get the details and timeline of document doc_abc123”
“Is the company with VAT number BE0848934496 registered on Peppol?”
“Search for Peppol participants named ‘OpenPeppol’ in Belgium”
“Show my sending and receiving stats for the last 3 months, aggregated by month”
“List all failed documents in my drafts”
“What attachments are on invoice doc_xyz789?”
Troubleshooting
Tools not appearing after setup
Restart the application — most MCP clients only load server configurations on startup.
Verify your API key — run a quick test with curl to confirm it works:
Check the server URL — make sure you’re using https://api.e-invoice.be/mcp (no trailing slash).
Claude Desktop: tools not showing
Check the log file for errors:
macOS: tail -n 50 ~/Library/Logs/Claude/mcp.log
Windows: open %APPDATA%\Claude\logs\mcp.log
Verify Node.js is installed and on your PATH: node --version (v18+ required).
Test mcp-remote manually to surface auth errors:
Ensure your JSON is valid — a trailing comma or missing quote will silently prevent loading.
ChatGPT: connector not available
Custom connectors require Developer mode to be enabled under Settings → Connectors → Advanced.
Developer mode is not available on all plans or in all regions (EEA/GB/CH restrictions may apply).
After adding the connector, you must explicitly enable it in each new chat via the + → Connectors menu.
Authentication errors
API keys are prefixed with your tenant — make sure you copied the full key.
Keys created for the Admin API (reseller keys) will not work with MCP.
If you recently rotated your key, update the configuration file and restart the client.
Security
Your API key gives MCP access to all read-only data within your tenant. Treat it with the same care as any API credential.
Read-only access — MCP tools cannot create, modify, or delete any data
Tenant-scoped — your API key determines which tenant’s data is accessible
Lookup tools are public — get_lookup_peppol_id and get_lookup_participants work without authentication
Best practice — consider creating a dedicated API key for MCP access, separate from your application’s key
Next Steps
Authentication Get your API key and learn about authentication
API Reference Full REST API for creating and sending documents
Webhooks Receive real-time notifications for document events