Autres articles 12 min de lecture
Cursor MCP : ajouter le serveur Apogee pour vos Facebook Ads
Cursor MCP : une clé d'API Apogee dans ~/.cursor/mcp.json, et l'agent de Cursor lance, lit et coupe vos ads Meta, TikTok et Snapchat depuis l'éditeur.
Sommaire
Cursor MCP, en pratique : une clé d’API Apogee dans ~/.cursor/mcp.json, et l’agent de Cursor lit, lance et coupe vos ads Meta, TikTok et Snapchat sans quitter l’éditeur. Comme il travaille sur votre ordinateur, il lance directement le dossier où votre monteur dépose les exports. Il faut une offre Apogee qui inclut le serveur MCP, dès Pro, et une clé limitée aux accès dont Cursor a besoin. Rien ne part sans votre oui.

Avant de commencer
| Côté | Ce qu’il faut |
|---|---|
| Cursor | L’application de bureau. Sa page sur le MCP ne fixe pas d’offre minimale ; sur Enterprise, un administrateur peut limiter les serveurs autorisés (MCP Allowlist) |
| Apogee | Une offre qui inclut le serveur MCP : Pro, Growth ou Scale, essai de 7 jours à 1 € ; Starter ne l’a pas |
| Connexion | Une clé d’API Apogee (apk_), la voie que donne le guide d’Apogee ; Cursor sait aussi se connecter par OAuth |
| Comptes publicitaires | Vos comptes Meta, TikTok ou Snapchat, déjà reliés à Apogee |
Grok Bot, l’agent personnel de xAI opéré avec Cursor, passe par ce même client MCP : si c’est lui que vous voulez brancher, suivez le guide de Grok Bot avec Apogee. Pour comparer Apogee aux autres serveurs, dont le MCP officiel de Meta, voyez le panorama des MCP Meta Ads.
Cursor MCP : ajouter Apogee en trois étapes
Étape 1 : créer une clé d’API dans Apogee
- Dans Apogee, ouvrez Settings → API et créez une clé. Dans Settings → MCP, avec Cursor sélectionné, le bouton Create an API key mène au même endroit.
- Remplissez Name : un nom qui dit à quoi sert la clé, par exemple « Cursor ».
- Dans Scopes, cochez seulement ce dont Cursor a besoin (tableau ci-dessous).
- Dans Expires, choisissez 30 jours, 90 jours (par défaut), 1 an, ou une date jusqu’à un an.
- Créez la clé et copiez-la tout de suite : Apogee ne l’affiche qu’une fois.
| Ce que vous demandez à Cursor | Scopes à cocher |
|---|---|
| Le récap du matin, la revue de la semaine | Read |
| Lancer des ads, envoyer des winners avec le Bridge | Read et Launch |
| Couper des ads, changer des budgets | Read et Actions |
Ne donnez à la clé que les scopes nécessaires. Si vous branchez aussi un script de reporting, donnez-lui sa propre clé, en lecture seule.
Étape 2 : ajouter Apogee dans ~/.cursor/mcp.json
Ouvrez ~/.cursor/mcp.json (créez-le s’il n’existe pas) et ajoutez Apogee avec votre clé :
{
"mcpServers": {
"apogee": {
"url": "https://app.apogee.ad/mcp",
"headers": {
"Authorization": "Bearer apk_…"
}
}
}
}
Remplacez apk_… par votre clé. Si le fichier contient déjà d’autres serveurs, ajoutez le bloc apogee à côté d’eux, dans mcpServers.

