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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kanayannet
September 20, 2025
Programming
170
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
110
厳密な定義
kanayannet
0
120
Mcp Training
kanayannet
0
250
無関心の谷
kanayannet
0
1.3k
生成AIの使いどころ
kanayannet
0
270
github copilot と 心理的安全性
kanayannet
0
290
FW と ライブラリ の考え方
kanayannet
0
280
TDDと今まで
kanayannet
0
730
個人開発 稼げなくてもいいアプリ
kanayannet
0
620
Other Decks in Programming
See All in Programming
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
180
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
1
2k
AI駆動開発にグラフDBを重ねてみた
satoshi256kbyte
0
340
源内ハンズオン概要編
hideg
0
220
ハーネス設計入門 〜プロンプト、コンテキストの次〜
kinopeee
28
17k
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
2
240
VibeCodingからAgenticWorkflowへ
starfish719
0
930
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
2
450
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
740
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
170
【QA Test Talk Vol.8】AI-DLC による Whole Team Approach の加速
pkshadeck
PRO
0
250
Featured
See All Featured
How to build a perfect <img>
jonoalderson
1
5.9k
From π to Pie charts
rasagy
0
330
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
GitHub's CSS Performance
jonrohan
1033
470k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Tell your own story through comics
letsgokoyo
1
1k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.6k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
430
What's in a price? How to price your products and services
michaelherold
247
13k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
560
Mind Mapping
helmedeiros
PRO
1
340
Test your architecture with Archunit
thirion
2
2.4k
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 を駆使したウィルスが流行りそうな嫌な予感 他社サービスとの連携はまた今度...
ご清聴ありがとうございました!