apple-ads-mcp
AIにこんなことを聞いてみましょう:
「先週のキャンペーンのパフォーマンスはどうだった?」 「ブランドキャンペーンを一時停止して、ディスカバリーの予算を500ドルに増やして。」 「どの検索語句が広告を表示している? 良いものを完全一致キーワードとして追加して。」
54のツール、3つのリソース、6つのプロンプトに対応 — キャンペーン、広告グループ、キーワード、クリエイティブ、予算、検索語句、地域ターゲティング、インプレッションシェア、パフォーマンスレポート。
主な機能
機能 | 説明 |
キャンペーン管理 | キャンペーンと広告グループの作成、更新、一時停止、削除 |
キーワード最適化 | ターゲットキーワードとマイナスキーワードの追加/削除、入札額の更新 |
パフォーマンスレポート | 日付プリセット付きのキャンペーン、広告グループ、キーワード、広告、地域レポート |
検索語句分析 | 広告表示のきっかけとなった実際の検索クエリを確認 |
クリエイティブ管理 | 広告、クリエイティブ、プロダクトページの管理 |
予算管理 | 予算オーダーの作成と管理、消化率の分析 |
インプレッションシェア | カスタムインプレッションシェアレポートの生成と取得 |
複数組織対応 | 実行時に組織を切り替え |
クイックスタート
Appleの認証情報を取得(約10分、初回のみ)
キーペアを生成(コマンド2つ)
チャットを開始
Related MCP server: google-ads-mcp
セットアップ
ステップ1 — APIユーザーを招待
searchads.apple.com でアカウント管理者が行います。
設定 → ユーザー管理 → ユーザーを招待 に移動
APIを使用する人のメールアドレスを入力
ロールを設定:
APIアカウントマネージャー — 読み書きフルアクセス
APIアカウント読み取り専用 — 閲覧のみ
招待を送信
APIユーザーは管理者とは別のApple IDである必要があります。管理者の場合は、2つ目のApple IDを使用してください。
ステップ2 — 招待を受け入れ、認証情報をコピー
招待されたユーザーが行います。
メールの招待を受け入れ、searchads.apple.com にサインイン
設定 → API タブに移動
次の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 行を含む)をコピーし、次の手順を実行:
searchads.apple.com の設定 → API タブに移動
公開鍵フィールドに貼り付け
保存
ステップ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次の環境変数を設定します:
変数 | 説明 |
| クライアントID( |
| チームID( |
| キーID(UUID) |
| PKCS#8秘密鍵の絶対パス |
| (任意) デフォルトで使用する組織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 |
組織 |
|
キャンペーン |
|
広告グループ |
|
キーワード |
|
検索語句 |
|
広告 |
|
クリエイティブ |
|
予算注文 |
|
アプリと地域 |
|
地域パフォーマンス |
|
インプレッションシェア |
|
最適化 |
|
リソース
サーバーは3つのリソースを公開しています:
URI | 説明 |
| Apple Search Ads でサポートされている国と地域 |
| クリエイティブアセット用のアプリプレビューのデバイスサイズ |
| すべてのレポート指標(CPA、CPT、TTRなど)の定義、計算式、ベンチマーク |
プロンプト
一般的なタスクをガイドする6つの組み込みワークフロープロンプト:
プロンプト | 説明 |
| 包括的なキャンペーン分析 — 支出、コンバージョン、CPAトレンドを確認し、問題を指摘します |
| キーワードと検索語句の最適化ワークフロー — 無駄な支出と新しい機会を発見します |
| ガイド付きの新規キャンペーン作成 — アプリの選択、構成、キーワード、予算を順に説明します |
| キャンペーン横断の予算分析 — 超過/未達の支出を特定し、予算の再配分を提案します |
| クリエイティブのA/Bレビュー — 広告パフォーマンスを比較し、却下を指摘し、勝者を推奨します |
| 地域拡大の分析 — 現在の市場をランク付けし、参入すべき新しい市場を特定します |
"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
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 Servers
- AlicenseBqualityDmaintenanceMCP server exposing the full Apple Ads (Search Ads) Campaign Management API v5 — 74 typed tools742010MIT

google-ads-mcpofficial
AlicenseNot gradedqualityBmaintenanceMCP server that provides tools and resources for interacting with Google Ads API, enabling search, metadata retrieval, and account management through natural language.865Apache 2.0- FlicenseNot gradedqualityDmaintenanceA comprehensive MCP server for managing and analyzing Meta Ads (Facebook/Instagram) with over 80 natural-language tools for AI agents like Claude Desktop.
- AlicenseNot gradedqualityDmaintenanceMCP 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.1MIT
Related MCP Connectors
MCP server for Appcircle mobile CI/CD platform.
Create App Store screenshots, icons, ASO copy, localization, and revisions via hosted MCP.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
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/Happygallo/apple-ads-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server