
Nr Mcp
io.github.Texan-NXTassist由 GitHub 账号 Texan-NXTassist 发布v1.2.2更新于 Oct 25, 2026
MCP server for Node-RED — safe deploy, optimistic locking, smart search, 13 tools
概览
本地 MCP 服务器,让 AI 助手读取、搜索、编辑并安全部署 Node-RED 流程,触发 inject 节点并管理已安装模块。
- 可以做什么
- 读取流程概览、单个标签页、含上下游连接的节点配置、函数代码和流程级上下文变量,并读取流程上下文中的调试输出。按名称、类型或 JavaScript 代码内容搜索节点。批量创建和删除节点与组,并自动清理连线和分组。通过完整的 GET 到 POST 流程写入并基于 rev 字段做乐观锁来部署更改,从而保留标签页顺序。远程触发 inject 节点以测试流程。列出已安装模块和可用节点类型,并从 Node-RED 注册表安装 npm 包。
- 适用场景
- 适合管理 Node-RED 安装(如家庭自动化、物联网或能源管理)时使用,让助手检查流程、修改函数代码、增删节点、测试流程和安装模块,而无需手动编辑编辑器。当其他人也可能同时部署时,安全部署与冲突检测尤为重要。
- 运行要求
- 以 Python 包(nr-mcp)通过 pip 或 uv 在本地运行,需要 Python 3.11+ 以及启用 Admin API 的 Node-RED 实例。配置 NR_URL(默认 NR_TOKEN 用于 Bearer 认证,或 NR_USER 与 NR_PASS 用于 Basic Auth;按此顺序尝试认证。需要能访问 Node-RED Admin API 的网络。
安装
在 SourceWeft 中
- 打开 控制台中的 Nr Mcp,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
nr-mcp
A Model Context Protocol (MCP) server that lets AI assistants interact with Node-RED — read flows, search nodes, edit function code, deploy changes safely, and manage modules.
Built to solve real problems: the existing Node-RED MCP implementations use PUT /flow/:id which reorders your tabs. nr-mcp uses the correct GET → POST /flows pattern with optimistic locking, so your tab order is always preserved.
Features
13 tools for complete Node-RED flow management:
Why not just use the existing MCP servers?
- Tab reorder bug: Other implementations use
PUT /flow/:idwhich silently reorders your tabs in Node-RED. nr-mcp uses the correctGET → POST /flowsfull-deploy pattern. - Optimistic locking: Every deploy checks the
revfield. If someone else deployed between your read and write, you get a clear conflict error instead of silent data loss. - Smart search: Search across node names, types, function code, templates, and actions in one call.
- Production-tested: Built and used daily for managing complex Node-RED installations (home automation, IoT, energy management).
Installation
Prerequisites
Install from PyPI
Install with uv (recommended)
Or from source:
This creates the nr-mcp command in ~/.local/bin/.
Configuration
Environment variables
* At least one auth method is recommended. Auth is checked in order: token → basic auth → no auth.
Claude Desktop
Add to your claude_desktop_config.json:
Tip: If you get a "working directory" error, create a wrapper script:
Then point
commandto the wrapper path.
Cursor / VS Code
Add to your MCP settings (.cursor/mcp.json or VS Code equivalent):
Usage examples
Once connected, you can ask your AI assistant things like:
- "Show me all Node-RED tabs and their node counts"
- "Search for nodes that contain 'mqtt' in their code"
- "Show me the function code for node abc123"
- "Update the function code in node xyz to add error handling"
- "Create an inject node and an HTTP request node on the Weather tab"
- "What modules are installed? Is node-red-dashboard available?"
- "Install node-red-contrib-influxdb"
- "Trigger the 'Test' inject node and check for errors"
Architecture
nr-mcp is a Python MCP server that communicates with Node-RED via its Admin API. It uses stdio transport (standard for MCP) and makes HTTP calls to your Node-RED instance.
Key design decisions
- GET→POST pattern: All deploys fetch full flows, modify in-place, then POST back. Never uses
PUT /flow/:idwhich reorders tabs. - Optimistic locking: Uses the Node-RED
revfield to detect concurrent modifications. - No caching: Every tool call fetches fresh data. Slightly slower, but always correct.
- Single retry on conflict: Deploy operations retry once on 409 Conflict.
For more details, see docs/ARCHITECTURE.md.
Node-RED setup
The Admin API must be enabled (it is by default). If you've restricted it, ensure these endpoints are accessible:
GET /flowsandPOST /flows— flow read/writeGET /context/flow/:id— flow contextPOST /inject/:id— inject triggerGET /nodesandPOST /nodes— module management
See Node-RED Admin API docs for auth configuration.
Contributing
Contributions welcome! Please open an issue first to discuss what you'd like to change.
License
MIT — see LICENSE.
来源:README.md,提交 3580418
工具
0版本历史
1- v1.2.2最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分