node-red-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Fallback port, overridden by MCP_SERVER_PORT | 3001 |
| NODE_RED_URL | No | Base URL of the Node-RED Admin API | http://localhost:1880 |
| NODE_RED_TOKEN | No | Bearer token for API auth (takes precedence over NODE_RED_ACCESS_TOKEN) | |
| MCP_SERVER_PORT | No | HTTP server port for HTTP transports (default: 3001 for SSE, 3002 for streamable HTTP) | 3001 |
| NODE_RED_PASSWORD | No | Password for password-based auth | |
| NODE_RED_USERNAME | No | Username for password-based auth | |
| NODE_REGISTRY_PATH | No | File path for persistent Node Registry | ./node-registry.json |
| NODE_RED_ACCESS_TOKEN | No | Alternative name for the bearer token |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": true,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| node-red-auth-get-schemeA | Inspect the active Node-RED admin auth scheme |
| node-red-auth-loginC | Exchange Node-RED credentials for a bearer token |
| node-red-auth-revokeC | Revoke a Node-RED bearer token |
| node-red-runtime-get-settingsB | Read Node-RED runtime settings |
| node-red-runtime-get-diagnosticsB | Read Node-RED runtime diagnostics |
| node-red-runtime-get-flow-stateB | Read runtime flow state |
| node-red-runtime-set-flow-stateC | Update runtime flow state |
| node-red-debug-listenC | Capture Node-RED debug messages via WebSocket for a specified duration |
| node-red-flows-listB | List active flow tabs and metadata from Node-RED |
| node-red-flows-getB | Get a single flow tab by id or label |
| node-red-flows-createC | Create a new flow tab in Node-RED |
| node-red-flows-updateC | Replace a flow tab with a new document |
| node-red-flows-patchC | Apply JSON patch operations to a flow tab |
| node-red-flows-deleteC | Delete a flow tab from Node-RED |
| node-red-flows-cloneC | Clone an existing flow tab |
| node-red-flows-rollbackC | Rollback a flow tab to a previous snapshot |
| node-red-injectB | Trigger an inject node by its ID. Optionally capture debug output. |
| node-red-flows-add-nodeA | Add a single node to an existing flow tab. Auto-generates ID if omitted, validates wire targets, and positions the new node. |
| node-red-flows-remove-nodeA | Remove a single node from a flow tab. Cleans up wire references from all remaining nodes. |
| node-red-flows-update-nodeA | Update specific properties of a single node in a flow tab. Deep-merges the provided properties onto the existing node. |
| node-red-flows-rewire-nodeA | Replace wire connections for a specific node in a flow tab. Validates all target IDs exist in the flow. |
| node-red-flows-move-nodeA | Move a single node to a specific visual position (x, y) within a flow tab. |
| node-red-graph-analyzeA | Analyze topology, dependencies, and graph health for a flow or all flows |
| node-red-graph-summaryC | Return a compact semantic summary for a flow or the whole runtime |
| node-red-graph-exportC | Export the full flow graph (raw or normalized) |
| node-red-graph-dependenciesC | Resolve upstream and downstream dependencies for a node |
| node-red-graph-visualizeC | Generate a readable graph topology view |
| node-red-graph-queryB | Semantic search across node names, types, labels, and properties |
| node-red-graph-packC | Return a compact context pack with semantic search and neighborhood expansion |
| node-red-nodes-listB | List installed node modules and node sets in Node-RED |
| node-red-nodes-installC | Install a node module in Node-RED |
| node-red-nodes-get-moduleC | Inspect a node module's details |
| node-red-nodes-toggle-moduleC | Enable or disable a node module |
| node-red-nodes-remove-moduleC | Remove a node module from Node-RED |
| node-red-nodes-get-setB | Inspect a specific node set within a module |
| node-red-nodes-toggle-setC | Enable or disable a node set within a module |
| node-red-nodes-resolveA | Look up node IDs by name, type, or description using the node registry. Returns matching nodes with their IDs, types, and flow context. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyze-flow | Analyze a Node-RED flow for risks, dependencies, and graph structure |
| repair-flow | Draft a repair plan for invalid or broken flow wiring |
| refactor-flow | Suggest a graph-aware refactor plan for a Node-RED flow |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Runtime Settings | |
| Runtime Diagnostics | |
| Active Flows | |
| Installed Nodes | |
| Graph Snapshot | |
| Node Registry |
TDQS
Scored across 37 tools
Each tool belongs to a clearly prefixed category (auth, runtime, debug, flows, graph, nodes) and performs a distinct operation. No two tools have overlapping purposes.
All tools follow the consistent pattern 'node-red-{category}-{action}' using snake_case. There is no deviation or mixing of styles, making the naming predictable and easy to understand.
With 37 tools, the count is on the higher side but justified by the complexity of Node-RED. Each tool covers a specific aspect of management, and the organization into categories prevents overwhelming the user.
The toolset provides comprehensive coverage for Node-RED administration, including authentication, runtime inspection, flow CRUD and node manipulation, graph analysis, and node module management. No significant gaps are apparent.