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
Ruby で始める自作 MCP サーバー入門
Search
katakyo
April 18, 2025
0
270
Ruby で始める自作 MCP サーバー入門
https://connpass.com/event/349617/
LT資料です
katakyo
April 18, 2025
Tweet
Share
More Decks by katakyo
See All by katakyo
Ruby4.0でリリースされるNameSpaceの機能を整理する
katakyo
3
370
Kaigi on RailsでKaigi Effectを得た話
katakyo
0
17
もう並列実行は怖くない ~コネクション枯渇解消のための実践的アプローチ~
katakyo
3
5.4k
Codex CLIに入門してみる
katakyo
0
24
Claude Codeを使いこなすための実践Tips集
katakyo
1
310
マイベストのREST APIをGraphQLに置き換えた話
katakyo
0
180
ジュニアエンジニアから脱却するために業務以外で意識していること
katakyo
1
280
新卒エンジニアの半期の振り返り
katakyo
0
1.3k
Featured
See All Featured
Code Review Best Practice
trishagee
72
19k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Docker and Python
trallard
46
3.7k
GraphQLとの向き合い方2022年版
quramy
49
14k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Music & Morning Musume
bryan
46
7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Transcript
Rubyで始める 自作 MCP サーバー入門 Kyohei Katada (@katakyo_51) update Apr 18,
2025
⽚⽥ 恭平 Katada Kyohei Backend Engineer 23卒でマイベストのバックエンドエンジニアとして⼊社 よく触る技術: Ruby on Rails,
GraphQL, Next.js 趣味: サウナ、開発、ダーツ、ゲーム、漫画 画像 はじめに
RubyKaigi 2025 お疲れ様でした!!
今回マイベストからは 13 名が現地参加しました! はじめに 今年はPlatinum Sponsorとして参加
はじめに 印象に残ったセッション
はじめに Matzのkeynote
Rubyの⽣成AI周辺ツールを 盛り上げていきましょうということで...
今⽇のLTテーマは MCPサーバーです!
MCPサーバーについて 画像
みなさんはMCPサーバーって知っていますか?🤚
MCPサーバーについて 世はMCP時代!!
MCPサーバーについて 世はMCP時代!! 最近のzennのトレンド 上位のほとんどがMCP 関連の記事
MCPサーバーとは? MCPサーバーの概要 MCP(Model Context Protocol) LLMアプリと外部サービスを連携するための統⼀されたインターフェース
MCPサーバーとは? MCPサーバーの概要 メリット • LLM側: 外部サービスとの連携内容を容易に理解できる。 • 開発者側: API実装の詳細を隠蔽化し、開発効率を向上できる。 •
セキュリティ: 厳格なアクセス制御を JSONで定義できる。
None
MCPサーバーとは? MCPサーバーの3つの機能 MCPは複数の制御層からなるフレームワーク 1. Prompts(ユーザー制御) 事前定義された対話テンプレートです。LLMとのやり取りをガイドする 2. Resources(アプリケーション制御) モデルに追加コンテキストを与える構造化データ 3.
Tools(モデル制御) 副作⽤のある操作や外部 API コールを実⾏できる
MCPサーバーとRuby 画像
MCPサーバーとは? mcp-rb funwarioisii⽒が作成した SinatraライクなDSLでMCPサーバーを作 れるGem これでrubyでMCPサーバーを作れます!
MCPサーバーとは? mcp-rb https://zenn.dev/funwarioisii/articles/8af78b25fad89b
MCPサーバーとは? mcp-rb libの実装をみてみると、現在 1. Resource 2. ResourceTemplate 3. Tool の3つのDSLが使えるらしい🧐
Rubyなので記述量も少なくて楽 楽しい!
mcp-rbを使ってAPIを叩く 画像
mcp-rbを使ってAPIを叩く 今回のデモ 無料で叩けるPokeAPIというものを使います ドキュメントはこちら ⽬標: ClaudeやCursorからpokeAPIを叩いてポケモン情報を取得すること
mcp-rbを使ってAPIを叩く Resource Templateを作成する
mcp-rbを使ってAPIを叩く Resourceを作成する
mcp-rbを使ってAPIを叩く Toolを作成する
mcp-rbを使ってAPIを叩く Toolを作成する 画像を⽣成する際にChat上にURLを 載せても画像がうまく表⽰できない ため、今回のデモコードではBase64 に変換して、ClaudeのArtifactで表 ⽰できるようにしています!
mcp-rbを使ってAPIを叩く MCPサーバーを起動(Claude) Claude Desktopの claude_desktop_config.jsonに設定ファイ ルを記述します! 詳しくはこちら
Claudeでデモ
ClaudeのArtifactでは、 ReactでDOMが⽣成されるので こんな感じの出⼒ができます mcp-rbを使ってAPIを叩く MCPサーバーを起動(Claude)
まとめ 画像
• RubyでもMCPサーバーは作れるし、作るのは簡単! • ⽣成 AI と Ruby は相性が良いので、⽣成 AI 関連の
OSS を⼀緒に盛り上げましょう! • 今回作ったコードはこちらです https://github.com/katakyo/poke_api_mcp_rb まとめ
ありがとうございました!