Skip to main content
ステータス: CONFORMANCE_SOCKET_ENABLED の背後でプレビュー利用可能 最終更新: May 4, 2026 AdCP エージェントを構築しているとき、最も有用なループは: 進行中のサーバーに対してストーリーボードを実行し、何が失敗するかを見て、修正し、再実行する。今までそれは TLS、DNS、認証、ファイアウォール設定を伴う公開サンドボックスエンドポイントを立ち上げることを意味しました — 意味あるコードを書く前の実際の重労働で、大規模組織では非自明なセキュリティレビュー。 Socket Mode 経由で Addie とペアプログラミング はそれを次に折りたたみます: 1 つのライブラリをインストールし、トークンを貼り付け、アウトバウンドで接続する。Addie はあなたの開発エージェントを他の AdCP サーバーと同様に見ます — インバウンド公開なし、公開表面なし — そしてチャットでそれに対して任意のコンプライアンスストーリーボードを実行できます。

Socket Mode を使うとき(と使わないとき)

Socket Mode は AAO Verified の代替では ありません。エージェントが安定したら、実テストエンドポイントを公開し AAO ハートビートを継続的に実行させてください — それが公開の AAO Verified (Spec) バッジを獲得するものです。Socket Mode はそこに到達する前(そして到達後、変更を反復するとき)の開発ループチャネルです。
設計上、開発/ステージング専用。 Socket Mode は非本番デプロイにゲートされます。adcp#3986 に従い comply_test_controller と同じ制約です。本番エージェントはこのチャネルを公開せず、AAO は Socket Mode 経由で本番デプロイを決して登録しません。

必要なもの

  1. 活発に開発している AdCP MCP サーバー。 不完全でもよい — それがポイントです。最もシンプルなケースは、MCP SDK がインストールされたラップトップ上で動く JS/TS プロセスです。
  2. AAO アカウント。 コンプライアンスチャネルはあなたの WorkOS 組織にバインドされるため、メンバーまたはトライアル組織にサインインしている必要があります。Addie との匿名チャットは Socket Mode を使えません。
  3. 開発プロジェクトの @adcp/sdk ≥ 6.9ConformanceClient プリミティブは @adcp/sdk/server から出荷されます。
  4. WebSockets(ポート 443)経由での addie.agenticadvertising.org へのネットワーク egress。 インバウンドルールは不要。
それだけです。公開 DNS なし、ファイアウォール変更なし、ngrok なし、証明書プロビジョニングなし。

5 分のセットアップ

ステップ 1 — Addie にトークンを頼む

Addie チャットセッションで、尋ねます:
新しいコンフォーマンストークンをください
Addie はシェル export とコピーペースト統合スニペットを返します:
トークンは 1 時間で期限切れになります。あなたのものが切れたら、Addie に新しいものを頼むだけです — 設計上リフレッシュエンドポイントはありません。

ステップ 2 — ConformanceClient を開発サーバーに配線する

既存の AdCP サーバーブートストラップに 3 行追加:
mcpServer は通常のトラフィックのため StreamableHTTPServerTransport に接続するのと同じ Server インスタンスです — 別のセットアップなし、並列サーバーなし。ConformanceClient はそれをアウトバウンド WebSocket 上で双方向に公開します。Addie は反対側で通常の MCP サーバーを見ます。 まだ AdCP サーバーがない場合、hello_seller_adapter_social の例 をフォークしてください — SDK の createAdcpServerFromPlatform ヘルパーを使った作業済みの出発点です。

ステップ 3 — 接続を確認する

トークンと URL を export した状態で開発サーバーを実行します。ステータスラインが見えるはずです:
status=connected が着地すると、Addie はあなたの開発サーバーを指すライブ MCP クライアントを持ちます。セッションは、プロセスを停止するかトークンが期限切れになるまで開いたままです。

ステップ 4 — チャットからストーリーボードを実行する

Addie チャットに戻って:
私のエージェントに対して media_buy_state_machine を実行して
Addie は開いたソケットを通じてストーリーボードをディスパッチし、結果をチャットで markdown レポートとしてレンダリングします:
失敗するステップにはトリミングされたエラーテキストが含まれるため、チャットを離れずにその場で修正し再実行できます。グリーンになるまで反復してください。 コンプライアンスカタログ の任意のストーリーボードをこの方法で実行できます — セールス、クリエイティブ、シグナル、ガバナンス、署名付きリクエストなど。分からない場合は Addie に何が利用可能か尋ねてください: 「セールスエージェントにどのコンフォーマンスストーリーボードが適用されますか?」

