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 で「こいつ動くぞ」
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kanayannet
September 20, 2025
Programming
0
120
MCP で「こいつ動くぞ」
kanayannet
September 20, 2025
Tweet
Share
More Decks by kanayannet
See All by kanayannet
Mcp Training
kanayannet
0
130
無関心の谷
kanayannet
0
990
生成AIの使いどころ
kanayannet
0
220
github copilot と 心理的安全性
kanayannet
0
250
FW と ライブラリ の考え方
kanayannet
0
260
TDDと今まで
kanayannet
0
630
個人開発 稼げなくてもいいアプリ
kanayannet
0
570
システムの堅牢性
kanayannet
0
330
Agile的学習方法
kanayannet
0
310
Other Decks in Programming
See All in Programming
CSC307 Lecture 15
javiergs
PRO
0
210
Ruby x Terminal
a_matsuda
5
570
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
150
JPUG勉強会 OSSデータベースの内部構造を理解しよう
oga5
2
230
Claude Code、ちょっとした工夫で開発体験が変わる
tigertora7571
0
190
encoding/json/v2のUnmarshalはこう変わった:内部実装で見る設計改善
kurakura0916
0
290
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
140
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
200
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
CSC307 Lecture 10
javiergs
PRO
1
690
CSC307 Lecture 11
javiergs
PRO
0
580
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
8
2.4k
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Building the Perfect Custom Keyboard
takai
2
710
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
140
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
97
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
360
Skip the Path - Find Your Career Trail
mkilby
1
72
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
430
Embracing the Ebb and Flow
colly
88
5k
Crafting Experiences
bethany
1
75
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.1k
Transcript
MCP で「こいつ動くぞ」 Gunma.web #57
MCP? Model Context Protocol AIモデル(LLM)と外部ツールやデータソースをつなぐオープンな標準プロトコル
まるで AI の「USB-C」 by chatGPT
なぜ?やるのか? 注目されてる SoftwareDesign にも取り上げられた 新しいものが好き やってみないと...感覚で理解できないものがありそう。
重要 「やってみた」だけだと自己満足で終わりそう 動くところまで見せる 価値あるものに見せる <- これだ
まずは基本を理解 MCP クライアント:AI 側(例:Claude Desktop や他の AI アプリ)が外部サーバと通 信する MCP
サーバ:外部インターネットやデータへの接続を提供するコンポーネント 通信仕様:JSON-RPC 2.0
各個撃破 MCP クライアンド: Claude Desktop で行けそう MCP サーバ:python でやってみっか クライアント機能の有効化
を忘れずに
やり方は claude に聞く
python3.12 -m venv mcp-env source mcp-env/bin/activate pip3.12 install mcp python
で環境構築
simple_mcp_server.py https://github.com/kanayannet/practice-mcp-servers
外部連携用のjsonを編集する 設定 -> 開発者 -> 設定を編集
{ "mcpServers": { "simple-python-server": { "command": "/path/to/your/project/mcp-env/bin/python3.12", "args": ["/path/to/your/project/simple_mcp_server.py"] }
} } claude_desktop_config.json
claude を再起動 うまくいくと...python で定義したメニューが出てくる calculator: 数学計算 text_analyzer: テキスト分析 reverse_text: テキストの逆順変換
初回実行時だけ表示されます。
どんな感じか?見せます。 デモ
calculator を使って 1 + 15 - 31 の合計値の絶対値を出して text_analyzer を使って「本日は晴れなり」を分析して
reverse_text をつかってさっきの文章を逆順にして
こいつ動くぞ!
少しコードの解説をします。 vim simple_mcp_server.py
ここまでだと... 普通に「claude使えばええやん!」となるので...
NEXT!
端末を操作したい!
mcp>=0.1.0 requests>=2.31.0 pathlib script組む advanced_mcp_server.py requirements.txt pip3.12 install -r requirements.txt
{ "mcpServers": { "simple-python-server": { "command": "/path/to/your_project/mcp-env/bin/python3.12", "args": ["/path/to/your_project/simple_mcp_server.py"] },
"advanced-python-server": { "command": "/path/to/your_project/mcp-env/bin/python3.12", "args": ["/path/to/your_project/advanced_mcp_server.py"] } } } 再度設定ファイルを編集 claude_desktop_config.json
TODO 作って file_operations を使って todo.txt というファイルに今日のタスクを書き込んでください
順々にやってみよう note_manager を使って '会議メモ' というタイトルでノートを作成してください
sqlite3 mcp_workspace/notes.db .tables select * from notes;
system_info を使って現在のディスク使用量を確認してください
web_request を使って httpbin.org/ip 自分のグローバルIPを取得してください
如何でした? 自分の端末から命令可能でしたよね?
But...
最悪のパターンは 自分の端末の中にアクセス可能 自分の端末からのインターネットアクセスも... ノラの信用ならない MCP と繋いだ場合は...
セキュリティ意識重要
余談: 実は...
今回ほとんどAIに書いてもらった
が...
悪戦苦闘の足跡 venv 使って構築したのに実行path が間違えて起動しない
アクセス権がないディレクトリを平気で指定されていたり...
単純にpython SQlite のコードを間違えたり... conn じゃなくて execute の返却値を使ってよ(汗)
人が調整する必要あります(笑)
まとめ 自分で書いた処理をAIに実行してもらう事が可能 AI がある程度要約してくれるので楽ちん 命令の際に作法だったものを気にしないで良い コードを書かせる際は、AIのミスリードはあるので、それも考慮しながら...
悪用 => 今まで以上に大変(汗) AI を駆使したウィルスが流行りそうな嫌な予感 他社サービスとの連携はまた今度...
ご清聴ありがとうございました!