Skip to main content
Glama
meta-ads-mcp

meta-ads-mcp

by fujioka0729

meta-ads-mcp

Meta Ads API (Facebook/Instagram広告) を Claude Code から操作するための MCP サーバーと Skills。

キャンペーン管理・広告セット作成・インサイト取得・オーディエンス管理など、Meta Ads の各種 API を Claude Code の会話から直接利用できます。

Note: このプロジェクトは Meta Platforms, Inc. の公式ツールではありません。Meta Marketing API の公開仕様をもとに作成した非公式の連携ツールです。

構成

meta-ads-mcp/
├── MCP サーバー (src/, bin/)    ... APIを実際に叩く「手足」
└── Skills (skills/)             ... APIの使い方を知る「知識」
  • MCP サーバー: 8つの汎用ツール(GET/POST/DELETE + 管理系)を提供

  • Skills: API リファレンス 7 ファイル + 操作ガイド 6 ファイル

Related MCP server: Meta Ads MCP Server

セットアップ

前提条件

  • Node.js 18 以上

  • Claude Code インストール済み

Step 1: Meta アプリの作成

  1. developers.facebook.com にアクセス

  2. 「マイアプリ」→「アプリを作成」

  3. アプリタイプは必ず「ビジネス」を選択(「生活者」だと広告系の権限が使えません)

  4. アプリ名を入力(meta, facebook, insta 等の商標は使用不可)

  5. ビジネスポートフォリオを選択(任意)

  6. 「アプリを作成」をクリック

Step 2: Marketing API の追加

  1. アプリのダッシュボード → 「アプリに製品を追加」

  2. 「マーケティングAPI」の「設定」をクリック

  3. 左メニューに「マーケティングAPI」が追加されることを確認

Step 3: App ID / App Secret の確認

  1. 左メニュー → 「アプリの設定」→「ベーシック」

  2. アプリID と app secret(「表示」をクリック)を控える

Step 4: アクセストークンの取得

Graph API Explorer を使ってトークンを取得します。

  1. Graph API Explorer にアクセス

  2. 右上の「Metaアプリ」で作成したアプリを選択

  3. 「許可を追加」欄に以下を1つずつ入力して追加:

    • ads_management

    • ads_read

    • read_insights

    • business_management

  4. 「Generate Access Token」をクリック

  5. Facebook ログイン画面で権限を許可

  6. 生成されたアクセストークンをコピー(後で使います)

Step 5: Skills のインストール

npx graph-ads-mcp setup-skills

~/.claude/skills/meta-ads-api-skill/ に API リファレンスと操作ガイドがインストールされます。

Step 6: MCP サーバーの登録

~/.claude/settings.json の mcpServers に追加:

{
  "mcpServers": {
    "meta-ads": {
      "command": "npx",
      "args": ["graph-ads-mcp"]
    }
  }
}

Step 7: Claude Code を再起動

Step 8: MCP の設定

Claude Code の会話で認証情報を設定します:

meta_ads_configure({
  ad_account_id: "act_XXXXX",
  app_id: "あなたのアプリID",
  app_secret: "あなたのApp Secret"
})

広告アカウント ID がわからない場合

設定後に以下で確認できます:

meta_ads_api_get({ path: "/me/adaccounts", query: { fields: "id,name" } })

Step 9: トークンの保存

方法 A: OAuth 認証(ブラウザ)

Meta広告の認証をして

ブラウザが開き Facebook ログイン画面が表示されます。認証完了後、long-lived トークン(60日有効)が自動保存されます。

Note: ビジネスタイプのアプリでは OAuth フローが動作しない場合があります。その場合は方法 B を使ってください。

方法 B: Graph API Explorer のトークンを保存(推奨)

Step 4 で取得したトークンを Claude Code の会話で貼り付けるだけです:

meta_ads_save_token({ access_token: "Step4で取得したトークン" })

自動的に long-lived トークン(60日有効)に交換して保存されます。

Step 10: 動作確認

Meta広告のキャンペーン一覧を取得して

MCP ツール一覧

ツール

説明

meta_ads_api_get

GET リクエスト(データ取得)

meta_ads_api_post

POST リクエスト(データ作成・更新)

meta_ads_api_delete

DELETE リクエスト(データ削除)

meta_ads_api_list_paths

利用可能なエンドポイント一覧

meta_ads_configure

認証情報設定

meta_ads_authenticate

OAuth認証(ブラウザ)

meta_ads_save_token

トークン保存(Graph API Explorer用、long-lived自動交換)

meta_ads_auth_status

認証状態確認

meta_ads_server_info

サーバー情報表示

Skills 構成

