Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AdGate for WebMCP

Avatar for Haruki Kondo Haruki Kondo
September 13, 2026
8

AdGate for WebMCP

2026年9月17日(木)に開催されたBrave MeetupでのLT用のスライドです。

Avatar for Haruki Kondo

Haruki Kondo

September 13, 2026

More Decks by Haruki Kondo

Transcript

  1. 2

  2. 今日話すこと(10分) 1. WebMCP の概要 2. OpenAI WebMCP Challenge とは 3.

    作った作品 AdGate の概要 4. 実際に作って わかったこと キーワードは「人がアクセスの主導権を握ったまま、AIに任せる」 3
  3. WebMCPの仕組み // ページ側であらかじめツールを宣言しておく document.modelContext.registerTool({ name: "analyze_recipe", description: "レシピを解析し、栄養メモや代替案を返す", inputSchema: {

    /* Zodなどでスキーマを定義 */ }, async execute(input, { signal }) { // 実行前に人の確認ゲートを挟むこともできる return await gateCoordinator.run(input, signal); }, }); navigator.modelContext へのフォールバックも用意しておくのが定石 6
  4. Challenge概要 OpenAI主催、約10日間のオンラインハッカソン 登録開始 8/25 → 提出締切 9/4 → 結果発表 9/23予定

    協賛: Google Chrome / Cloudflare / Shopify / Vercel / Render / Netlify 賞金総額 $35,000(上位10チームに各$3,000 現金 + ChatGPT Pro 1年 など) 9
  5. AdGateとは 架空のレシピサイト 「Open Table Journal」 を構築 プレミアム機能として WebMCPツール analyze_recipe を実装

    画面のボタンから使っても、エージェント経由で使っても 同じ1つのゲート を通る ゲート通過後、栄養メモ・代替案・注意書きを含む 1つの構造化結果 が返る 12
  6. 2つのアクセス方法 スポンサー広告 8秒間 の広告視聴 ウォレット不要・無料 サーバー側で視聴時間を厳密に検証 x402決済 Base Sepolia上で 0.01

    testnet USDC ウォレットで金額を確認して明示的に承認 秘密鍵はAI側に一切渡らない どちらの経路も、同じ「保護されたエンドポイント」を解放する 13
  7. システム構成 コンポーネント 役割 Frontend(React / Vite) WebMCP登録・ゲートUI・ウォレット連携 Resource Server(Hono) 認可判定・スポンサー/決済の検証・解析処理

    Facilitator(Hono / viem・任意) x402決済の検証とtestnet決済の実行 Cloudflare Durable Object でスポンサーセッションと発行済みグラントを永続化 React Vite Hono Cloudflare Workers x402 Base Sepolia 14