meta-ads
Meta Ads MCP
Convierte la API de Graph de Meta (Facebook) Ads en un servidor MCP para que Claude (Desktop / Claude Code) pueda llamarla directamente, de modo que los compañeros de la empresa puedan consultar el rendimiento de los anuncios y los materiales creativos mediante conversación.
Las dos API correspondientes a la especificación del PDF:
Tool | Endpoint | Propósito |
|
| Obtener gasto, impresiones, alcance, clics, CTR/CPC/CPM, acciones, tasa de visualización de video, etc. |
|
| Obtener los materiales creativos de un anuncio individual (imagen, texto, CTA, enlace de publicación) |
Dos formas de ejecución
Modo | Apto para | Transport |
stdio (predeterminado) | Local / uso individual / desarrollo | Claude Desktop inicia un subproceso |
http | EC2 / contenedor / uso compartido en toda la empresa | streamable-http + autenticación Bearer |
A. Local (stdio)
Related MCP server: Meta Ads MCP Server
Instalación
cd C:\Users\bexo6\OneDrive\桌面\mcp_meta_claude
uv sync
Copy-Item .env.example .env # 然後填好 META_ACCESS_TOKEN 等Conectar con Claude Desktop
Edita %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"meta-ads": {
"command": "uv",
"args": [
"--directory",
"C:\\Users\\bexo6\\OneDrive\\桌面\\mcp_meta_claude",
"run",
"python",
"server.py"
]
}
}
}Reinicia Claude Desktop → Settings → Developer deberías ver meta-ads.
B. Desplegar en EC2 para uso de toda la empresa (http)
Se asume que ya tienes EC2 + nginx + HTTPS ejecutándose en
https://ai.gastom.com.tw. No instalamos Caddy adicionalmente, solo ejecutamos el contenedor MCP (vinculado a127.0.0.1:8000), para que tu nginx existente redirijahttps://ai.gastom.com.tw/meta-ads/*hacia él.
1. Generar el token Bearer compartido
python3 -c "import secrets; print(secrets.token_urlsafe(32))"Guarda la cadena (gestor de contraseñas / vault de la empresa). Luego:
Escríbela en el
.envdel EC2Envíala a los compañeros para que la pongan en Claude Desktop
2. Colocar el código en el EC2
ssh your-user@ec2-host
git clone <你的 repo 位置> meta-ads-mcp
cd meta-ads-mcp
cat > .env <<'EOF'
META_ACCESS_TOKEN=<長效 Graph API token>
META_AD_ACCOUNT_ID=act_870176260326362
MCP_BEARER_TOKEN=<上一步產生的字串>
EOF
chmod 600 .env3. Iniciar el contenedor MCP
docker compose up -d --build
docker compose logs -f mcp # 看到 "Uvicorn running on http://0.0.0.0:8000" 就 OKVerifica desde el propio EC2 (aún sin pasar por nginx):
curl -i http://127.0.0.1:8000/healthz # 200
curl -i -X POST http://127.0.0.1:8000/mcp # 401(沒 token)4. Añadir una location en nginx
Pega el contenido de deploy/nginx-meta-ads.conf dentro del bloque existente
server { listen 443 ssl; server_name ai.gastom.com.tw; ... }, y luego:
sudo nginx -t # 語法檢查
sudo systemctl reload nginx # 套用Verifica desde la red externa:
curl -i https://ai.gastom.com.tw/meta-ads/healthz # 200
curl -i -X POST https://ai.gastom.com.tw/meta-ads/mcp # 401
curl -i -X POST -H "Authorization: Bearer <你的token>" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"t","version":"1"}}}' \
https://ai.gastom.com.tw/meta-ads/mcp # 200 + serverInfo5. Configuración de Claude Desktop para los compañeros
Cada compañero añade en %APPDATA%\Claude\claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"meta-ads": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://ai.gastom.com.tw/meta-ads/mcp",
"--header",
"Authorization: Bearer 上面產生的_MCP_BEARER_TOKEN"
]
}
}
}La computadora de los compañeros debe tener Node.js (para que
npxfuncione).mcp-remotehace de puente entre stdio y tu endpoint HTTPS; ellos no necesitan instalar Python / uv / tu código.
Proceso de actualización / renovación
cd /path/to/meta-ads-mcp
git pull
docker compose up -d --buildApagar
docker compose downRotación de token
Cuando el token se filtre o se renueve periódicamente:
Cambia
MCP_BEARER_TOKENen el.envdel EC2docker compose up -d(recreará el contenedor mcp)Envía el nuevo token a los compañeros y actualiza su
claude_desktop_config.json
Ejemplos de conversación
«Ayúdame a obtener los datos de anuncios del 2026-03-23 al 2026-03-25 y lista los tres anuncios con mayor gasto»
«Ayúdame a ver cómo es el material creativo del anuncio con ID
120228265609960545»
Claude decidirá por sí mismo llamar primero a get_ad_insights y luego a get_ad_creative para el ad_id específico.
Notas de seguridad
Nunca hagas commit del
.env:.gitignoreya lo bloquea.MCP_BEARER_TOKENes la llave del presupuesto de la empresa: quien lo obtenga puede llamar a la API de Meta y gastar el dinero de publicidad de tu empresa. Trátalo con el mismo nivel de seguridad que una contraseña.HTTPS es imprescindible: enviar el token Bearer por HTTP equivale a transmitirlo en texto plano.
Security Group del EC2: además de abrir 80/443 al exterior, se recomienda restringir los demás puertos (especialmente el 22) al rango de IP de la empresa.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Conversational access to advertising performance data, creative analysis, and campaign insights
Conversational access to advertising performance data, creative analysis, and campaign insights
Query Meta Ads performance data — accounts, campaigns, ad sets, ads, metrics & settings.
Ask AI about your ads — query Meta, TikTok, and Google Ads performance in natural language.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceWraps the Meta Marketing API to enable creating, modifying, viewing, and deleting Instagram ads via natural language.27MIT
- AlicenseNot gradedqualityDmaintenancePython MCP server that exposes Meta Marketing API data, providing tools to manage ad accounts, campaigns, and analytics through natural language interfaces.MIT
- AlicenseNot gradedqualityDmaintenanceEnables management and analysis of Meta (Facebook/Instagram) ads through natural language conversations, with 30 tools for reading and writing ad data.MIT
- AlicenseNot gradedqualityDmaintenanceEnables full read/write management of Facebook ad campaigns, ad sets, ads, and creatives via the Meta Marketing API through natural language, with AI creative generation, performance analytics, and PDF reporting.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vitahuang629/mcp_meta_ads_claude'
If you have feedback or need assistance with the MCP directory API, please join our Discord server