認証が必要な場面
公開操作(認証不要)
探索や評価のため、以下は認証なしで利用できます:get_adcp_capabilities- エージェントの機能、ポートフォリオ、対応機能の取得list_creative_formats- 利用可能なクリエイティブ形式の閲覧get_products- 在庫の探索(認証なしでは結果が限定)
get_products は以下のように制限される場合があります:
- 一部のカタログ(標準商品)のみ
- 価格情報や CPM の非表示
- カスタム商品なし
- 汎用的なフォーマット対応のみ
認証が必要な操作
以下の操作には有効な認証情報が必要です:get_products(full access) - Complete catalog with pricing and custom productscreate_media_buy- Create advertising campaignsupdate_media_buy- Modify existing campaignssync_creatives- Upload creative assetslist_creatives- View your creative libraryget_media_buy_delivery- Monitor campaign performance and metricsprovide_performance_feedback- Submit optimization signals
認証方式
AdCP は MCP 仕様に沿った Bearer トークン認証を使用します:- Opaque tokens: サーバーで検証されるプリンシパル紐づけ文字列
- JWT tokens: クレームを含む自己完結型トークン
JWT のクレーム
When using JWT tokens, include these standard claims:プリンシパルモデル
プロトコル設定
MCP と A2A は共通の認証ヘッダーを使用します。クライアントを次のように設定します:Authorization: Bearer <token> ヘッダーの付与を処理します。
MCP クライアントの設定
MCP プロトコルでは、認証は HTTP ヘッダーの手動付与ではなくトランスポート層で処理されます。MCP クライアントライブラリの利用
The recommended approach is to use an MCP client library:よくある誤り: 生の HTTP ヘッダー追加
生の HTTP リクエストに認証ヘッダーを付けようとするのは誤りです:認証トラブルシュート
“authentication required” が出る場合:- MCP クライアントライブラリを使っているか確認 - 生の HTTP 呼び出しをしていないか
- トークンの渡し方を確認 - トランスポート設定に渡しているか
- 公開テストエージェントで試験 - カスタムエージェント前に動作確認
- プロトコルバージョンを確認 - クライアントとサーバーの互換性を確保
認証情報の取得
アカウント開設フロー
認証が必要な操作を行うには、各 sales agent とのアカウント開設が必要です:- Sales agent を特定: パブリッシャーの
adagents.jsonから発見 - 営業窓口に連絡: エージェントの営業/提携チームに問い合わせ
- オンボーディング: 企業情報の提供、契約締結、課金設定
- 認証情報を受領: API キーまたは OAuth クライアント資格情報を取得
動的クライアント登録(オプション)
Some sales agents support OAuth 2.0 dynamic client registration:adagents.json を確認してください。
アグリゲーションプラットフォーム
複数の sales agent との認証情報や関係を一括管理するアグリゲーションプラットフォーム(例: Scope3)の利用を検討してください。これにより次が簡素化されます:- 認証情報管理
- 金銭的なやり取り
- 契約手続き
- コンプライアンス監視
エラーレスポンス
保護された操作への未認証リクエスト
無効または期限切れの認証情報
権限不足
ベストプラクティス
- 安全な保管: 環境変数やシークレットマネージャーで保護
- ローテーション: 認証情報のローテーションポリシーを実装
- スコープ最小化: 必要最小限の権限のみ要求
- トークン更新: JWT の自動リフレッシュを実装
- Error Handling: Handle authentication errors gracefully with retry logic