返回市场
红节点MCP服务器

红节点MCP服务器

作者:karavaev-evgeniy20 星标更新:2025-07-09

项目介绍

npm 版本 npm 下载量 GitHub 许可证

node-red-mcp-server

Node-RED 的 Model Context Protocol (MCP) 服务器——允许语言模型(如 Claude、GPT)通过标准化 API 与 Node-RED 进行交互。

描述

node-red-mcp-server 在语言模型和 Node-RED 平台之间创建了一个桥梁,提供了通过 MCP(模型上下文协议)管理流、节点和设置的工具。这使得语言模型能够通过编程方式自动化和控制 Node-RED 流程。

主要特性

  • 通过 MCP 获取和更新 Node-RED 流程
  • 管理标签页和单个节点
  • 按类型或属性搜索节点
  • 访问设置和运行时状态
  • 远程触发注入节点
  • 输出和可视化流程及统计信息

安装

全局安装

npm install -g node-red-mcp-server

局部安装

npm install node-red-m

使用方法

命令行

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 或其他 LLM 集成

  1. 启动 MCP 服务器或配置 Claude Desktop 自动启动它,使用下面的工具配置。

  2. 配置 Claude Desktop:

    • 打开 Claude Desktop 应用程序
    • 转到 设置 → 高级 → 工具配置
    • 添加一个新的工具配置。您可以使用 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"
          // 您可以在这里添加其他 CLI 参数,例如 "--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
  3. 配置完成后,Claude 可以通过 MCP 工具与您的 Node-RED 实例进行交互。

有关 Model Context Protocol 的更多信息,请访问 官方 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-uNode-RED 基础 URL
--token-tAPI 访问令牌
--verbose-v启用详细日志
--help-h显示帮助信息
--version-V显示版本号

环境变量

变量描述
NODE_RED_URL您的 Node-RED 实例的 URL
NODE_RED_TOKENAPI 访问令牌

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 — 触发注入节点
  • 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

特此免费授予任何人获得该软件及其相关文档文件副本的权利(以下简称“软件”),在不受限制的情况下处理软件,包括但不限于以下权利:使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许接收软件的人这样做,但须遵守以下条件:

上述版权声明和本许可通知应包含在软件的所有副本或实质部分中。

软件按“原样”提供,不附带任何形式的保证,无论是明示的还是默示的,包括但不限于对适销性、特定用途适用性和非侵权性的保证。在任何情况下,作者或版权持有人都不对因软件或其使用或其他交易引起的任何索赔、损害或其他责任承担任何责任,无论是在合同行为、侵权行为还是其他行为中。