Skip to main content
Glama
apple-ads-mcp

apple-ads-mcp

by Happygallo

AIにこんなことを聞いてみましょう:

「先週のキャンペーンのパフォーマンスはどうだった?」 「ブランドキャンペーンを一時停止して、ディスカバリーの予算を500ドルに増やして。」 「どの検索語句が広告を表示している? 良いものを完全一致キーワードとして追加して。」

54のツール、3つのリソース、6つのプロンプトに対応 — キャンペーン、広告グループ、キーワード、クリエイティブ、予算、検索語句、地域ターゲティング、インプレッションシェア、パフォーマンスレポート。

主な機能

機能

説明

キャンペーン管理

キャンペーンと広告グループの作成、更新、一時停止、削除

キーワード最適化

ターゲットキーワードとマイナスキーワードの追加/削除、入札額の更新

パフォーマンスレポート

日付プリセット付きのキャンペーン、広告グループ、キーワード、広告、地域レポート

検索語句分析

広告表示のきっかけとなった実際の検索クエリを確認

クリエイティブ管理

広告、クリエイティブ、プロダクトページの管理

予算管理

予算オーダーの作成と管理、消化率の分析

インプレッションシェア

カスタムインプレッションシェアレポートの生成と取得

複数組織対応

実行時に組織を切り替え


クイックスタート

  1. Appleの認証情報を取得(約10分、初回のみ)

  2. キーペアを生成(コマンド2つ)

  3. MCPクライアントに追加

  4. チャットを開始


Related MCP server: google-ads-mcp

セットアップ

ステップ1 — APIユーザーを招待

searchads.apple.com でアカウント管理者が行います。

  1. 設定 → ユーザー管理 → ユーザーを招待 に移動

  2. APIを使用する人のメールアドレスを入力

  3. ロールを設定:

    • APIアカウントマネージャー — 読み書きフルアクセス

    • APIアカウント読み取り専用 — 閲覧のみ

  4. 招待を送信

APIユーザーは管理者とは別のApple IDである必要があります。管理者の場合は、2つ目のApple IDを使用してください。

ステップ2 — 招待を受け入れ、認証情報をコピー

招待されたユーザーが行います。

  1. メールの招待を受け入れ、searchads.apple.com にサインイン

  2. 設定 → API タブに移動

  3. 次の3つの値をコピーして保存:

    • clientId — SEARCHADS. で始まる

    • teamId — SEARCHADS. で始まる

    • keyId — UUID

ステップ3 — キーペアを生成

ターミナルを開いて実行:

openssl ecparam -genkey -name prime256v1 -noout -out ~/apple-ads-key.pem && \
openssl pkcs8 -topk8 -nocrypt -in ~/apple-ads-key.pem -out ~/apple-ads-key-pkcs8.pem

次に公開鍵を生成:

openssl ec -in ~/apple-ads-key-pkcs8.pem -pubout -out ~/apple-ads-key-public.pem

これにより以下が作成されます:

  • ~/apple-ads-key-pkcs8.pem — 秘密鍵(安全に保管してください。設定で使用します)

  • ~/apple-ads-key-public.pem — 公開鍵(次にAppleへアップロードします)

ステップ4 — 公開鍵をAppleにアップロード

公開鍵を表示:

cat ~/apple-ads-key-public.pem

出力全体(BEGIN / END 行を含む)をコピーし、次の手順を実行:

  1. searchads.apple.com の設定 → API タブに移動

  2. 公開鍵フィールドに貼り付け

  3. 保存

ステップ5 — MCPクライアントに追加

以下のクライアントから選択し、ステップ2の clientId、teamId、keyId と、ステップ3の秘密鍵のフルパスを入力してください。

複数の組織をお使いですか? ASA_ORG_ID を省略し、実行時に list_organizations / switch_organization を使用してください。または env に設定してデフォルトを指定することもできます。


クライアント

~/Library/Application Support/Claude/claude_desktop_config.json を編集:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

保存後、Claude Desktopを再起動します。

claude mcp add apple-ads \
  -e ASA_CLIENT_ID=SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_TEAM_ID=SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_KEY_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
  -e ASA_PRIVATE_KEY_PATH=/Users/yourname/apple-ads-key-pkcs8.pem \
  -- npx -y apple-ads-mcp

.cursor/mcp.json に追加:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

settings.json に追加:

{
  "mcp": {
    "servers": {
      "apple-ads": {
        "command": "npx",
        "args": ["-y", "apple-ads-mcp"],
        "env": {
          "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
        }
      }
    }
  }
}

~/.codeium/windsurf/mcp_config.json に追加:

{
  "mcpServers": {
    "apple-ads": {
      "command": "npx",
      "args": ["-y", "apple-ads-mcp"],
      "env": {
        "ASA_CLIENT_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_TEAM_ID": "SEARCHADS.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_KEY_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "ASA_PRIVATE_KEY_PATH": "/Users/yourname/apple-ads-key-pkcs8.pem"
      }
    }
  }
}

このサーバーはSTDIOトランスポートを使用します。MCP互換のクライアントは、以下を実行して接続できます:

npx -y apple-ads-mcp

次の環境変数を設定します:

変数

説明

ASA_CLIENT_ID

クライアントID(SEARCHADS. で始まる)

ASA_TEAM_ID

チームID(SEARCHADS. で始まる)

ASA_KEY_ID

キーID(UUID)

ASA_PRIVATE_KEY_PATH

PKCS#8秘密鍵の絶対パス

ASA_ORG_ID

