node-red-mcp-server
Provides tools to manage Node-RED flows, nodes, settings, and runtime state, enabling language models to interact with and control Node-RED instances programmatically.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@node-red-mcp-servertrigger the inject node named 'Start'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
node-red-mcp-server
Model Context Protocol (MCP) server for Node-RED — allows language models (like Claude, GPT) to interact with Node-RED through a standardized API.
Description
node-red-mcp-server creates a bridge between language models and the Node-RED platform, providing tools to manage flows, nodes, and settings via the MCP (Model Context Protocol). This enables language models to automate and control Node-RED flows programmatically.
Key Features
Retrieve and update Node-RED flows via MCP
Manage tabs and individual nodes
Search for nodes by type or properties
Access settings and runtime state
Trigger inject nodes remotely
Output and visualize flows and stats
Installation
Global Installation
npm install -g node-red-mcp-serverLocal Installation
npm install node-red-mcp-serverUsage
Command Line
node-red-mcp-server --url http://localhost:1880 --token YOUR_TOKENConfiguration via .env
Create a .env file:
NODE_RED_URL=http://localhost:1880
NODE_RED_TOKEN=YOUR_TOKENThen run:
node-red-mcp-serverIntegration with Claude or Other LLMs
Start the MCP server or configure Claude Desktop to start it automatically with the tool configuration below.
Configure Claude Desktop:
Open Claude Desktop app
Go to Settings → Advanced → Tool Configuration
Add a new tool configuration. You can use
npxto run the server without manual installation. This is often the easiest way to get started:
{ "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" } } }Ensure
NODE_RED_URLpoints to your Node-RED instance.Set
NODE_RED_TOKENif your Node-RED instance requires authentication.
Alternatively, if you have installed the server globally or locally and know the path to the script, you can configure it like this:
{ "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" } } }Replace
/path/to/node-red-mcp-serverwith the actual path to your installationUpdate
NODE_RED_URLto point to your Node-RED instanceSet
NODE_RED_TOKENif your Node-RED instance requires authentication
After configuration, Claude can interact with your Node-RED instance through the MCP tools.
For more information about the Model Context Protocol, visit the official MCP documentation.
Programmatic Usage
import { createServer } from 'node-red-mcp-server';
const server = createServer({
nodeRedUrl: 'http://localhost:1880',
nodeRedToken: 'YOUR_TOKEN',
verbose: true
});
await server.start();Configuration Options
CLI Parameters
Parameter | Short | Description |
|
| Node-RED base URL |
|
| API access token |
|
| Enable verbose logging |
|
| Show help |
|
| Show version number |
Environment Variables
Variable | Description |
| URL of your Node-RED instance |
| API access token |
MCP Tools
Flow Tools
get-flows— Get all flowsupdate-flows— Update all flowsget-flow— Get a specific flow by IDupdate-flow— Update a specific flow by IDlist-tabs— List all tabs (workspaces)create-flow— Create a new flow tabdelete-flow— Delete a flow tabget-flows-state— Get deployment stateset-flows-state— Change deployment stateget-flows-formatted— Get human-readable flow listvisualize-flows— Generate graph-like view of flows
Node Tools
inject— Trigger an inject nodeget-nodes— List available node typesget-node-info— Detailed info about a node moduletoggle-node-module— Enable/disable a node modulefind-nodes-by-type— Locate nodes by typesearch-nodes— Find nodes by name or property
Settings Tools
get-settings— Get Node-RED runtime settingsget-diagnostics— Fetch diagnostics info
Utility Tools
api-help— Show Node-RED API help
Requirements
Node.js v16 or newer
A running Node-RED instance with HTTP API access
License
MIT License
Copyright (c) 2023
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/karavaev-evgeniy/node-red-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server