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
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
High U
June 27, 2025
Programming
300
0
Share
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
High U
June 27, 2025
Other Decks in Programming
See All in Programming
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
2.1k
ビジネスモデルから紐解く、AI+型駆動開発
hirokiomote
1
490
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
250
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
1
130
AgentCore Optimizationを始めよう!
licux
3
260
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
400
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
24
13k
継続的な負荷検証を目指して
pyama86
3
1.2k
Agent Skills を社内で育てる仕組み作り
jackchuka
1
2.1k
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.9k
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
120
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
1
220
Featured
See All Featured
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
800
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
Skip the Path - Find Your Career Trail
mkilby
1
120
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
530
We Have a Design System, Now What?
morganepeng
55
8.1k
How to make the Groovebox
asonas
2
2.2k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
120
ラッコキーワード サービス紹介資料
rakko
1
3.3M
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
190
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
700
WENDY [Excerpt]
tessaabrams
10
37k
Transcript
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた ➔ 2025-06-28@
[email protected]
1/22
自己紹介 ➔ 株式会社ウフル 樋口友太 ➔ かつては、Node を作ったり、公式の Git 対応前に Git
で扱いやすくする仕組みを作ったり、 フローのテスト手法など考えたり。 ➔ ここしばらくは、Node-RED から離れていて、LLM と連携させたくなり、再挑戦。 2/22
なんで Node-RED と MCP サーバーを連携させたかったのか ➔ SNS で “n8n で
AI エージェント” 的な話が飛び交う程の n8n (https://n8n.io/) の盛り上がり。 ➔ オレには Node-RED がある!と意気込むも、めぼしい情報は得られず。 ➔ 時を同じくして、MCP サーバー界隈の盛り上がりと、わたし自身の MCP サーバー体験があり、 一旦、AI エージェント自身は置いておいて、LLM と Node-RED をつなげよう!的な。 3/22
気軽に連携したかった ➔ RESTish でつなぐ(HTTP API でゆるく) Node-RED Claude Desktop (例)
MCP Server MCP (STDIO) RESTish 4/22
作成した MCP サーバーのトランスポート対応 ➔ STDIO(標準入出力) ➔ Streamable HTTP(/sse + /messages)
➔ Streamable HTTP(/mcp) 5/22
作成した MCP サーバーの役割 ➔ Node-RED(HTTP API)を LLM からアクセス可能にするためのブリッジ役 ➔ Node-RED
からツール定義を取得し、MCP ツールとして Node-RED 上の機能(HTTP エンドポイント) を登録 6/22
MCP サーバーのソースコード(抜粋) ➔ `/tools` でツール情報を読み込む ➔ ツール情報に従って HTTP リクエストを作成 ➔
ツールに登録 7/22
MCP サーバーのインストール(例) ➔ AUTH_TYPE、API_KEY は Node-RED のフローの エンドポイントで認証する場合のみ 8/22
Node-RED のフロー(例) 9/22
Node-RED の必須エンドポイント ➔ [get] /tools ➔ ツールの定義をレスポンス 10/22
ツール定義(例) ➔ 各ツールのエンドポイントを定義 11/22
ツール処理(例) ➔ [get_time] JSONata で日時取得 ➔ [get_birthday] JS で誕生日生成 ➔
[create_qrcode] QR コード生成ノードで DataURI 生成 ➔ [get_weather] 気象庁の REST API で天気予報取得 ➔ [post_slack] メッセージを Slack API で投稿 レスポンスデータは、どこにも定義していないが、 それっぽい JSON を返せば LLM が解釈する 12/22
デモ動画 ➔ https://www.youtube.com/watch?v=Pyq_GhnydMk 13/22
14/22
公開中 ➔ 良かったら見てください ➔ @high-u/mcp-server-bridge-restish 15/22
作成した MCP サーバーの話はここまで 16/22
OpenAPI 仕様書から MCP サーバーの生成 ➔ OpenAPI 仕様書から専用の MCP サーバーを生成するツールの紹介 ➔
OpenAPI 仕様書ベースなので現在のエコシステムとの相性は良い ➔ そもそも Node-RED と OpenAPI 仕様書の相性が良いかは? ➔ HTTP でブリッジする MCP サーバーという似た位置付けということで 17/22
Postman AI Tool Builder ➔ OpenAPI 仕様から MCP サーバーを生成 ➔
ただし、公開が必須?? 18/22
harsha-iiiv/openapi-mcp-generator ➔ OpenAPI 仕様書から MCP サーバーを生成 (TypeScript) ➔ MCP server
(stdio)、 MCP web server with SSE、 MCP StreamableHTTP server に対応 19/22
Node-RED と MCP の理想の関係は?(主観) 20/22
MCP Server Node ➔ `/mcp` エンドポイントを生やす ➔ 認証認可を良い感じに内包?連携? MCP Server
21/22
ありがとうございました 22/22