roo-code-custom-mode-editor-mcp-server
@raymondlowe
An MCP server that knows how to edit the Roo Code custom modes file
Overview
What is roo-code-custom-mode-editor-mcp-server?
A Model Context Protocol (MCP) server that provides tools to read and modify the Roo Code custom modes file (.roomodes). It eliminates the need to overwrite the file manually or attempt unreliable JSON diffs. Designed for developers using Roo Code who want a safe, structured way to manage custom mode definitions.
How to use roo-code-custom-mode-editor-mcp-server?
Run the server with npx https://github.com/raymondlowe/roo-code-custom-mode-editor-mcp-server. To integrate with Roo Code, add a server configuration entry to the MCP settings file pointing to the built index.js (the server has a build step via npm run build). The server communicates over stdio and exposes four tools: list_custom_modes, create_custom_mode, get_custom_mode_fields, and put_custom_mode_fields.
Key features of roo-code-custom-mode-editor-mcp-server
- Lists all custom modes in the
.roomodesfile. - Creates new custom modes with slug, name, roleDefinition, customInstructions, and groups.
- Retrieves the full fields of a specific custom mode.
- Updates one or more fields of a custom mode without rewriting the entire file.
Use cases of roo-code-custom-mode-editor-mcp-server
- List all existing custom modes to review current configuration.
- Create a new custom mode programmatically via an MCP tool.
- Update only the role definition or instructions of a mode without risking file corruption.
- Avoid manual file writes and unreliable diff edits when managing
.roomodes.
FAQ from roo-code-custom-mode-editor-mcp-server
—
What runtime does the server require?
The server is launched with the node command, so Node.js must be installed.
How does this server differ from directly editing the .roomodes file?
It provides dedicated MCP tools to list, create, retrieve, and update custom modes, avoiding the need to overwrite the file or attempt unreliable JSON diffs.
Where does the custom mode data live?
All data is stored in the .roomodes file managed by Roo Code.
What tools are exposed?
The server exposes four tools: list_custom_modes, create_custom_mode, get_custom_mode_fields, and put_custom_mode_fields. Each accepts specific parameters (e.g., slug, name, roleDefinition, customInstructions, groups).
How do I configure this server with Roo Code?
Add a JSON object under mcpServers in the MCP settings file, specifying `"command": "node"