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
82
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
900
Other Decks in Programming
See All in Programming
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
3
1.8k
Fragmented Architectures
denyspoltorak
0
110
CSC307 Lecture 01
javiergs
PRO
0
670
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
170
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
210
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
130
Vibe Coding - AI 驅動的軟體開發
mickyp100
0
120
rack-attack gemによるリクエスト制限の失敗と学び
pndcat
0
220
AIエージェントの設計で注意するべきポイント6選
har1101
6
3.2k
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
180
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
370
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
940
Featured
See All Featured
The agentic SEO stack - context over prompts
schlessera
0
590
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.5k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
96
How to build a perfect <img>
jonoalderson
1
4.8k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
36
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Skip the Path - Find Your Career Trail
mkilby
0
44
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Navigating Team Friction
lara
191
16k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
110
Agile that works and the tools we love
rasmusluckow
331
21k
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