Serveur MCP
Kreatoai expose un serveur MCP (Model Context Protocol) : le standard qui permet à un assistant IA d'utiliser des outils externes. Une fois connecté, vous pouvez dire à Claude ou Cursor « publie cette vidéo sur mes deux comptes TikTok jeudi à 18 h en brouillon » ou « crée une image pour annoncer notre soirée de vendredi », et l'assistant appelle Kreatoai pour vous.
Principe
/mcpServeur MCP distant (Streamable HTTP), aucune installation
Le serveur est hébergé : rien à installer, il suffit de donner l'URL https://api.kreatoai.com/mcp et une clé API à votre client. Chaque outil rejoue un appel de l'API /v1 avec cette clé : mêmes règles, mêmes quotas, mêmes permissions que l'API — le MCP n'a aucun privilège particulier.
Deux adresses existent. https://api.kreatoai.com/mcp expose tous les outils, création d'images comprise. https://api.kreatoai.com/mcp/social publie, programme et héberge des médias, sans génération : c'est celle du connecteur Claude décrit sur kreatoai.com/claude, pour l'annuaire des connecteurs d'Anthropic, qui n'accepte pas la génération.
Connexion en un clic (OAuth)
Les clients qui gèrent l'authentification OAuth n'ont pas besoin de clé : donnez-leur seulement l'URL https://api.kreatoai.com/mcp, ils vous renvoient sur une page Kreatoai où vous choisissez les permissions, puis la connexion est établie. Elle apparaît dans Réglages → Claude et API → Applications reliées, d'où vous la déconnectez d'un geste. Le jeton d'accès expire au bout d'une heure et se renouvelle tout seul ; si le renouvellement est refusé — connexion fermée de votre côté, jeton réutilisé par un tiers — l'application vous redemande l'autorisation.
| Client | Où coller l’URL |
|---|---|
| claude.ai (web et mobile) | Paramètres → Connecteurs → « Ajouter un connecteur personnalisé » → URL, puis « Connecter » |
| Claude Desktop | Paramètres → Connecteurs → « Ajouter un connecteur personnalisé » (même flux, sans mcp-remote) |
| Claude Code | claude mcp add --transport http kreatoai https://api.kreatoai.com/mcp puis /mcp → « Authenticate » |
| Cursor, Devin Desktop (ex-Windsurf), VS Code | Serveur MCP distant avec l’URL seule : le client détecte le flux OAuth |
| Tout autre client MCP | ChatGPT, Codex, OpenClaw, Hermes, Zed… : l’URL seule suffit dès que le client gère OAuth 2.1 |
Standard implémenté : OAuth 2.1 avec PKCE (S256), enregistrement dynamique du client (RFC 7591), découverte via /.well-known/oauth-authorization-server et /.well-known/oauth-protected-resource. Les sections suivantes décrivent l'alternative par clé API, utile pour les automatisations sans navigateur (n8n, scripts).
Claude Code
claude mcp add --transport http kreatoai https://api.kreatoai.com/mcp \
--header "Authorization: Bearer sk-kre-v1-votre_cle"Puis, dans une session : « Liste mes comptes connectés » ou « Programme ce texte sur LinkedIn demain à 9 h ». Vérifiez la connexion avec /mcp.
Claude Desktop
Claude Desktop se connecte aux serveurs distants via le pont mcp-remote. Ajoutez ceci à votre claude_desktop_config.json :
{
"mcpServers": {
"kreatoai": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.kreatoai.com/mcp",
"--header", "Authorization: Bearer sk-kre-v1-votre_cle"
]
}
}
}Cursor
Dans .cursor/mcp.json (projet) ou ~/.cursor/mcp.json (global) :
{
"mcpServers": {
"kreatoai": {
"url": "https://api.kreatoai.com/mcp",
"headers": { "Authorization": "Bearer sk-kre-v1-votre_cle" }
}
}
}n8n et autres clients
Tout client compatible Streamable HTTP fonctionne : nœud « MCP Client » de n8n (transport HTTP Streamable, en-tête Authorization), Devin Desktop, Zed, VS Code, le MCP Inspector… La clé peut aussi être passée via l'en-tête x-api-key.
Outils disponibles
| Outil | Scope | Rôle |
|---|---|---|
get_workspace | tout scope | Identité, marque, plan et solde de crédits — à appeler en premier |
list_accounts | accounts:read / publish:posts | Comptes connectés et leurs identifiants |
request_connect_link | accounts:read / publish:posts | Lien de 30 minutes pour relier soi-même un compte Facebook, Instagram, TikTok, LinkedIn ou YouTube, sans quitter la conversation |
create_post | publish:posts | Publier ou programmer sur un ou plusieurs comptes (brouillon TikTok possible, ou lien de dépôt avec awaitMedia) |
get_post / list_posts / update_post / cancel_post | publish:posts | Suivre, lister, modifier ou annuler une publication programmée |
list_comments | accounts:read / publish:posts | Lire les commentaires d’une Page Facebook ou d’un compte Instagram, et voir ceux qui attendent une réponse |
reply_to_comment / hide_comment | publish:posts | Répondre à un commentaire au nom du compte, ou le masquer et le réafficher |
create_generation | generations:write | Produire une image depuis une phrase (2 crédits) |
get_generation / list_generations | generations:write | Suivre une création, lister les précédentes et le solde |
upload_media | media:write | Héberger une image ou une vidéo depuis une URL (ou un fichier joint dans ChatGPT) |
create_upload_url | media:write | Envoyer un fichier de l’ordinateur, vidéo jusqu’à 512 Mo : rend une adresse et la commande curl à lancer (assistants qui exécutent des commandes : Claude Code, Codex, Cursor) |
Exemple de conversation complète : « Fais-moi une image verticale d'un plat qui sort du four, puis publie-la sur Instagram et Facebook avec la légende “Trois dîners prêts en 10 minutes” ». L'assistant enchaîne get_workspace (solde) → create_generation → get_generation (jusqu'à completed) → create_post.
Permissions et sécurité
Les scopes de la clé sont les permissions de l'assistant. Un outil dont la clé n'a pas le scope n'est pas exposé du tout : une clé accounts:read ne peut pas publier. Créez une clé dédiée par assistant, avec le minimum nécessaire, et une durée de vie courte.
Les actions qui coûtent (création d'image) ou publient sont marquées comme telles auprès de l'assistant, qui vous demande normalement confirmation avant de les exécuter. Les erreurs renvoyées expliquent quoi faire (compte non connecté, quota atteint…) pour que l'assistant puisse vous guider sans consulter cette documentation.