skills/meta-ads-api-skill/
├── SKILL.md                         # スキル定義・全体目次
├── references/ (7 ファイル)          # API エンドポイント仕様書
│   ├── campaigns.md                 # キャンペーン
│   ├── adsets.md                    # 広告セット
│   ├── ads.md                       # 広告
│   ├── creatives.md                 # クリエイティブ
│   ├── audiences.md                 # オーディエンス
│   ├── insights.md                  # インサイト
│   └── common-authentication.md     # 認証
└── recipes/ (6 ファイル)             # 操作手順ガイド
    ├── campaign-management.md       # キャンペーン管理
    ├── adset-management.md          # 広告セット管理
    ├── ad-management.md             # 広告管理
    ├── insights-reporting.md        # インサイト・レポート
    ├── audience-management.md       # オーディエンス管理
    └── troubleshooting.md           # トラブルシューティング

トラブルシューティング

アプリタイプを間違えた

アプリタイプは作成後に変更できません。「生活者」で作成してしまった場合は、新しく「ビジネス」タイプでアプリを作り直してください。

「Invalid Scopes」エラーが出る

アプリタイプが「生活者」の場合、ads_management 等の広告系権限は使えません。「ビジネス」タイプでアプリを作り直してください。

OAuth 認証で「機能をご利用いただけません」

ビジネスタイプのアプリでは通常の Facebook ログインではなく「ビジネス向け Facebook ログイン」が使われます。Graph API Explorer でトークンを取得する方法(Step 4 + Step 9 方法 B)を使ってください。

MCP サーバーが認識されない

  • settings.json のパスが正しいか確認

  • Claude Code を再起動したか確認

  • npx graph-ads-mcp を直接実行してエラーが出ないか確認

認証エラー (OAuthException)

  • トークンの有効期限を確認: meta_ads_auth_status ツール

  • トークン期限切れの場合は Step 4 → Step 9 でトークンを再取得

  • トークンキャッシュを削除: rm ~/.config/meta-ads-mcp/tokens.json

権限不足

  • Graph API Explorer で必要な権限を追加してトークンを再生成

  • 開発モードでは自分のアカウントのみアクセス可能

  • 他ユーザーのアカウントにアクセスするにはアプリレビューが必要

トークンの有効期限

  • Graph API Explorer で取得したトークン: 約1-2時間

  • long-lived トークン(交換後): 約60日

  • 期限切れ後は Step 4 → Step 9 でトークンを再取得

レート制限

Meta Ads API のレート制限は広告アカウント単位。制限に達した場合は数分待ってから再試行してください。

ソースからビルドする場合

git clone https://github.com/fujioka0729/graph-ads-mcp.git
cd meta-ads-mcp
npm install
npm run build

ライセンス

MIT

Available Tools

9 tools
meta_ads_api_deleteC

Meta Ads APIにDELETEリクエストを送信します

Inputs: path (required), query.

meta_ads_api_getC

Meta Ads APIにGETリクエストを送信します

Inputs: path (required), query.

meta_ads_api_list_pathsA

Meta Ads APIの既知エンドポイント一覧を表示します

Inputs: no named parameters.

meta_ads_api_postB

Meta Ads APIにPOSTリクエストを送信します(作成・更新兼用)

Inputs: path (required), body (required), query.

meta_ads_authenticateB

Meta Ads APIのOAuth認証を開始します。ブラウザでFacebookログインを行います。

Inputs: no named parameters.

meta_ads_auth_statusA

Meta Ads APIの認証状態を確認します

Inputs: no named parameters.

meta_ads_configureB

Meta Ads APIの接続設定を保存します

Inputs: ad_account_id (required), app_id (required), app_secret (required).

meta_ads_save_tokenA

Graph API Explorerで取得したアクセストークンを保存します。short-livedトークンは自動的にlong-lived(60日有効)に交換されます。

Inputs: access_token (required).

meta_ads_server_infoA

MCPサーバーのバージョンと接続先情報を表示します

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool has a distinct purpose: generic HTTP methods (GET, POST, DELETE), endpoint listing, authentication, configuration, and server info. No overlap between them.

    Naming Consistency5/5

    All tools follow a consistent pattern with 'meta_ads_' prefix and underscore-separated names, e.g., meta_ads_api_get, meta_ads_authenticate.

    Tool Count5/5

    With 9 tools, the set is well-scoped for an API wrapper: authentication, configuration, and basic CRUD via HTTP methods. Neither too few nor too many.

    Completeness4/5

    Covers essential operations: auth, config, and raw API calls (GET, POST, DELETE). However, it lacks higher-level abstractions for common ad operations, relying on users knowing endpoints.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      A comprehensive MCP server for managing and analyzing Meta Ads (Facebook/Instagram) with over 80 natural-language tools for AI agents like Claude Desktop.
      -
    • 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
      A
      quality
      D
      maintenance
      MCP Server for the Meta Marketing API. Gives Claude Desktop direct access to your ad account data — campaign performance, creative analysis, audience breakdowns, and budget pacing.
      10
      353 npm
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      MCP server that enables AI agents (Claude Code) to manage Criteo campaigns, ad sets, creatives, audiences, and reports via natural language.
      -