Aller au contenu

Serveur MCP

https://verify.orvel.dev/mcp — Streamable HTTP, sans état, huit outils en lecture seule portant les mêmes noms et arguments que l'API REST.

Entrée de registre : io.github.LeBorgneAntoine/eu-verify. Manifeste : /.well-known/mcp/server.json.

Se connecter

{
  "mcpServers": {
    "eu-verify": {
      "url": "https://verify.orvel.dev/mcp",
      "headers": { "Authorization": "Bearer ev.sub_1abc.deadbeef" }
    }
  }
}

.cursor/mcp.json dans le projet, ou le fichier global :

{
  "mcpServers": {
    "eu-verify": {
      "url": "https://verify.orvel.dev/mcp",
      "headers": { "Authorization": "Bearer ev.sub_1abc.deadbeef" }
    }
  }
}
from mcp import Client

async with Client(
    "https://verify.orvel.dev/mcp",
    headers={"Authorization": "Bearer ev.sub_1abc.deadbeef"},
) as client:
    result = await client.call_tool("check_vat", {"vat": "FR03552081317"})
    print(result.structured_content["status"])

Utilisez l'URL fournie par la place de marché. Aucun en-tête : elle authentifie et facture à l'appel réussi.

Outils

check_vat, lookup_siren, normalize_siret, check_iban, normalize_address_eu, normalize_phone, check_email, check_eori. Tous annotés en lecture seule et idempotents, pour qu'un client puisse les appeler sans demander confirmation à l'utilisateur. Arguments et sémantique : Outils.

Chaque outil renvoie l'enveloppe en structuredContent, pour qu'un agent puisse se brancher sur status sans analyser du texte.

Ressources

URI Contenu
euverify://guide/statuses Les quatre statuts et ceux qui sont facturés.
euverify://guide/coverage Quel registre alimente quel outil, et les limites connues.

Ce qui consomme un appel

La découverte est gratuite et ouverte, pour qu'un client ou un annuaire puisse inspecter le serveur avant tout achat : initialize, ping, tools/list, resources/list, resources/read, prompts/*.

tools/call exige une clé et décompte un appel du quota mensuel — sauf en cas d'échec (isError) ou de registre injoignable (status: "upstream_unavailable"), auquel cas c'est gratuit. La réponse porte X-Plan et X-Usage-Used quand un appel a été décompté ; au-delà du quota, le serveur répond en HTTP 402 avec une erreur JSON-RPC renvoyant vers la page des tarifs.

Instructions envoyées par le serveur

Le serveur fournit un bloc instructions qui indique au modèle quand utiliser quel outil et, surtout, qu'un upstream_unavailable ne doit jamais être présenté à l'utilisateur comme « invalide ». Si votre client affiche les instructions du serveur, vous le verrez à la connexion.