Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
Search
High U
June 27, 2025
Programming
0
230
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
High U
June 27, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
大規模Cloud Native環境におけるFalcoの運用
owlinux1000
0
190
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
2
580
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
450
JETLS.jl ─ A New Language Server for Julia
abap34
2
450
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
120
Grafana:建立系統全知視角的捷徑
blueswen
0
200
Go コードベースの構成と AI コンテキスト定義
andpad
0
140
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
160
バックエンドエンジニアによる Amebaブログ K8s 基盤への CronJobの導入・運用経験
sunabig
0
170
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
190
Cell-Based Architecture
larchanjo
0
140
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
120
Featured
See All Featured
Done Done
chrislema
186
16k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
38
Why Our Code Smells
bkeepers
PRO
340
57k
AI: The stuff that nobody shows you
jnunemaker
PRO
1
17
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
170
How to Talk to Developers About Accessibility
jct
1
85
It's Worth the Effort
3n
187
29k
First, design no harm
axbom
PRO
1
1.1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
110
Producing Creativity
orderedlist
PRO
348
40k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
100
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