接続後に Addie ができること

ストーリーボード実行を超えて、ライブ MCP チャネルは Addie に次を可能にします:
  • 失敗するステップをインタラクティブに診断 — ステップが失敗したとき「なぜ?」と尋ねると、Addie は根本原因を絞り込むため異なる入力で同じツールを再呼び出しできる
  • ケイパビリティ宣言を検証「私の get_adcp_capabilities は実際に実装するものを主張していますか?」
  • ライフサイクル状態を歩くcomply_test_controller を配線していれば、Addie は決定的状態遷移を駆動し結果を観測できる
  • 実ワイヤー出力に対して修正を提案「この拒否で error_code フィールドが欠けています — 修正はこれです」 — 一般的な助言ではなく、彼女がちょうど見たバイトに基づく

プライバシーと安全性

Socket Mode チャネルは表面を狭く保つよう構築されています:
  • 開発/ステージング専用。 本番デプロイはこのチャネルを公開してはならない — comply_test_controller と同じデプロイスコープルール(adcp#3986)。
  • あなたからのアウトバウンド。 あなたの開発ボックスが Addie への接続を開きます。Addie にはあなたのネットワークに手を伸ばす方法がありません。
  • セッションスコープ。 あなたがクライアントを起動する。プロセスを停止するまで実行される。永続的トンネルなし、デーモンなし。
  • 組織スコープ。 トークンの WorkOS 組織クレームが唯一のテナント境界です。他の組織はチャネル上であなたのエージェントに到達できません。
  • いつでも切断。 クライアントプロセスをキルするとソケットが閉じます。あなたの組織の Addie のセッションは即座に退避されます。
  • Addie が見るものはあなたの Addie コンテキストに留まる。 チャットで彼女に伝える他のものと同じデータ処理姿勢。
チャネルを自分で検査したい場合、ワイヤー形式は wss:// 上のプレーンな JSON-RPC 2.0 フレーム(MCP が既に使うのと同じ形状)です。トークンで URL に対して wscat を実行すると、Addie が見るものを正確に見られます。

トラブルシューティング

Addie が「組織にマップされていません」と言う

Addie と匿名でチャットしているか、あなたのアカウントがまだ WorkOS 組織にバインドされていません。メンバーまたはトライアル組織にサインインして再試行してください。

接続時に status=error。サーバーが 401 Unauthorized をログ

トークンが期限切れ(1h TTL)か誤ったトークン。Addie に新しいものを頼んでください。新しいトークンも 401 する場合、あなたの AAO メンバーシップがコンフォーマンスエンタイトルメントを有効にしていないかもしれません — 組織のプランを確認してください。

ストーリーボードレポートがステップ 1 を unknown tool get_adcp_capabilities で失敗と表示

あなたの開発 MCP サーバーはまだ get_adcp_capabilities を実装していません。それはすべての AdCP エージェントが公開しなければならないディスカバリーツールです。任意のストーリーボードを実行する前にそれを実装してください — レスポンス形状については get_adcp_capabilities を参照。

Addie が「あなたの組織にライブなコンフォーマンス接続がありません」と言う

ソケットが開いていません。まだクライアントを起動していないか、切断されました。ConformanceClient を再起動し、Addie に何かを実行するよう頼む前に status=connected を確認してください。

ソケットは接続するがすべてのストーリーボードステップがスキップ

あなたの get_adcp_capabilities レスポンスが、実装していない専門分野を宣言しています。ランナーは宣言された表面に一致しないステップをスキップします。ツールを実装するか宣言をトリムしてください。

Addie がチャネル上で何をしているかどう分かるか

onStatus コールバックがすべての状態遷移(connectingconnecteddisconnectederror)を公開します。開発ログにパイプしてください:
ツールレベルの可視性には、setRequestHandler コールバック内でログしてください — Addie の呼び出しは通常の MCP トラフィックとまったく同様にそこに着地します。

リファレンス