Google AdSense について
Google AdSenseは、AdSense Management API v2を通じてアカウント、広告在庫、ポリシー、レポートを参照する読み取り専用MCPサーバーです。AdSense情報を必要とするエージェント向けで、構造化JSONを返します。
主な機能
- 01AdSenseデータの読み取り専用アクセス
- 02アカウント、支払い、アラートの照会
- 03サイトと広告在庫の確認
- 04ポリシー問題と広告コードの取得
- 05保存済み・任意レポートの生成
- 06リソースのページネーション
活用シーン
- 01アカウント状況と収益の支払いを確認
- 02広告ユニットと広告コードを調査
- 03サイトのポリシー問題を確認
- 04日付と国別の収益レポートを生成
MCP 対応
MCPサーバーはstdio経由で、読み取り専用OAuthスコープを使うAdSense Management API v2のツールをクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @sirmacke/adsense-mcpADSENSE_ACCESS_TOKENシークレットOptional short-lived OAuth access token.ADSENSE_CLIENT_IDOAuth desktop client ID. Required when not using an access token.ADSENSE_CLIENT_SECRETシークレットOAuth desktop client secret. Required when not using an access token.ADSENSE_REFRESH_TOKENシークレットOAuth refresh token. Required when not using an access token.ADSENSE_ACCOUNTOptional AdSense account resource name. The first accessible account is used when omitted.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
26掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| pageSize | integer | いいえ | 返すリソースの最大数。 |
| pageToken | string | いいえ | 次のページを取得するための、前回のレスポンスのトークン。 |
詳細
AdSense MCP
AdSense Management API v2(アカウント、支払い、アラート、ポリシーに関する問題、サイト、インベントリ、広告コード、保存済みレポートやアドホックレポート)への読み取り専用アクセスを提供する MCP サーバーです。
サーバーは読み取り専用の https://www.googleapis.com/auth/adsense.readonly OAuth スコープを使用します。AdSense アカウントへの書き込みは行いません。
インストール
公開後は、MCP クライアントから npx -y @sirmacke/adsense-mcp を実行します。ADSENSE_ACCESS_TOKEN、または ADSENSE_CLIENT_ID、ADSENSE_CLIENT_SECRET、ADSENSE_REFRESH_TOKEN の3つすべてを設定してください。
セキュリティ
OAuth アクセストークン、リフレッシュトークン、クライアントシークレットは認証情報です。これらをこのリポジトリ、イシュートラッカー、シェル履歴、他者と共有する MCP 設定に含めないでください。いずれかが漏えいした場合は、直ちに Google Cloud で取り消してください。詳しくは SECURITY.md を参照してください。
セットアップ
- Google Cloud で AdSense Management API を有効にし、OAuth デスクトップクライアントを作成します。
https://www.googleapis.com/auth/adsense.readonlyスコープが許可されたリフレッシュトークンを取得します。秘密に保管してください。.env.exampleを安全な環境設定にコピーし、ADSENSE_ACCESS_TOKENまたは OAuth クライアント ID、シークレット、リフレッシュトークンを設定します。- インストールしてビルドします。
npm install
npm run build
1回限りの OAuth 認証(gcloud を使わない場合)
Google Cloud から OAuth Desktop クライアントの JSON をダウンロードし、次を実行します。
$env:ADSENSE_OAUTH_CLIENT_FILE = "C:\secure\adsense-client.json"
$env:ADSENSE_TOKEN_FILE = "C:\secure\adsense-oauth.json"
npm run authorize
このコマンドは localhost コールバックで Google の同意画面を開き、クライアント ID、クライアントシークレット、リフレッシュトークンをプライベートなトークンファイルにのみ保存します。これらの値を MCP 設定の ADSENSE_CLIENT_ID、ADSENSE_CLIENT_SECRET、ADSENSE_REFRESH_TOKEN の各フィールドにコピーしてください。External 同意画面を Testing のままにしないでください。リフレッシュトークンは7日後に期限切れになります。
Claude Desktop
現在の Claude Desktop ビルドでは拡張機能を使用します。npm run package を実行し、設定 → 拡張機能 → 詳細設定 → 拡張機能をインストールから build/adsense-mcp.mcpb をインストールしてください。OAuth 値を安全に入力するよう求められます。従来の設定に対応しているインストール環境では、代わりに次を追加してください。
{
"mcpServers": {
"adsense": {
"command": "node",
"args": ["/absolute/path/to/adsense-mcp/dist/index.js"],
"env": {
"ADSENSE_CLIENT_ID": "...",
"ADSENSE_CLIENT_SECRET": "...",
"ADSENSE_REFRESH_TOKEN": "..."
}
}
}
}
Codex
同じコマンド、引数、環境変数を使って、同等のサーバー定義を Codex の MCP 設定に追加してください。このサーバーは標準の MCP stdio トランスポートを使用し、どちらのクライアントでも動作します。
ツール
アカウントとアカウントのステータス
adsense_list_accountsadsense_get_accountadsense_list_child_accountsadsense_list_paymentsadsense_list_alertsadsense_get_ad_blocking_recovery_tagadsense_list_policy_issuesadsense_get_policy_issueadsense_list_sitesadsense_get_site
インベントリ
adsense_list_ad_clientsadsense_get_ad_clientadsense_get_ad_client_ad_codeadsense_list_ad_unitsadsense_get_ad_unitadsense_get_ad_unit_ad_codeadsense_list_linked_custom_channelsadsense_list_url_channelsadsense_get_url_channeladsense_list_custom_channelsadsense_get_custom_channeladsense_list_linked_ad_units
レポート
adsense_list_saved_reportsadsense_get_saved_reportadsense_generate_saved_reportadsense_generate_report
アカウントレベルのツールでは、account を省略すると、設定済みまたは最初にアクセス可能なアカウントが検出されます。ページネーションに対応するリストツールは pageSize と pageToken を受け付けます。続きから取得するには、返された nextPageToken を渡してください。リソース固有のツールには、対応するリストツールから返される正式な名前を渡してください。
adsense_list_payments は、支払い済みと未払いの収益を返します。これには書式設定済みの金額と、支払い済みの収益については入金日が含まれます。AdSense API では銀行口座や支払い方法の詳細は取得できません。
レポートリクエストの例:metrics: ["ESTIMATED_EARNINGS", "PAGE_VIEWS", "CLICKS"]、dimensions: ["DATE", "COUNTRY_NAME"]、dateRange: "LAST_7_DAYS"、orderBy: ["-ESTIMATED_EARNINGS"]。
サーバーは構造化 JSON を返します。API にある CSV レポート用の重複メソッドは意図的に省略しています。CSV が必要な場合、エージェントが構造化されたレスポンスを変換できます。
検証
npm test
npm run build
ライブ検証にも、上記の OAuth 値と AdSense アカウントが必要です。公開されているすべてのエンドポイントは、AdSense の読み取り専用 OAuth スコープを受け付けます。
リリース
リリースは npm と公式 MCP Registry の両方に公開されます。Registry には server.json の検出用メタデータが保存され、インストール可能なサーバー自体は npm を通じて配布されます。
package.json、package-lock.json、server.json(npm パッケージのエントリを含む)、mcpb/manifest.json、およびsrc/index.ts内の MCP サーバーのバージョンを一貫して更新します。npm testとnpm pack --dry-runを実行して、ビルドと公開パッケージの内容を検証します。- リリースを GitHub にコミットしてプッシュします。
- 公開スコープ付きパッケージを
npm publish --access publicで公開します。 - 必要に応じて
mcp-publisher login githubで認証し、次にmcp-publisher publishを実行して、対応するバージョンのserver.jsonを公開します。
Registry の検証では、参照先の公開パッケージバージョンが存在している必要があるため、MCP Registry より先に npm に公開してください。公開済みのバージョンは変更できないため、修正するには新しいバージョンが必要です。
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。