@companybelgium/mcp-server
v0.1.0
Published
MCP server exposing the Company Belgium API (Belgian BCE/KBO lookup + Peppol check) to Claude and other MCP-compatible LLM clients.
Downloads
171
Maintainers
Readme
@companybelgium/mcp-server
MCP (Model Context Protocol) server that exposes the Company Belgium API — Belgian BCE/KBO company lookups and Peppol e-invoicing checks — to Claude Desktop, Claude Code, and any other MCP-compatible LLM client.
Ask Claude "trouve-moi toutes les sociétés actives à Bruxelles dans le code NACE 62010" and it will call your account directly. Requests count against your normal Company Belgium plan quota — same pk/sk pair as the HTTP API, same rate-limit and billing rules.
What you can do
| Tool | Purpose |
| --- | --- |
| search_companies | Search by name, postal code, city, NACE activity code |
| get_company | Full BCE record by enterprise number |
| search_company_address | Reverse-lookup companies at a given address |
| search_establishments | Search operational units |
| get_establishment | Full record for one establishment |
| check_peppol | Verify whether a VAT number receives Peppol e-invoices |
All tools are read-only. Quota and rate-limit headers from the API are surfaced as friendly error messages when you hit your plan limit.
Install
The server runs on Node ≥ 20.
npm install -g @companybelgium/mcp-server
# or run on demand:
npx -y @companybelgium/mcp-serverGet an API key pair at https://companybelgium.be/dashboard/api-keys.
Configure Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"companybelgium": {
"command": "npx",
"args": ["-y", "@companybelgium/mcp-server"],
"env": {
"COMPANYBELGIUM_API_KEY": "pk_live_...",
"COMPANYBELGIUM_API_SECRET": "sk_live_..."
}
}
}
}Restart Claude Desktop. The 6 tools will appear in the tools menu.
Configure Claude Code
Add to your project's .mcp.json or run:
claude mcp add companybelgium \
-e COMPANYBELGIUM_API_KEY=pk_live_... \
-e COMPANYBELGIUM_API_SECRET=sk_live_... \
-- npx -y @companybelgium/mcp-serverEnvironment variables
| Variable | Required | Default | Description |
| --- | --- | --- | --- |
| COMPANYBELGIUM_API_KEY | yes (external) | — | Public key pk_live_... |
| COMPANYBELGIUM_API_SECRET | yes (external) | — | Secret key sk_live_... |
| COMPANYBELGIUM_API_URL | no | https://companybelgium.be | Override for self-hosted / staging |
Quotas & billing
Each tool call hits the public API with your pk/sk headers. Limits apply per your subscription tier:
- Free — limited monthly quota, ideal for testing
- Starter / Pro / Enterprise — see https://companybelgium.be/pricing
When you hit the quota or rate limit, the tool returns a clear error like "Plan quota exhausted on the Starter plan. Upgrade at https://companybelgium.be/pricing." — Claude will show this in the conversation.
Development
pnpm install
pnpm --filter @companybelgium/mcp-server build
pnpm --filter @companybelgium/mcp-server devTo test the server locally, point Claude Desktop at the local build:
{
"mcpServers": {
"companybelgium-dev": {
"command": "node",
"args": ["/absolute/path/to/packages/mcp-server/dist/index.js"],
"env": {
"COMPANYBELGIUM_API_URL": "http://localhost:3002",
"COMPANYBELGIUM_API_KEY": "pk_live_...",
"COMPANYBELGIUM_API_SECRET": "sk_live_..."
}
}
}
}License
MIT © Espero-Soft Informatiques SRL