Deux règles de sécurité :
- Gardez la clé dans
~/.cursor/mcp.json, qui n’appartient qu’à vous, jamais dans le.cursor/mcp.jsond’un projet que vous partagez : ce fichier part souvent dans le dépôt Git. - Pour ne pas écrire la clé en clair, remplacez la valeur par
"Bearer ${env:APOGEE_API_KEY}"et définissezAPOGEE_API_KEYdans votre environnement. Cursor lit ces variables dansurletheaders.
Étape 3 : activer Apogee dans Customize
Dans Cursor, ouvrez Customize dans la barre latérale, trouvez Apogee et activez son interrupteur. Un serveur désactivé ne se charge pas et n’apparaît pas dans le chat. Ouvrez ensuite le chat de l’agent.
Vérifier la connexion
Par défaut, Cursor demande votre accord avant d’utiliser un outil MCP. L’agent appelle whoami, qui répond avec le compte Apogee, le type de connexion (ici une clé d’API) et ses scopes, puis list_ad_accounts. Deux lectures, rien ne change. Si l’agent ne trouve pas Apogee, ouvrez le panneau Output (Cmd+Shift+U) et choisissez MCP Logs.
Et la connexion par OAuth ?
Selon le guide d’Apogee, Cursor se connecte aussi par OAuth, sans clé à copier. Le guide ne décrit pas les menus de Cursor pour cette voie : si les vôtres diffèrent, gardez la clé. Quand Cursor ouvre la page d’Apogee, elle affiche « Cursor wants to access your Apogee account », le compte utilisé avec Switch, les accès Read, Launch et Manage à cocher, puis Cancel et Authorize. Pour l’application de bureau, la dernière ligne indique « You will go back to anysphere.cursor-mcp ».

Après Authorize, Cursor apparaît dans Settings → MCP, liste Connected assistants, avec ses accès, sa date de connexion et son dernier usage. Cette liste ne montre que les connexions OAuth : une clé d’API se gère dans Settings → API, liste API keys.

Que demander à Cursor ensuite : le travail de media buyer
Cursor a un avantage sur les apps de chat : il lit les fichiers de votre ordinateur et les envoie lui-même à Apogee, sans passer par Google Drive ou Dropbox.
Lancer un dossier de l’ordinateur sur Meta Ads
| Phase | Outils d’Apogee | Ce que vous voyez |
|---|---|---|
| Compte et campagne | list_, get_ | La question du compte si vous en avez plusieurs, puis les réglages repris du dernier ad set et de la dernière ad |
| Fichiers | get_, confirm_ | Cursor envoie chaque fichier sur une adresse signée, puis Apogee vérifie qu’il est arrivé et n’est pas vide |
| Entretien | get_ | Les questions de l’application, un sujet à la fois, avec une réponse recommandée |
| Ads et textes | get_ | Une ad par créa (9:16, 4:5 et 1:1 réunis), un texte principal, un titre et une description par ad |
| Récap et lancement | prepare_, launch, launch_ | Le récapitulatif complet, votre oui, puis le suivi jusqu’à la fin |
Cursor envoie jusqu’à 50 fichiers par appel, de 500 Mo chacun au plus, sur des adresses valables une heure. Le plafond quotidien d’un compte Apogee est de 2 000 fichiers et 100 Go sur Pro, 4 000 fichiers et 200 Go sur Growth et Scale. Meta ne reçoit rien avant votre oui.
Le même dossier sur TikTok Ads et Snapchat Ads
TikTok et Snapchat prennent des vidéos et des images depuis le stockage d’Apogee ; sur TikTok, une image tourne en carrousel. Nommez la plateforme, et l’agent reprend le modèle que vous avez enregistré dans l’application (Quick Bulk Edit, puis Save as template) :
| Plateforme | Ce qui est créé | Ce que l’agent vous demande |
|---|---|---|
| Meta | Un ad set et ses ads | Page et compte Instagram, audience, pixel et événement, textes |
| TikTok | Un ad group et ses ads | L’identité TikTok, et s’il faut utiliser Smart+ |
| Snapchat | Un ad squad et ses ads | Le profil public, le pixel, les pays |
L’agent lit vos modèles avec list_platform_templates, sans jamais en enregistrer ni en supprimer. Chaque plateforme a son récapitulatif, son budget et sa devise, et attend son propre oui. Le détail est sur la page Meta, TikTok et Snapchat dans Apogee.
Envoyer les winners Meta sur TikTok et Snapchat
Vos winners Meta peuvent aussi tourner sur TikTok et Snapchat : le Bridge d’Apogee en fait des copies en pause, et les ads Meta restent telles quelles :

