Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MCP開発のリアル_Machine Learning 15minutes!
Search
小島舞子 / Maiko Kojima
September 01, 2025
Programming
1
84
MCP開発のリアル_Machine Learning 15minutes!
第104回 Machine Learning 15minutes! Hybridで登壇したスライドです
小島舞子 / Maiko Kojima
September 01, 2025
Tweet
Share
More Decks by 小島舞子 / Maiko Kojima
See All by 小島舞子 / Maiko Kojima
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
920
Other Decks in Programming
See All in Programming
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
630
高速開発のためのコード整理術
sutetotanuki
1
410
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
180
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
並行開発のためのコードレビュー
miyukiw
0
1.2k
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
生成AIを使ったコードレビューで定性的に品質カバー
chiilog
1
280
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
6
680
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
CSC307 Lecture 10
javiergs
PRO
1
660
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The SEO identity crisis: Don't let AI make you average
varn
0
330
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Visualization
eitanlees
150
17k
Mind Mapping
helmedeiros
PRO
0
90
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
世界を自動化して人生に楽しさと自由を
株式会社クラフター(旧:チャットブック)代表取締役 iU情報経営イノベーション専門職大学 客員教授 一般社団法人生成AI活用普及協会(GUGA)協議員 一般社団法人Women AI Initiative Japan理事 NPO法人Waffle ビジネス開発講座 指南役 Newspicks 法人向けAIのプロピッカー
Forbes Japan Women in Tech 30選出 早稲田大学在学中の 2010年にスタートアップを共同創業し、副代表兼 CTOと して30本以上のiOS /Androidアプリを開発。累計500万人超のユーザーに利 用される。2016年に株式会社クラフターを設立。マーケティング特化型チャッ トボット「CraftChat」を開発し、300社以上の法人に導入。 2022年7月、同社を マネックスグループへ売却。 2023年6月には、社内資料を安全に参照できる 企業向け生成AIプラットフォーム「Crew(クルー)」をリリース。 『企業競争力を高めるための生成 AIの教科書』出版(Gakken) 趣味:読書(図書館)、海外旅行、オーケストラ鑑賞 自己紹介:小島舞子 maikokojima
© 2025 Crafter, Inc. All rights reserved. MCPとは?
© 2025 Crafter, Inc. All rights reserved.
© 2025 Crafter, Inc. All rights reserved. 発端:Crew上からMCPサーバと接続したい! • Crewは、法人・自治体が安全に生成AIの利用を支援
• 長野県、箕面市、他複数の自治体・企業に導入
© 2025 Crafter, Inc. All rights reserved. Before:Function Callingで個別実装 Function
Callingの問題点: • サービスごとに定義・管理がバラバラ ◦ 例えばNotion、Asana、Slackなど、呼び出すたびに個別の関数定義を書き、認証やエラー ハンドリングを繰り返す。 • 運用の手間があった ◦ 仕様変更やAPIアップデートがあると、それぞれの関数呼び出しコードを修正する必要があ る。 ◦ 認証トークンやセキュリティ設定もサービスごとに別管理。
© 2025 Crafter, Inc. All rights reserved.
© 2025 Crafter, Inc. All rights reserved. 理想:MCPサーバと接続して簡単呼び出し! • MCPサーバ=APIを公式で実装してくれているようなもの
◦ すべての外部サービスを「 MCPサーバー」として定義でき、クライアントからは統一インター フェースで呼び出せる。 ◦ つまり「Notion専用関数」「Asana専用関数」といった実装が不要になる。 • 一元的な認証とセキュリティ ◦ IAMやOAuthなど、サーバー側に共通の認証・権限管理を組み込める。 ◦ ログや利用履歴もMCPサーバーでまとめて監査できる。 • 拡張と保守が容易 ◦ 新しいサービスを追加したい時は、 MCPサーバーを1つ立てればOK。 ◦ クライアント側のコード変更は最小限で済む。 • 複数クライアント対応 ◦ ClaudeやCursor、自社開発のクライアントなど、異なるクライアントから同じ MCPサーバー を利用可能。 ◦ つまり「API連携の窓口」を共通化できる。
© 2025 Crafter, Inc. All rights reserved. しかし、現実は甘くない …
© 2025 Crafter, Inc. All rights reserved. 問題①:公式 MCPサーバーがノラ接続を許可していない 例:Asana
公式のMCPサーバーを提供しているが、 RemoteでOAuth認証するにはAllowlistしか許されていない 連携したいホストは、 Allowlist Requestを送る必要がある ※現在許されているのは CursorとClaudeのみ →超高難易度ゲーム (「無理ゲーを丁寧に言って」と伝えた Crew版表現)
© 2025 Crafter, Inc. All rights reserved. 問題②:詳細なアクセス権限の管理が難しい • ユーザーがMCPサーバーからコールしたデータを取得する際、各ユーザーで細かく権限分けす
ることができない • 組織の情報は取得できるが、それ以外の Metadataの取得と内包が難しい
© 2025 Crafter, Inc. All rights reserved. 解決方法: MCP全体を自社ホストでカスタマイズしよう
© 2025 Crafter, Inc. All rights reserved. Crew MCP Overview
Chat Output Authentication
© 2025 Crafter, Inc. All rights reserved. Crew MCP Overview
© 2025 Crafter, Inc. All rights reserved. 実装前の基本!
© 2025 Crafter, Inc. All rights reserved. MCPクライアントのライフサイクル概要 • Connection
Establishment ◦ MCPクライアントがサーバーへ接続( stdio、HTTP、WebSocketなど) ◦ 双方で機能やプロトコルバージョンを確認・交渉 • Capability Discovery ◦ クライアントがサーバーに利用可能なリソースやツール、プロンプトを問い合わせ ◦ サーバーの提供機能を把握 • Active Communication ◦ クライアントがリソース取得、ツール実行、プロンプト利用などのリクエストを送信 ◦ サーバーがデータ返却や処理を実行 • Resource Management ◦ セッション中にリソースの更新通知を受信 ◦ 永続的な状態や認証トークンの管理 • Graceful Termination ◦ セッション終了時に接続を適切にクローズ ◦ 双方でリソース解放やデータ整合性を確保 https://modelcontextprotocol.io/specification/2025-03-26/basic/lifecycle
© 2025 Crafter, Inc. All rights reserved. MCPクライアントとサーバのホスティング • 通信方法
◦ Stdio ▪ サブプロセスとして起動し、標準入力 /標準出力で通信 ▪ デスクトップアプリ向きだが、クラウド運用には不向き ◦ Streamable HTTP ▪ HTTP経由で通信 ▪ DockerやAWS Lambdaなどサービスとして稼働可能 • 運用方法 ◦ Dockerコンテナ ▪ MCPサーバーごとにDockerイメージを作成 ▪ ローカル/開発環境に適する ▪ 応答速度が速い ◦ AWS Lambda ▪ SAMを使ってデプロイ、Lambda Web AdapterでHTTPサーバー化 ▪ Function URLがストリーミング対応済み ▪ 高いスケーラビリティと低運用コスト
© 2025 Crafter, Inc. All rights reserved. MCPクライアントを 0から作るよりも フレームワークがあるよ!
© 2025 Crafter, Inc. All rights reserved. MCPクライアントのフレームワーク • LangChain
MCP Adapters ◦ LangChainやLangGraphでMCPツールを簡単に利用可能にする公式パッケージ ◦ 複数のMCPサーバーからツールを取得し、エージェントに統合 ◦ 例:計算サーバーや天気サーバーなど、用途ごとにサーバーを分けて接続 • OpenAI Agents SDK with MCP ◦ OpenAI公式のエージェントSDKはMCPをネイティブサポート ◦ MCPサーバーのツールを自動で取得し、エージェントに組み込み ◦ Web検索やコード実行、画像生成などの組み込みツールとも連携可能 ◦ liteLLMを使えば他社LLMも利用可能
© 2025 Crafter, Inc. All rights reserved. 今後やらなきゃいけなさそうなこと • Authentication
◦ OAuth対応、スコープやアクセス権の管理 • Admin Function ◦ MCPサーバー連携時により多くの情報をメタデータに追加する ◦ 追跡や監査ログ • Multi-Server Flow ◦ 複数のMCPサーバーと連動してワークフローを組む ◦ エラーハンドリング対応
© 2025 Crafter, Inc. All rights reserved. まとめ • 公式MCPサーバーはほとんど全てがPoC中!
• 困ったらMCPライフサイクル概要を読むべし! • 便利なフレームワークを使おう • 『企業競争力を高めるための生成AIの教科書』 8月7日刊行!本を買ってね! https://amzn.asia/d/9mZuJzo