Evanesca pour vos agents IA, via MCP.
Une URL relie les clients Model Context Protocol à l'API d'Evanesca : Claude Code, Cursor ou Cline avec une clé API, ChatGPT et Claude comme connecteur, connecté en OAuth 2.1. Votre agent peut lire le catalogue, lancer une chat completion ou créer des embeddings sur des modèles exécutés en Europe, chercher et lire sur le web, et consulter votre crédit. La facturation est celle de l'API REST : au token pour les modèles, à l'appel pour la recherche web.
BientôtOuverture prochaine : ce qui suit décrit le service tel qu'il fonctionnera.
L'endpoint
https://evanesca.app/api/mcpIl parle JSON-RPC 2.0 sur le transport Streamable HTTP de MCP, dans sa forme sans état : un message JSON-RPC par requête POST, une réponse en JSON simple. Une notification reçoit un HTTP 202 sans corps ; il n'y a ni session, ni flux envoyé par le serveur (GET répond 405). Les méthodes sont initialize, tools/list, tools/call et ping.
Les erreurs de protocole reviennent en erreurs JSON-RPC. Un outil qui échoue — opérateur en panne, crédit à zéro, modèle qu'Evanesca ne sert pas (le model_not_found de l'API) — renvoie un résultat marqué isError, que l'agent peut lire avant de décider quoi faire.
curl https://evanesca.app/api/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}'Neuf outils
Trois lisent le catalogue et se passent de clé. Les six autres demandent une clé — ou, par un connecteur, le droit indiqué : chat_completion et create_embedding sont facturés au token, comme l'API REST ; web_search et web_fetch sont facturés à l'appel ; check_balance et get_profile lisent votre compte.
| Outil | Ce qu'il fait | Droit du connecteur |
|---|---|---|
list_ | Liste les modèles de chat et d'embedding : où chacun tourne, son opérateur, son prix et, quand ils ont été vérifiés, sa fenêtre de contexte et son appel d'outils. Filtre possible par famille ou par opérateur. | Aucun |
get_ | Tout sur un modèle, par son identifiant : éditeur, licence, opérateur, lieu d'exécution, contrôles, conservation, prix, appel d'outils. | Aucun |
search_ | Trouve des modèles par mot-clé dans leur nom, leur éditeur, leur opérateur ou leur type. | Aucun |
chat_ | Lance une chat completion comme POST /chat/completions, facturée au token. Prend model, messages, temperature, max_tokens, tools et tool_choice ; renvoie la réponse entière (sans streaming), son usage, et l'opérateur et le lieu qui l'ont servie. | inference |
create_ | Crée des embeddings comme POST /embeddings, facturés au token d'entrée, et renvoie les vecteurs complets. | inference |
check_ | Renvoie votre crédit prépayé restant, en euros. | account:read |
web_ | Cherche sur le web en direct, par Linkup, et renvoie jusqu'à 8 résultats, chacun avec le texte de sa page — pas un simple extrait —, coupé à 15 000 caractères. Profondeur facultative : « fast » ou « standard », par défaut et plus complète. 0,0076 € la recherche. | web |
web_ | Lit une page web — une adresse http ou https — par Linkup et renvoie son texte en markdown, coupé à 15 000 caractères. 0,0015 € la page. | web |
get_ | Renvoie le compte derrière la connexion — un identifiant qui ne change jamais, son nom et son adresse e-mail —, pour que ChatGPT distingue les comptes connectés. | account:read |
La recherche web pour votre agent
web_search et web_fetch appellent Linkup, une société française — Linkup Technologies SAS, siège social à Fresnes, France —, sur le compte Linkup d'Evanesca : le même moteur que la recherche web du chat. Linkup ne reçoit que ce dont l'outil a besoin — la requête que rédige votre agent, ou l'adresse de la page à lire —, jamais la conversation, et Evanesca ne garde aucune trace des requêtes ni des résultats. Evanesca n'a pas vérifié où tournent les serveurs de Linkup ; sa propre politique de confidentialité s'applique, lue le 13 oct. 2026.
- web_search renvoie jusqu'à 8 résultats, chacun avec le texte de sa page — pas un simple extrait —, coupé à 15 000 caractères : votre agent peut souvent répondre dès le premier appel. Sa profondeur facultative vaut « fast » ou « standard », par défaut et plus complète.
- web_fetch lit une page — une adresse http ou https — et renvoie son texte en markdown, coupé à 15 000 caractères : la suite logique quand le texte d'un résultat ne suffit pas.
- Chaque appel est facturé, TVA comprise : 0,0076 € la recherche, 0,0015 € la page — environ 7,56 € les 1 000 recherches. Par MCP, vous ne payez rien d'autre pour eux : c'est le modèle de votre client qui lit les résultats. Les deux demandent une clé — ou le droit web d'un connecteur — et un crédit supérieur à zéro.
Connecter un client avec une clé
Il faut un client qui accepte un serveur MCP distant en Streamable HTTP et permet d'ajouter un en-tête. Pointez-le sur l'endpoint et envoyez votre clé en Authorization: Bearer. Chaque client a son format ; ceux-ci suivent la documentation de Claude Code, de Cursor et de Cline, lue le 6 oct. 2026.
claude mcp add --transport http evanesca https://evanesca.app/api/mcp \
--header "Authorization: Bearer $EVANESCA_API_KEY"{
"mcpServers": {
"evanesca": {
"type": "http",
"url": "https://evanesca.app/api/mcp",
"headers": {
"Authorization": "Bearer ${EVANESCA_API_KEY}"
}
}
}
}{
"mcpServers": {
"evanesca": {
"url": "https://evanesca.app/api/mcp",
"headers": {
"Authorization": "Bearer ${env:EVANESCA_API_KEY}"
}
}
}
}{
"mcpServers": {
"evanesca": {
"type": "streamableHttp",
"url": "https://evanesca.app/api/mcp",
"headers": {
"Authorization": "Bearer <EVANESCA_API_KEY>"
}
}
}
}Claude Code et Cursor lisent la clé dans votre environnement (${EVANESCA_API_KEY}, ${env:EVANESCA_API_KEY}). Dans le fichier de Cline, collez la clé elle-même à la place de <EVANESCA_API_KEY>, et gardez ce fichier hors de tout dépôt.
ChatGPT et Claude : le connecteur OAuth 2.1
ChatGPT et Claude ne prennent pas de clé dans un en-tête : ils se connectent en OAuth 2.1. Vous vous connectez à votre compte Evanesca et vous approuvez ce que le connecteur pourra faire ; aucune clé n'est copiée nulle part. Ce que ces clients attendent est décrit dans le guide des connecteurs personnalisés de Claude et dans le guide d'authentification MCP d'OpenAI, lus le 13 oct. 2026.
- Ajoutez le connecteur
Dans ChatGPT ou dans Claude, ajoutez un connecteur personnalisé avec l'URL de l'endpoint, https://evanesca.app/api/mcp. Le client lit sur l'endpoint lui-même où vous connecter (métadonnées de ressource protégée OAuth, RFC 9728).
- Connectez-vous et approuvez
L'écran de consentement d'Evanesca nomme le client, les droits qu'il demande et l'adresse où vous serez renvoyé. Un client qui publie son identité à une adresse https — ChatGPT le fait, Claude le propose — s'affiche avec cette adresse ; un client qui s'est enregistré tout seul est signalé comme non vérifié.
- Utilisez-le, coupez-le quand vous voulez
Les appels du connecteur sont facturés sur votre crédit comme tout appel à l'API. La connexion apparaît parmi vos clés API sous le nom « <client> (OAuth) » : révoquez-la là pour la couper.
| Droit | Ce qu'il permet | Outils |
|---|---|---|
inference | Faire tourner des modèles en votre nom — chat completions et embeddings, facturés sur votre crédit comme tout appel à l'API. | chat_completion et create_embedding |
web | Chercher et lire des pages web, facturé à l'appel. | web_search et web_fetch |
account:read | Voir le nom du compte, son adresse e-mail et son crédit. | check_balance et get_profile |
Lire le catalogue ne demande jamais de droit. get_profile sert à ChatGPT à reconnaître le compte connecté : il renvoie un identifiant qui ne change ni au renouvellement des jetons, ni à une reconnexion.
Un jeton d'accès est valable 1 heure ; le client le renouvelle avec un jeton de rafraîchissement valable 60 jours, remplacé à chaque usage. Un ancien jeton de rafraîchissement présenté de nouveau — passé un délai de grâce de 30 secondes — coupe toute la connexion, comme OAuth 2.1 le recommande contre le vol. Les jetons sont opaques, Evanesca n'en garde que l'empreinte, et ils ne valent que pour l'endpoint MCP, pas pour l'API REST. Un jeton expiré ou révoqué reçoit un HTTP 401 avec un en-tête WWW-Authenticate, pour que le client le renouvelle ou vous redemande de vous connecter ; un outil appelé sans le droit qu'il demande renvoie un résultat d'erreur qui nomme ce droit.
Pour les développeurs de clients : PKCE en S256, le paramètre resource (RFC 8707) et le paramètre iss à chaque redirection (RFC 9207). Découverte à https://evanesca.app/.well-known/oauth-protected-resource et https://evanesca.app/.well-known/oauth-authorization-server. Un client s'identifie par un document de métadonnées publié à son client_id https, ou s'enregistre lui-même (enregistrement dynamique, RFC 7591, clients publics uniquement). Pas d'OpenID Connect.
Clés, connexions et facturation
La clé va dans l'en-tête Authorization de chaque requête, comme pour l'API REST. Sans elle, les outils du catalogue répondent quand même — un agent peut regarder avant de demander quoi que ce soit ; les autres renvoient un résultat isError qui réclame une clé. Une clé API porte tous les droits ; un connecteur ne porte que ceux que vous avez approuvés.
chat_completion atteint les mêmes modèles que l'API REST, tous exécutés en Europe, et son résultat nomme l'opérateur qui a répondu et le lieu (Où tournent les appels).
La facturation est celle de l'API REST : mêmes prix au token, même crédit, même historique dans votre compte. Un appel qui échoue chez l'opérateur n'est pas facturé. web_search et web_fetch sont facturés à l'appel — 0,0076 € la recherche, 0,0015 € la page. Une fois le crédit à zéro, les outils payants refusent les nouveaux appels ; ceux déjà en cours peuvent le faire passer un peu sous zéro, et l'écart est déduit de votre recharge suivante.
Questions fréquentes
Quels clients peuvent se connecter ?
Deux sortes. Les clients qui acceptent un serveur MCP distant avec un en-tête de requête — Claude Code, Cursor et Cline parmi d'autres — utilisent une clé API, configurés comme ci-dessus. ChatGPT et Claude se connectent en OAuth 2.1 : vous ajoutez Evanesca comme connecteur personnalisé avec l'URL de l'endpoint, vous vous connectez à votre compte et vous approuvez les droits demandés. Il n'y a pas de SDK Evanesca à installer.
Puis-je utiliser Evanesca dans ChatGPT ou Claude ?
Oui, comme connecteur personnalisé : donnez à ChatGPT ou à Claude l'URL de l'endpoint, connectez-vous à Evanesca et approuvez les droits demandés — faire tourner des modèles, chercher sur le web, lire votre compte. Les appels passés par le connecteur sont facturés sur votre crédit comme tout appel à l'API, et vous coupez la connexion quand vous voulez depuis vos clés API.
Tous les outils demandent-ils une clé ?
Non. list_models, get_model et search_models répondent sans clé. Les autres demandent votre clé dans l'en-tête Authorization — ou, par un connecteur, le droit indiqué dans le tableau —, et tous sauf check_balance et get_profile demandent aussi un crédit supérieur à zéro.
Un appel par MCP reste-t-il en Europe ?
L'appel au modèle, oui : tous les modèles qu'Evanesca sert tournent en Europe, et le résultat de chat_completion nomme l'opérateur et le lieu. web_search et web_fetch font exception : ils envoient la requête ou l'adresse à Linkup, une société française, et Evanesca n'a pas vérifié où tournent ses serveurs.
Où part la recherche web ?
Chez Linkup, une société française — Linkup Technologies SAS, siège social à Fresnes, France —, sur le compte Linkup d'Evanesca. Linkup reçoit la requête que rédige votre agent, ou l'adresse de la page à lire : jamais la conversation. Evanesca n'a pas vérifié où tournent ses serveurs ; sa propre politique de confidentialité s'applique, lue le 13 oct. 2026. Chaque recherche coûte 0,0076 € et chaque page 0,0015 €, TVA comprise, sur votre crédit.
Le serveur garde-t-il un état entre deux appels ?
Non. Le serveur est sans état : chaque POST porte une requête JSON-RPC et reçoit sa réponse dans la même réponse HTTP, sans identifiant de session.
Donnez à votre agent des modèles exécutés en Europe.
Une clé, une URL, et votre client MCP voit tout le catalogue, avec le lieu d'exécution de chaque modèle.