概要
https://github.com/jasonjmcghee/WebMCP
詳細内容
## WebMCP: ウェブサイトがクライアントサイドLLMをサポートするための提案とコード
https://github.com/jasonjmcghee/WebMCP
**Original Title**: WebMCP: A proposal and code for websites to support client side LLMs
WebMCPは、ウェブサイトがクライアントサイドLLMと直接連携し、ツールやリソースを提供可能にする新しいプロトコルと実装を提案する。
**Content Type**: ⚙️ Tools
**Language**: en
**Scores**: Signal:5/5 | Depth:4/5 | Unique:5/5 | Practical:5/5 | Anti-Hype:4/5
**Main Journal**: 94/100 | **Annex Potential**: 93/100 | **Overall**: 92/100
**Topics**: [[Client-Side LLMs, Web Integration, Agent Tools, Local Development Server, Websockets]]
WebMCPは、ウェブサイトがクライアントサイドLLM(大規模言語モデル)と直接連携し、ウェブサイト自身がLLMに対してツール、リソース、プロンプトなどを提供できる仕組みを提唱・実装する画期的なオープンソースプロジェクトです。これは、APIキーの共有なしに、ユーザーが任意のモデルを用いてウェブサイトとLLMを接続できる点が特徴です。
このアプローチの核となるのは、ウェブサイト運営者がページに埋め込むシンプルなウィジェット(webmcp.js)です。これにより、ユーザーは自分のローカル環境で動作するLLMを、ウェブサイトが提供する機能(ツール)と安全に連携させることが可能になります。例えば、LLMがウェブサイト上で商品の検索フィルターを操作したり、特定のデータを入力したり、問い合わせフォームを自動入力したりといった、より高度なインタラクションが実現できます。
技術的には、WebMCPはLLMクライアントとウェブサイト間のブリッジとして、ローカルホスト専用のWebSocketサーバーを使用します。ウェブサイトへの接続は、LLMが生成する使い捨ての登録トークンを介して行われ、セッション確立後はウェブサイトに独自のセッショントークンが発行されます。これにより、複数のウェブサイトとLLMが同時に安全に連携し、LLMがウェブサイト上の特定のツールを実行したり、情報を受け取ったりすることが可能になります。LLMクライアントからは、ウェブサイトが提供するツールがドメインプレフィックス付きで統一されたリストとして表示されます。
ウェブアプリケーションエンジニアにとって、これはユーザー体験を根本的に変える可能性を秘めています。LLMがウェブサイトの文脈を理解し、その場で提供されるAPI(ツール)を直接利用することで、より高度でパーソナライズされたエージェント駆動型インタラクションを構築するための道を開きます。これにより、単なるテキスト生成を超えた、ウェブサイトと深く統合されたAIアシスタントの実現に貢献します。プロジェクトはまだ初期段階であり、特にプロンプトインジェクション攻撃などに対するセキュリティ強化に注力しており、開発者からの貢献も歓迎されています。