(任意) デフォルトで使用する組織ID

ASA_PRIVATE_KEY_PATH の代わりに ASA_PRIVATE_KEY を使用し、PEMコンテンツを改行の \n 付きで貼り付けます:

"ASA_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\nMIGH...your-key...\n-----END PRIVATE KEY-----"

ツール

カテゴリ

件数

できること

組織

3

組織の一覧表示と切り替え。ユーザー詳細の取得。

キャンペーン

6

キャンペーンの一覧、作成、更新、削除。パフォーマンスレポートの取得。

広告グループ

6

キャンペーン内の広告グループを管理。広告グループレポートの取得。

キーワード

11

ターゲットキーワードとマイナスキーワードの追加/削除。入札額の更新。キーワードレポート。

検索語句

1

広告タップ前にユーザーが検索した実際のクエリを確認。

広告

7

広告の一覧、作成、更新、削除。広告レポートと却下理由の取得。

クリエイティブ

5

クリエイティブとプロダクトページの管理。

予算オーダー

4

予算オーダーの作成、更新、一覧、詳細取得。

アプリと地域

5

対象アプリの検索、対象確認、アセット検索、地域検索。

地域パフォーマンス

1

国/地域別のパフォーマンス内訳。

インプレッションシェア

3

カスタムインプレッションシェアレポートの作成、一覧、取得。

最適化

2

キャンペーンスナップショットと予算消化率の分析。

全54ツール

Category

Tools

組織

list_organizations, switch_organization, get_me_details

キャンペーン

list_campaigns, get_campaign_details, create_campaign, update_campaign, delete_campaign, get_campaign_report

広告グループ

list_ad_groups, get_ad_group, create_ad_group, update_ad_group, delete_ad_group, get_adgroup_report

キーワード

get_keyword_report, list_targeting_keywords, get_targeting_keyword, add_targeting_keywords, update_targeting_keywords, delete_targeting_keywords, list_negative_keywords, get_negative_keyword, add_negative_keywords, update_negative_keywords, delete_negative_keywords

検索語句

get_search_term_report

広告

list_ads, get_ad, create_ad, update_ad, delete_ad, get_ad_report, find_ad_rejection_reasons

クリエイティブ

list_creatives, get_creative, create_creative, list_product_pages, get_product_page_by_id

予算注文

list_budget_orders, get_budget_order, create_budget_order, update_budget_order

アプリと地域

search_apps, get_app_details, get_app_eligibility, find_app_assets, search_geolocations

地域パフォーマンス

get_geo_performance

インプレッションシェア

create_impression_share_report, get_impression_share_report_by_id, list_impression_share_reports

最適化

get_campaign_snapshot, get_budget_analysis


リソース

サーバーは3つのリソースを公開しています:

URI

説明

apple-ads://countries

Apple Search Ads でサポートされている国と地域

apple-ads://device-sizes

クリエイティブアセット用のアプリプレビューのデバイスサイズ

apple-ads://metrics-glossary

すべてのレポート指標(CPA、CPT、TTRなど)の定義、計算式、ベンチマーク


プロンプト

一般的なタスクをガイドする6つの組み込みワークフロープロンプト:

プロンプト

説明

campaign_health_check

包括的なキャンペーン分析 — 支出、コンバージョン、CPAトレンドを確認し、問題を指摘します

keyword_optimization

キーワードと検索語句の最適化ワークフロー — 無駄な支出と新しい機会を発見します

new_campaign_setup

ガイド付きの新規キャンペーン作成 — アプリの選択、構成、キーワード、予算を順に説明します

budget_reallocation

キャンペーン横断の予算分析 — 超過/未達の支出を特定し、予算の再配分を提案します

creative_review

クリエイティブのA/Bレビュー — 広告パフォーマンスを比較し、却下を指摘し、勝者を推奨します

geo_expansion

地域拡大の分析 — 現在の市場をランク付けし、参入すべき新しい市場を特定します


"pkcs8 must be PKCS#8 formatted string" キーの形式が正しくありません。ステップ3 の openssl pkcs8 コマンドを再実行してください。

"No organization selected" list_organizations を使用してから switch_organization を実行するか、ASA_ORG_ID を設定に追加してください。

"Token request failed (401)" clientId、teamId、keyId が Apple の API タブと一致していることを確認してください。公開キーをアップロードしたか確認してください。

"Failed to read private key" ~/... ではなく、絶対パス(例: /Users/yourname/...)を使用してください。

Server disconnects immediately 必要な認証情報が不足しています。4つすべてが必要です: ASA_CLIENT_ID、ASA_TEAM_ID、ASA_KEY_ID、ASA_PRIVATE_KEY_PATH。

git clone https://github.com/javiergalloroca/AppleAdsMCP.git
cd AppleAdsMCP
npm install
npm run build
npm start

ホットリロード: npm run dev

貢献ガイドラインについては CONTRIBUTING.md を参照してください。

ライセンス

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    MCP server that provides tools and resources for interacting with Google Ads API, enabling search, metadata retrieval, and account management through natural language.
    7
    4,099 PyPI
    1,119
    Apache 2.0
  • A
    license
    B
    quality
    D
    maintenance
    MCP server for Meta Ads providing 30 tools for account discovery, campaign management, targeting research, and insights. Designed with LLM-friendly outputs and productivity features like cloning and bulk operations.
    31
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for managing App Store Optimization: add apps, track keywords, pull health reports, spy on competitors, find keyword opportunities, and write AI copy suggestions.
    7
    MIT