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
180
Ruby で始める自作 MCP サーバー入門
https://connpass.com/event/349617/
LT資料です
katakyo
April 18, 2025
Tweet
Share
More Decks by katakyo
See All by katakyo
Claude Codeを使いこなすための実践Tips集
katakyo
1
230
マイベストのREST APIをGraphQLに置き換えた話
katakyo
0
170
ジュニアエンジニアから脱却するために業務以外で意識していること
katakyo
1
250
新卒エンジニアの半期の振り返り
katakyo
0
1.3k
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Building an army of robots
kneath
306
45k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
332
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
How STYLIGHT went responsive
nonsquared
100
5.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Testing 201, or: Great Expectations
jmmastey
44
7.6k
Mobile First: as difficult as doing things right
swwweet
223
9.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Writing Fast Ruby
sferik
628
62k
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 まとめ
ありがとうございました!