Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
WebMCP ってなんですか?
Search
kazuhiro hara
September 17, 2026
Programming
73
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
WebMCP ってなんですか?
エンガワ AI x XR 第3回で発表したスライドです
kazuhiro hara
September 17, 2026
More Decks by kazuhiro hara
See All by kazuhiro hara
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
210
空間アプリ開発のフィードバックをCodexにするための抽象的なデザインツールの模索
karad
0
220
Exploring Abstract Design Tools to Turn Spatial App Feedback into Codex (En)
karad
0
78
visionOS 開発向けの MCP / Skills をつくり続けることで XR の探究と学習を最大化
karad
2
1.9k
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
310
Vapor を使って VisionPro とWebSocket 通信をしてみる
karad
0
430
slow types ってなんだろう?
karad
1
880
ほぼ日のハッカソン Team 1 発表資料
karad
0
590
Dist.43.英語仕事で地味につかうChatGPT 配布版
karad
0
850
Other Decks in Programming
See All in Programming
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.1k
Kubernetes祭り #2 OP/ED
bells17
0
100
速く作れる。その次は、速く確かめられる開発へ 〜AIネイティブ開発を支える、Shift Down〜 / Can build fast. Next, moving to development where we can verify fast.
rkaga
8
5.5k
動作中のプログラムの中身をリアルタイムに覗く / Realtime Debugger for CSharp with Roslyn
prota
1
1.8k
R8 の設定見直しでアプリサイズ削減
andpad
0
190
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
390
AIに “答え“を書かせるのを やめてみた
___akari11
0
110
ソニーのクラウド共通基盤の変遷とAI時代の開発スタイルに合わせた進化 / The Journey of Sony’s Common Cloud Platform and Its Evolution for AI-Native Development
kenjiyoneyama
0
240
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
140
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
2
3k
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2k
Featured
See All Featured
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
450
Navigating Weather and Climate Data
rabernat
0
550
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
Writing Fast Ruby
sferik
630
63k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
540
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
The SEO identity crisis: Don't let AI make you average
varn
0
580
GraphQLとの向き合い方2022年版
quramy
50
15k
Are puppies a ranking factor?
jonoalderson
2
4k
Being A Developer After 40
akosma
91
590k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
Transcript
WebMCP ってなんですか カンソクインダストリーズ / よりひろいフロントエンド 原 一浩 (Kazuhiro Hara) /
@kara_d AI + XR Hack #3 @本八幡 Copyright © 2026 Yorihiroi Frontend.
出演 原 一浩 (Kazuhiro Hara) @kara_d カンソクインダストリーズ 代表 よりひろいフロントエンド 主催
エンガワ AI x XR主催 生粋の OpenAI ファン (課金開始時より個人で 課金) visionOS + Codex CLI / App の自律的コーディングを補助する MCP / Skills
構成 • • • WebMCP のキホン : WebMCP ってなんなの しくみ
: AI との通信で何がおきているのか 実装 : どうやると実現できるのか
WebMCPのキホン
WebMCP の図
WebMCP とは Webページの機能を、AI が呼び出せる形で公開するウェブ標準 • • • 公開する操作を「Tool」と呼ぶ 商品検索やカートへの追加など、サイトの機能を用意できる 人と
AI が、同じ Web アプリを使って作業できる 2026年9月時点では策定中の仕様
商品検索の例 利用者の依頼 「このサイトでカメラを探して」 サイトが公開する Tool search_products AI が渡す入力 { "query":
"camera" } サイトが返す結果 商品の名前・価格・URLなど
画面操作と Tool 画面を操作する場合 検索欄やボタンを見つけ、 入力してクリックする 操作ミスする可能性もある Tool を使う場合 「商品を検索する」という機能に、 検索語を渡す
Web アプリ側が、操作の名前・目的・入力形式を明示できる。
仕事につながる? 1. 2. 3. 4. これから人類はもっと AI を通じてインターネットをするでしょう Web のアクセシビリティは高いですが
WebMCP でもっと高くできます ほとんどの Web サイトは WebMCP に対応してません 仕事がいっぱいうまれる可能性あり?!
しくみ
WebMCP の登場人物 Webページ 使ってほしい機能を Tool として登録し、 処理を実装する ブラウザ Tool の情報を仲介し、
ページ内の処理を呼び出す AI (エージェント ) 利用者の依頼に応じて Tool と入力を選び、結果を使う
Toolが動くまで 1. 2. 3. 4. 5. 6. Webページが Tool を定義する
registerTool() でブラウザへ登録する ブラウザが AI に Tool の情報を伝える AI が Tool と入力を選ぶ ブラウザがページの execute() を呼ぶ 処理の結果を AI へ返す
MCPとの違い • MCP:AI アプリと MCP サーバーを接続 ◦ ◦ • Tool
はサーバーやローカルプロセスで実行する。 通信方法として stdio や Streamable HTTP を定める。 WebMCP:Web ページがブラウザへ Tool を公開 ◦ ◦ Tool はページ内の JavaScript で実行する。 表示中のページや既存のログイン状態を利用できる。
WebMCP が定める範囲 Web ページとブラウザの間の API を定める。 • • • 入口は
document.modelContext Tool の登録と実行に必要なインターフェースを提供する ブラウザから AI へどう伝えるかは、実装に委ねる MCP の stdio や Streamable HTTP に相当する通信方式は定めない。
実装
実装方法は 2つ • Imperative API:JavaScriptで登録する ◦ ◦ • 入力形式と execute()
を自分で定義する 独自の処理や既存のアプリの機能を公開しやすい Declarative API:HTMLフォームに属性を付ける ◦ ◦ フォーム名や入力項目からブラウザが Tool の情報を作る 既存のフォームを活用したい場合に使える
Declarative API の例 フォームの入力項目を、Tool の引数として使う。 <form toolname="search_products" tooldescription="Search products by
keyword" action="/search"> <label for="query">Keyword</label> <input id="query" name="query" required> <button type="submit">Search</button> </form> Chrome の実装例。仕様 Draft の詳細は引き続き策定中。
Imperative API : Tool を構成する 4要素 JavaScript で登録する Tool の基本形
• • • • name:Tool を識別する名前 description:何をする Tool かの説明 inputSchema:受け取る入力の形式 execute:呼び出されたときに動く処理
JavaScript で Tool を登録 await document.modelContext.registerTool({ name: "search_products", description: "Search
products by keyword", inputSchema: { type: "object", properties: { query: { type: "string" } }, required: ["query"] }, execute: async ({ query }, { signal }) => { return await searchProducts(query, signal); } });
既存の検索処理につなぐ execute()から、アプリ側の関数や API を呼び出す。 async function searchProducts(query, signal) { const
params = new URLSearchParams({ query }); const response = await fetch(`/api/products?${params}`, { signal }); if (!response.ok) throw new Error("Search failed"); return await response.json(); }
動作確認のポイント • • • • 対応環境で Tool が登録され、AI から見つかるか 入力を渡すと、期待する結果を返すか
通信失敗や不正な入力を適切に扱えるか セキュリティは問題ないか、AI へのインジェクションがないか
便利ツールがあります • • Chrome Dev Tools に 内蔵のもの Chrome 拡張機能
参考資料 WebMCP Draft:API全体とブラウザの役割 Chrome Imperative API:JavaScriptでの登録 Chrome Declarative API:HTMLフォームでの公開 MCP
Transports:stdioとStreamable HTTP WebMCP - Model Context Tool Inspector
なにからはじめる? • まずは、情報を返すだけの Tool をつくってみる ◦ • 次は何かしらの処理を行う Tool を試してみる
◦ • 固定の情報を返すとか 診断や占いをしてみるとか 続いて、 ◦ ◦ ◦ ◦ 情報を保存してみる 画面の表示を変えてみる 認証系を試してみる etc...
まとめ • • • • WebMCPは、Webページの機能を AI 向けに公開できます ブラウザを通じて、AI が
Web ページの Tool を実行します JavaScriptで登録する方法と、HTMLフォームを使う方法があります 既存のアプリの処理を活かして、小さな Tool から導入できます