关于 node-red-mcp-server
node-red-mcp-server 是一个为 Node-RED 提供的 MCP 服务,使语言模型能够通过标准化接口管理 flow、节点和设置。适合希望用 Claude 等模型自动化控制 Node-RED 流程的用户。
主要功能
- 01读取与更新 flow 及标签页
- 02查询与切换节点模块
- 03按类型或属性搜索节点
- 04查看设置、诊断与运行状态
- 05远程触发 inject 节点
适用场景
- 01让语言模型读取并修改 Node-RED 流程
- 02通过模型远程触发 inject 节点
- 03查看 flow 状态与运行统计信息
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
node-red-mcp-server
Node-RED 的模型上下文协议(MCP)服务,可让语言模型(如 Claude、GPT)通过标准化 API 与 Node-RED 交互。
描述
node-red-mcp-server 在语言模型与 Node-RED 平台之间搭建桥梁,通过 MCP(模型上下文协议)提供管理流程、节点和设置的工具。这样,语言模型便能以编程方式自动化并控制 Node-RED 流程。
主要功能
- 通过 MCP 获取和更新 Node-RED 流程
- 管理选项卡和单个节点
- 按类型或属性搜索节点
- 访问设置和运行时状态
- 远程触发 inject 节点
- 输出并可视化流程和统计信息
安装
全局安装
npm install -g node-red-mcp-server
本地安装
npm install node-red-mcp-server
使用方法
命令行
node-red-mcp-server --url http://localhost:1880 --token YOUR_TOKEN
通过 .env 配置
创建一个 .env 文件:
NODE_RED_URL=http://localhost:1880
NODE_RED_TOKEN=YOUR_TOKEN
然后运行:
node-red-mcp-server
与 Claude 或其他大模型集成
-
启动 MCP 服务,或使用下面的工具配置,让 Claude Desktop 自动启动该服务。
-
配置 Claude Desktop:
- 打开 Claude Desktop 桌面应用
- 前往 Settings → Advanced → Tool Configuration
- 添加新的工具配置。你可以使用
npx运行服务,无需手动安装。这通常是最快捷的入门方式:
{ "node-red": { "command": "npx", "args": [ "node-red-mcp-server" ], "env": { "NODE_RED_URL": "http://your-node-red-url:1880", "NODE_RED_TOKEN": "your-token-if-needed" } } }- 确保
NODE_RED_URL指向你的 Node-RED 实例。 - 如果你的 Node-RED 实例需要身份验证,请设置
NODE_RED_TOKEN。
或者,如果你已在全局或本地安装该服务,并且知道脚本路径,可以按如下方式配置:
{ "node-red": { "command": "node", "args": [ "/path/to/node-red-mcp-server/bin/node-red-mcp-server.mjs" // You can add other CLI arguments here, e.g., "--verbose" ], "env": { "NODE_RED_URL": "http://your-node-red-url:1880", "NODE_RED_TOKEN": "your-token-if-needed", "MCP_SERVER_PORT": "3000" } } }- 将
/path/to/node-red-mcp-server替换为实际的安装路径 - 更新
NODE_RED_URL,使其指向你的 Node-RED 实例 - 如果你的 Node-RED 实例需要身份验证,请设置
NODE_RED_TOKEN
-
配置完成后,Claude 就可以通过 MCP 工具与你的 Node-RED 实例交互。
有关模型上下文协议的更多信息,请访问 MCP 官方文档。
编程方式使用
import { createServer } from 'node-red-mcp-server';
const server = createServer({
nodeRedUrl: 'http://localhost:1880',
nodeRedToken: 'YOUR_TOKEN',
verbose: true
});
await server.start();
配置选项
CLI 参数
| 参数 | 简写 | 描述 |
|---|---|---|
--url | -u | Node-RED 基础 URL |
--token | -t | API 访问令牌 |
--verbose | -v | 启用详细日志记录 |
--help | -h | 显示帮助 |
--version | -V | 显示版本号 |
环境变量
| 变量 | 描述 |
|---|---|
NODE_RED_URL | 你的 Node-RED 实例的 URL |
NODE_RED_TOKEN | API 访问令牌 |
MCP 工具
流程工具
get-flows— 获取所有流程update-flows— 更新所有流程get-flow— 按 ID 获取指定流程update-flow— 按 ID 更新指定流程list-tabs— 列出所有选项卡(工作区)create-flow— 创建新的流程选项卡delete-flow— 删除流程选项卡get-flows-state— 获取部署状态set-flows-state— 更改部署状态get-flows-formatted— 获取易读的流程列表visualize-flows— 生成流程的图形化视图
节点工具
inject— 触发 inject 节点get-nodes— 列出可用的节点类型get-node-info— 获取节点模块的详细信息toggle-node-module— 启用/禁用节点模块find-nodes-by-type— 按类型查找节点search-nodes— 按名称或属性查找节点
设置工具
get-settings— 获取 Node-RED 运行时设置get-diagnostics— 获取诊断信息
实用工具
api-help— 显示 Node-RED API 帮助
要求
- Node.js v16 或更高版本
- 正在运行且可通过 HTTP API 访问的 Node-RED 实例
许可证
MIT 许可证
版权所有 (c) 2023
特此免费授予任何获得本软件及相关文档文件(以下简称“软件”)副本的人,不受限制地处理本软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售本软件副本的权利,并允许获得本软件的人这样做,但须符合以下条件:
上述版权声明和本许可声明应包含在本软件的所有副本或实质性部分中。
本软件按“原样”提供,不提供任何明示或暗示的担保,包括但不限于适销性、特定用途适用性和非侵权性的担保。在任何情况下,作者或版权持有人均不对因本软件或本软件的使用或其他交易而产生的任何索赔、损害或其他责任承担责任,无论是合同、侵权还是其他诉讼。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。