Skip to main content
Glama
vitahuang629

meta-ads

by vitahuang629

Meta Ads MCP

Verpackt die Meta (Facebook) Ads Graph API als MCP-Server, damit Claude (Desktop / Claude Code) sie direkt aufrufen kann. Kollegen können so per Dialog Werbeerfolge und Creatives abfragen.

Die beiden APIs gemäß PDF-Spezifikation:

Tool

Endpoint

Zweck

get_ad_insights

GET /{ad_account_id}/insights (v23.0)

Ausgaben, Impressions, Reichweite, Klicks, CTR/CPC/CPM, Actions, Video-View-Rate usw. abrufen

get_ad_creative

GET /{ad_id} (v25.0)

Creatives einzelner Anzeigen abrufen (Bild, Text, CTA, Post-Link)

Zwei Ausführungsmodi

Modus

Geeignet für

Transport

stdio (Standard)

Lokal / Einzelperson / Entwicklung

Claude Desktop startet Unterprozess

http

EC2 / Container / Firmenweit

streamable-http + Bearer-Auth


A. Lokal (stdio)

Related MCP server: Meta Ads MCP Server

Installation

cd C:\Users\bexo6\OneDrive\桌面\mcp_meta_claude
uv sync
Copy-Item .env.example .env   # 然後填好 META_ACCESS_TOKEN 等

Anbindung an Claude Desktop

Bearbeiten Sie %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "meta-ads": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\Users\\bexo6\\OneDrive\\桌面\\mcp_meta_claude",
        "run",
        "python",
        "server.py"
      ]
    }
  }
}

Nach dem Neustart von Claude Desktop → Settings → Developer sollte meta-ads sichtbar sein.


B. Deployment auf EC2 für die ganze Firma (http)

Angenommen, du hast bereits EC2 + nginx + HTTPS unter https://ai.gastom.com.tw laufen. Wir installieren kein zusätzliches Caddy, sondern betreiben nur den MCP-Container (gebunden an 127.0.0.1:8000), damit dein bestehendes nginx https://ai.gastom.com.tw/meta-ads/* dorthin weiterleitet.

1. Gemeinsames Bearer-Token erzeugen

python3 -c "import secrets; print(secrets.token_urlsafe(32))"

String sicher speichern (Passwortmanager / Firmen-Vault). Danach:

  • In die .env auf der EC2 schreiben

  • An Kollegen verteilen, damit sie es in Claude Desktop eintragen

2. Code auf die EC2 übertragen

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 .env

3. MCP-Container starten

docker compose up -d --build
docker compose logs -f mcp     # 看到 "Uvicorn running on http://0.0.0.0:8000" 就 OK

Lokal auf der EC2 verifizieren (noch ohne 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. Einen Location-Block in nginx hinzufügen

Füge den Inhalt von deploy/nginx-meta-ads.conf in deinen bestehenden server { listen 443 ssl; server_name ai.gastom.com.tw; ... }-Block ein, dann:

sudo nginx -t                # 語法檢查
sudo systemctl reload nginx  # 套用

Von außerhalb des Netzwerks verifizieren:

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 + serverInfo

5. Claude-Desktop-Konfiguration der Kollegen

Jeder Kollege fügt in %APPDATA%\Claude\claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json) hinzu:

{
  "mcpServers": {
    "meta-ads": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://ai.gastom.com.tw/meta-ads/mcp",
        "--header",
        "Authorization: Bearer 上面產生的_MCP_BEARER_TOKEN"
      ]
    }
  }
}

Die Computer der Kollegen benötigen Node.js (damit npx funktioniert). mcp-remote vermittelt zwischen stdio und deinem HTTPS-Endpoint – sie müssen kein Python / uv / deinen Code installieren.


Upgrade-/Update-Prozess

cd /path/to/meta-ads-mcp
git pull
docker compose up -d --build

Herunterfahren

docker compose down

Token-Rotation

Wenn das Token kompromittiert wurde oder regelmäßig erneuert werden soll:

  1. MCP_BEARER_TOKEN in der .env auf der EC2 ändern

  2. docker compose up -d (erstellt den MCP-Container neu)

  3. Neues Token an Kollegen verteilen und deren claude_desktop_config.json aktualisieren


Dialogbeispiele

„Hole mir die Anzeigendaten vom 23.03.2026 bis 25.03.2026 und liste die drei Anzeigen mit den höchsten Ausgaben auf."

„Zeig mir, wie das Creative der Anzeige mit der ID 120228265609960545 aussieht."

Claude entscheidet selbst, zuerst get_ad_insights aufzurufen und dann für die jeweilige ad_id get_ad_creative aufzurufen.

Sicherheitshinweise

  • .env niemals committen: .gitignore ist bereits entsprechend konfiguriert.

  • MCP_BEARER_TOKEN ist der Schlüssel zum Firmenbudget: Wer es besitzt, kann die Meta-API aufrufen und das Werbebudget der Firma verbrennen. Wie ein Passwort behandeln.

  • HTTPS ist Pflicht: Bearer-Token über HTTP wäre Klartext-Übertragung.

  • EC2-Security-Group: Neben 80/443 nach außen sollten andere Ports (insbesondere 22) auf den Firmen-IP-Bereich beschränkt werden.

Maintenance

ActivityMaintained
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Python MCP server that exposes Meta Marketing API data, providing tools to manage ad accounts, campaigns, and analytics through natural language interfaces.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables management and analysis of Meta (Facebook/Instagram) ads through natural language conversations, with 30 tools for reading and writing ad data.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables 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

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