Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MCP で「こいつ動くぞ」
Search
kanayannet
September 20, 2025
Programming
210
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MCP で「こいつ動くぞ」
kanayannet
September 20, 2025
More Decks by kanayannet
See All by kanayannet
リファクタリング ハーネス
kanayannet
1
150
厳密な定義
kanayannet
0
170
Mcp Training
kanayannet
0
360
無関心の谷
kanayannet
0
1.4k
生成AIの使いどころ
kanayannet
0
280
github copilot と 心理的安全性
kanayannet
0
300
FW と ライブラリ の考え方
kanayannet
0
300
TDDと今まで
kanayannet
0
840
個人開発 稼げなくてもいいアプリ
kanayannet
0
630
Other Decks in Programming
See All in Programming
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
320
baseline으로 마이그레이션, 리팩토링 안전하게 맡기기
fornewid
1
880
Railsバージョンを4倍にした話
optim
0
920
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
150
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
2
260
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
2k
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
350
オーケストレーション記述言語 Katari
yukikurage
0
220
AI Augmentation Techniques with Liberty
ivargrimstad
1
360
Distance field of Julia set
kinakomoti321
0
140
はじめてのPLATEAU
nokonoko1203
1
400
エージェントを使い続けるためのメタワーク / Meta-work for keeping using the agent
rkaga
6
2.2k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
360
A designer walks into a library…
pauljervisheath
211
25k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1.1k
Building Applications with DynamoDB
mza
96
7.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Typedesign – Prime Four
hannesfritz
42
3.2k
So, you think you're a good person
axbom
PRO
2
2.2k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
320
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 を駆使したウィルスが流行りそうな嫌な予感 他社サービスとの連携はまた今度...
ご清聴ありがとうございました!