{"name":"io.github.Texan-NXTassist/nr-mcp","slug":"texan-nxtassist-nr-mcp","title":null,"description":"MCP server for Node-RED — safe deploy, optimistic locking, smart search, 13 tools","url":"https://mcp.market/server/texan-nxtassist-nr-mcp","rating":null,"grade":"C","score":66,"certified":false,"status":"active","category":"devtools","tags":["devtools","search"],"presence":{"score":13,"stars":1,"forks":4,"downloads_week":29,"last_push_at":"2026-03-25T22:56:09.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/Texan-NXTassist/nr-mcp","website":null,"version":"1.2.2","remotes":[],"packages":[{"registryType":"pypi","identifier":"nr-mcp","version":"1.2.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Node-RED base URL (default: http://localhost:1880)","format":"string","name":"NR_URL"},{"description":"Bearer token for Node-RED authentication","format":"string","isSecret":true,"name":"NR_TOKEN"},{"description":"Username for Basic Auth","format":"string","name":"NR_USER"},{"description":"Password for Basic Auth","format":"string","isSecret":true,"name":"NR_PASS"}]}],"tools":[{"name":"nr_create_nodes","description":"Create one or more new nodes/groups in a single deploy. Each node dict must include 'id', 'type', and 'z' (target tab ID). Groups need 'type': 'group'. Config nodes (e.g. ha-entity-config) use 'z': '' for global scope.","write_action":true,"price_micros":0,"input_schema":null},{"name":"nr_delete_nodes","description":"Delete one or more nodes by ID. Also cleans up references: removes deleted IDs from group.nodes arrays and from other nodes' wires arrays.","write_action":true,"price_micros":0,"input_schema":null},{"name":"nr_get_debug_output","description":"Read debug output from flow context. Use when a flow has a catch node that stores errors/debug data to flow context. Pass key=null to list all context keys. Trigger flow with nr_inject first, then read this.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_flow","description":"Get a single Node-RED tab with all its nodes and groups. Accepts tab name (case-insensitive) or tab ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_flow_context","description":"Read Node-RED flow context variables. Pass key=null to list all keys, or a specific key to get its value.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_flow_summary","description":"Quick overview of all Node-RED tabs with node counts and groups.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_function_code","description":"Extract full JavaScript code from a Node-RED function node.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_installed_modules","description":"List installed Node-RED modules and their node types. Optionally filter by module name or node type containing `query` string. Returns module name, version, and list of node types provided.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_get_node_config","description":"Get full node configuration including wires, upstream/downstream connections, and group membership.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_inject","description":"Trigger an inject node to fire immediately. Use nr_search_nodes to find inject nodes first. The node must be of type 'inject'.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_install_module","description":"Install a new Node-RED module (npm package) from the registry. Use nr_get_installed_modules to check what's already installed first. Installation may take 30-60 seconds.","write_action":false,"price_micros":0,"input_schema":null},{"name":"nr_safe_deploy","description":"Deploy changes to a Node-RED node with optimistic locking. Uses correct GET\\u2192POST pattern (never PUT). Preserves tab order.","write_action":true,"price_micros":0,"input_schema":null},{"name":"nr_search_nodes","description":"Search Node-RED nodes by name, type, or function code content. Searches in: name, type, func, template, action fields.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":66,"grade":"C","scanned_at":"2026-09-27T23:34:11.006Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-09-27T23:34:10.950Z","components":{"code":{"score":25,"max":25,"notes":["6 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":4,"max":15,"notes":["last push 186 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"nr-mcp","version":"1.2.2","found":true,"weeklyDownloads":29,"license":"MIT","dependencyCount":4,"publishedAt":"2026-03-25T22:56:27.442731Z","repositoryUrl":"https://github.com/Texan-NXTassist/nr-mcp"}],"repo":{"found":true,"owner":"Texan-NXTassist","repo":"nr-mcp","archived":false,"pushedAt":"2026-03-25T22:56:09Z","stars":1,"forks":4,"openIssues":2,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/200116007?v=4","ownerCreatedAt":"2025-02-20T16:50:16Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/200116007?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":4,"downloadsWeek":29,"license":"MIT","lastPushAt":"2026-03-25T22:56:09.000Z","score":13}}}},"grade_history":[],"reviews":[]}