MCP : Model Context Protocol
Pilote outsend depuis Claude, Cursor, Claude Code ou n'importe quel client MCP. Ton abonnement, tes tokens : live sur https://outsend.xyz/mcp.
Statut : live. Le serveur MCP est en production. Demande à ton assistant IA « 1 000 plombiers à Lyon avec leurs emails » et il pilote outsend pour toi.
Le serveur MCP expose outsend comme serveur MCP distant (Streamable HTTP, sans état) auquel tout client compatible peut se connecter : Claude.ai (connecteurs personnalisés), Claude Desktop, Claude Code, Cursor, l'API Anthropic, ou tout futur client qui parle le protocole.
Deux façons de s'authentifier : OAuth pour les connecteurs personnalisés Claude.ai (tu te connectes et tu cliques sur Autoriser, aucune clé à copier), ou une clé API (osk_…) créée dans Réglages → Clés API pour Claude Code, Cursor, l'API Messages et les scripts. Pas encore de compte : commence ici, le code d'accès est appliqué pour toi. Le client IA appelle ensuite outsend en ton nom, avec ton propre abonnement LLM, zéro coût LLM côté outsend.
Se connecter depuis Claude.ai (OAuth)
- Dans Claude.ai, ouvre Settings → Connectors (Paramètres → Connecteurs).
- Clique sur Add custom connector (Ajouter un connecteur personnalisé).
- URL :
https://outsend.xyz/mcp. Laisse vides les champs OAuth Client ID et Client Secret : Claude s'enregistre tout seul. - Clique sur Connect, connecte-toi à outsend si c'est demandé, puis clique sur Autoriser.
Les tokens d'accès durent une heure et se renouvellent automatiquement. Pour déconnecter, révoque l'application dans Réglages → Clés API → Applications connectées sur outsend.
Une connexion sans identifiant (ni token OAuth, ni clé API) reçoit 401 Unauthorized, avec un header WWW-Authenticate qui pointe vers https://outsend.xyz/.well-known/oauth-protected-resource/mcp : c'est ainsi que les clients MCP découvrent le flux OAuth. Le catalogue des outils reste public sur cette page (voir Outils plus bas).
Se connecter avec une clé API
Pour Claude Code, Cursor, l'API Messages de Claude et les scripts.
Endpoint : https://outsend.xyz/mcp, auth via Authorization: Bearer osk_… (ou X-API-Key).
Claude Code :
claude mcp add outsend --transport http https://outsend.xyz/mcp \
--header "Authorization: Bearer osk_TA_CLE"
Cursor (~/.cursor/mcp.json) :
{ "mcpServers": { "outsend": { "url": "https://outsend.xyz/mcp",
"headers": { "Authorization": "Bearer osk_TA_CLE" } } } }
API Messages de Claude (connecteur MCP) :
"mcp_servers": [{ "type": "url", "url": "https://outsend.xyz/mcp",
"name": "outsend", "authorization_token": "osk_TA_CLE" }]
Clients sans configuration de headers ni OAuth : utilise la variante « URL secrète » ; l'URL est un mot de passe, ne la partage pas :
https://outsend.xyz/mcp/k/osk_TA_CLE
Si la clé fuite, révoque-la dans Réglages → Clés API ; l'URL meurt avec elle.
Outils
| Outil | Ce qu'il fait |
|---|---|
list_modules |
Catalogue des modules (entrées/sorties/quand l'utiliser) |
get_pipeline_schema |
Contrat machine pour construire des pipelines |
estimate_scrap |
Coût (EF) et volume d'une extraction, sans la lancer |
create_scrap_job |
Lance une extraction Google Maps (async, supporte stop_at) |
create_enrichment_job |
Enrichit un job terminé : emails, avis, réseaux, vérif, techstack… Pour les avis, max_reviews (défaut 300) et period_months (défaut 12) en option, 0 = illimité |
get_job |
Statut, compteurs, URL de téléchargement |
get_job_results |
Aperçu des lignes (≤ 50/appel) + total + lien CSV |
list_jobs |
Jobs récents |
create_pipeline |
Crée et démarre une pipeline multi-étapes. Option low_priority : la pipeline passe après les autres dans la file d'attente et coûte moins cher. |
list_pipelines |
Pipelines avec statut |
create_monitor / list_monitors |
Surveillance récurrente d'un job ou d'une pipeline |
get_events |
Flux d'événements du compte (job.completed…) |
Les jobs sont asynchrones : l'assistant crée un job, poll get_job, puis récupère un aperçu avec get_job_results ; les données complètes passent toujours par l'URL de téléchargement, jamais inline dans la conversation.
Périmètre et limites
Le serveur MCP hérite des permissions normales du compte, que l'appel porte un token OAuth ou une clé API :
- Il ne peut pas accéder aux données des autres utilisateurs.
- Le même gate EF et les mêmes quotas que l'app web s'appliquent : une pipeline hors quota est refusée à l'identique.
- Il ne touche ni à la facturation, ni aux réglages du compte, ni à l'admin, ni à la gestion des clés API.
- Les tokens OAuth ne valent que sur
/mcp: ils n'ouvrent pas l'API REST. - Limite de débit : 600 appels MCP / heure / compte.
BYOK vs MCP
| Pattern | Où vit le chat | Qui paie les tokens LLM |
|---|---|---|
| BYOK | Dans outsend.xyz | L'utilisateur, via une clé collée |
| MCP | Dans le client IA existant de l'utilisateur | L'utilisateur, via son abonnement |
Les deux patterns coexistent. BYOK si l'assistant doit vivre dans l'UI outsend ; MCP s'il doit vivre là où tu travailles déjà.
Et ensuite
- Authentification : créer ta clé API
- Événements & webhooks : les mêmes événements, pour les plateformes d'automatisation
- llms.txt : laisser tout assistant IA ingérer la doc