
2026/05/17 7:25
MCP はようページ
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
HybridLogic は、ユーザーが直面している摩擦(直接ブラウザ経由で Model Context Protocol (MCP) サーバーにアクセスすると、生の JSON を伴う 401 Unauthorized エラーが表示されるという混乱を引き起こす問題)を解消しました。根本的な原因は、ユーザーが MCP エンドポイントをブラウザで開こうとするのではなく、LLM クライアントに統合しようとしていた点にあります。エンジニアらは、軽量かつ「ハック的」なリダイレクトを実装し、Accept ヘッダーが text/html を示すが application/json または text/event-stream を示さない場合に GET /mcp リクエストに対して HTML ページを返すようにしました。このページは、ユーザーがブラウザで表示する代わりにサーバーを LLM クライアントに追加することを案内します。デプロイ以降、サポートチケットは大幅に減少し、顧客サクセスの満足度が向上し、統合も早まりました。この解決策には運用負荷は一切必要なく、すべてのクライアントに対してコネクタを構築することなく、MCP 仕様の制限を補完するための手動アプローチの有効性を検証しました。AI も追跡もなく Luke Lanchester が作成した HybridLogic のホームページでは、顧客がより素早く環境整備を開始できるようになり、進化している仕様と現実世界のオンボーディングの間の不満に対処しています。
本文
我社の主要な $WORK ツール向けに、MCP サーバーの提供を開始いたしました。決定論的かつ非決定論的世界が奇妙に交差するようだったため、大変面白い体験でもありました。MCP が「仕様」として極めて不適切な取り組みであったにもかかわらず、以下のような不便な問題に直面しています:顧客から引き続き、MCP サーバーが動作しないとの報告が続いております。
その理由はシンプルです。これは、開発者が雰囲気で仕様に臨むことと、実際のエンドユーザーがオンボーディングを行う現実の間にある摩擦を如実に示しています。ブラウザで mcp.acme.com/mcp を開くと、「Unauthorized」という生JSON のバLOB とともに、大きな 401 エラーが表示されます。(認証が不要な場合は、この処理を適切に調整してください。)
これは面倒です。ユーザーが開いたリンクを見てエラーに気づき、すぐに「リンクが機能しない」というサポートチケットを投入してしまうためです。しかし実際には、同様の結果を得るためには、自社の選択したクライアントにその URL を貼り付ける必要があり、誰もそこまで先を見据えていません。(わずかに不便な)解決策としては、サーバーをコネクタ/プラグインとしてパッケージ化し、市場に出回っている各 LLM クライアントごとにリリースを行うことです。これは速度が遅く、痛みを伴い、組織内で独自のクライアントを開発に取り掛かる顧客が増えるため、バクアモレ(ハッカモー)のような終わりのないゲームになっています。
そこで私がやったのは、やや抜け目のある方法ですが、要求が「GET /mcp」であり、かつ Accept ヘッダーに「text/html」が含まれている一方で、「application/json」または「text/event-stream」が含まれていない場合にのみ、ユーザーが MCP サーバーを表示しようとしている旨を説明し、そのサーバーをクライアントに追加する必要がある旨を示す HTML ページを返すことです。
これが画期的な結果をもたらしています!サポートチケットの数は急激に減少し、カスタマーサクセスチームは満足を表しており、顧客もこれまでよりも速くセットアップされるようになっています。また、「すべてのエラーが本当にエラーであるわけではない」という説明を行う必要がなくなりました。各方面で成果があり、観察可能な範囲では何の影響もなく、完璧です!
この仕様自体に、このような問題を軽減するための機能を追加できたことを願いますが、残念ながら AI の時代においてのこととはいえ、スピード重視で進めつつ、AI がバグをより速く修正することを希望的観測として置いておくしかない状況です。