L’agent classe vos ads avec get_top_performers, écarte avec list_bridge_transfers celles déjà envoyées, puis montre le récapitulatif de prepare_bridge_transfer ; bridge_transfer attend votre oui. Au premier transfert, il vous demande l’identité TikTok et le call to action, absents chez Meta. Les ads image restent sur Meta : le Bridge ne passe que les vidéos.
Le récap du matin

Le récap ne demande qu’une clé limitée au scope Read : get_account_overview et get_top_performers côté Meta, get_platform_overview et get_platform_top_performers côté TikTok et Snapchat, gratuits dans la limite quotidienne de votre offre (5 000 lectures par jour sur Pro).
Couper les ads qui fatiguent
Après lecture des résultats et de get_creative_fatigue_metrics, l’agent range les pauses en actions préparées (pause_ad sur Meta, set_platform_status sur TikTok) ; execute_action ne part qu’avec votre oui et demande le scope Actions. Une pause exécutée coûte 2 crédits, seulement si elle réussit.
Limites et sécurité
Côté Cursor. Cursor demande votre accord avant d’utiliser un outil MCP. En mode Auto-review, les outils MCP d’une liste autorisée s’exécutent tout de suite : n’y mettez jamais launch, execute_action ni bridge_transfer. Sur Enterprise, un administrateur peut fixer une MCP Allowlist : les serveurs approuvés, et les outils qui s’exécutent sans demander.
Côté clé. Une clé par usage, avec une date de fin. Un compte Apogee garde au plus 10 clés actives. Regenerate crée une nouvelle clé avec le même nom et les mêmes accès, et arrête l’ancienne.
Côté Apogee, quels que soient les réglages de Cursor :
| Garde-fou | Valeur |
|---|---|
| Avant tout lancement ou modification | Récapitulatif complet et votre oui |
| Statut des ads créées | En pause par défaut |
| Plan préparé | Valable 24 heures, exécuté une seule fois |
| Budget quotidien | Refusé au-dessus du plafond, 500 dans la devise du compte par défaut |
| Lancements et transferts Bridge | 25 par compte publicitaire sur 24 heures |
Le serveur MCP d’Apogee ne crée ni catalogue ni audience, et n’additionne jamais Meta, TikTok et Snapchat. Pour couper l’accès : Revoke sur la clé dans Settings → API, liste API keys (définitif et immédiat), ou Disconnect à côté de Cursor dans Settings → MCP pour une connexion OAuth. Les ads déjà lancées restent en place.
Problèmes fréquents
- 401 : la clé manque, est mal recopiée, inconnue, révoquée ou expirée ; Apogee répond le même 401 dans tous ces cas. Vérifiez l’en-tête
Bearer apk_…, ou régénérez la clé. Avec${env:APOGEE_API_KEY}, vérifiez que la variable est bien définie là où Cursor démarre. - 403 upgrade_required : votre offre Apogee n’inclut pas le serveur MCP (Starter). Passez à Pro, Growth ou Scale.
- 403 insufficient_scope, ou l’agent ne trouve pas un outil : la clé n’a pas le scope correspondant, par exemple Launch pour un lancement. Créez une clé avec les bons scopes.
- Apogee n’apparaît pas dans le chat : il est désactivé dans Customize, ou le JSON de
~/.cursor/mcp.jsonest invalide. Consultez MCP Logs dans le panneau Output. - Politique d’administrateur : sur Cursor Enterprise, si votre entreprise utilise une MCP Allowlist, Apogee doit y figurer. Demandez à l’administrateur de l’ajouter.
- 409 too_many_keys : le compte a déjà 10 clés actives. Révoquez-en une d’abord.
- La clé a été poussée dans un dépôt : révoquez-la ou régénérez-la aussitôt, puis remettez la nouvelle dans
~/.cursor/mcp.json. - 429, trop de requêtes : le serveur MCP accepte 600 appels par tranche de 15 minutes sur Pro, 1 200 sur Growth et Scale. Un lancement n’en demande qu’une poignée.
Pour aller plus loin
- les autres outils de code : VS Code avec GitHub Copilot, Claude Code, Gemini CLI et Devin Desktop ;
- Apogee face au MCP officiel de Meta Ads, et ses équivalents pour TikTok Ads et Snapchat Ads ;
- la documentation technique de Cursor avec Apogee, avec chaque outil cité ici.