MCP server¶
https://verify.orvel.dev/mcp — Streamable HTTP, stateless, eight read-only tools with the same names and
arguments as the REST API.
Registry entry: io.github.LeBorgneAntoine/eu-verify. Manifest:
/.well-known/mcp/server.json.
Connect¶
.cursor/mcp.json in the project, or the global file:
Use the URL the marketplace gives you. No header: the marketplace authenticates and bills per successful call.
Tools¶
check_vat, lookup_siren, normalize_siret, check_iban, normalize_address_eu, normalize_phone,
check_email, check_eori. All annotated read-only and idempotent, so a client can call them without asking the
user to confirm. Arguments and semantics: Tools.
Each tool returns the envelope as structuredContent, so an agent can branch on status without parsing prose.
Resources¶
| URI | Contents |
|---|---|
euverify://guide/statuses |
The four statuses and which ones are billable. |
euverify://guide/coverage |
Which register backs which tool, and the known limits. |
What costs a call¶
Discovery is free and open, so a client or a registry can inspect the server before anyone buys a key:
initialize, ping, tools/list, resources/list, resources/read, prompts/*.
tools/call needs a key and counts one call against the monthly quota — unless it fails (isError) or the
register was unreachable (status: "upstream_unavailable"), in which case it is free. The response carries
X-Plan and X-Usage-Used when a call was counted; over quota the server answers HTTP 402 with a JSON-RPC error
pointing at the pricing page.
Instructions the server sends¶
The server ships an instructions block telling the model when to reach for which tool and, most importantly,
that upstream_unavailable must never be reported to the user as "invalid". If your client shows server
instructions, you will see it on connect.