A local MCP server for developers that mirrors your in-development MCP server, allowing seamless restarts and tool updates so you can build, test, and iterate on your MCP server within the same AI session without interruption.
Hot-reload your MCP servers without restarting your AI coding assistant
A transparent development proxy for the Model Context Protocol (MCP) that enables seamless hot-reloading of MCP servers during development. Works excellently with VSCode MCP, well with Claude Code, and supports other MCP-enabled clients.
When developing MCP servers, you typically need to restart your entire AI coding session every time you make changes to your server code. This breaks your development flow and loses context.
reloaderoo solves this by:
restart_server
tool that your AI agent can call# Install globally for easy access
npm install -g reloaderoo
# Or install locally in your project
npm install --save-dev reloaderoo
Instead of connecting your AI client directly to your MCP server:
# ❌ Traditional approach (requires client restart on changes)
# Client connects to: node my-mcp-server.js
Connect through reloaderoo:
# ✅ With reloaderoo (hot-reload without client restart)
reloaderoo -- node my-mcp-server.js
Now your client connects to the proxy, and the proxy manages your server's lifecycle!
MCP Client | Status | Tools | Prompts | Resources | Hot-Reload | Notes |
---|---|---|---|---|---|---|
VSCode | ✅ Excellent | ✅ Full | ✅ Full | ✅ Full | ✅ Auto-detect | Detects tool addition/removal + updates |
Claude Code | ✅ Good | ✅ Full | ✅ Full | ❌ Not supported | ⚠️ Manual refresh | Tool updates work, no auto-detection |
Cursor | ✅ Excellent | ✅ Full | ❓ Untested | ❓ Untested | ✅ Auto-detect | Detects tool addition/removal + updates |
Windsurf | ✅ Good | ✅ Full | ❓ Untested | ❓ Untested | ⚠️ Manual refresh | Tool updates work, no auto-detection |
Best Experience: VSCode & Cursor - Full protocol support with automatic capability detection
Good Experience: Claude Code & Windsurf - Works well, may need manual refresh for new tools
Configure your AI client (VSCode recommended, Claude Code also works well) to connect to:
reloaderoo -- node my-mcp-server.js --log-level debug
Work on your server code as usual:
// my-mcp-server.js
export const server = new Server({
name: "my-awesome-server",
version: "1.0.0"
});
// Add new tools, modify existing ones, etc.
server.addTool("new_feature", /* ... */);
Ask your AI agent to restart the server:
"Please restart the MCP server to load my changes"
The agent will call the restart_server
tool automatically. Your new capabilities are immediately available!
Your AI session continues with the updated server capabilities. No connection loss, no context reset.
reloaderoo [options] -- <command> [args...]
Options:
-w, --working-dir <directory> Working directory for the server process
-l, --log-level <level> Log level (debug, info, warning, error)
-m, --max-restarts <number> Maximum restart attempts (default: 3)
-d, --restart-delay <ms> Delay between restarts (default: 1000ms)
-t, --restart-timeout <ms> Restart timeout (default: 30000ms)
--no-auto-restart Disable automatic restart on crashes
--dry-run Validate configuration without starting
Commands:
info Show system information and diagnostics
graph LR
A[AI Client] -->|MCP Protocol| B[reloaderoo]
B -->|Forwards Messages| C[Your MCP Server]
B -->|Manages Lifecycle| C
B -->|Adds restart_server Tool| A
style A fill:#e1f5fe
style B fill:#f3e5f5
style C fill:#e8f5e8
restart_server
tool to your server's capabilities# Configure via environment variables
export MCPDEV_PROXY_LOG_LEVEL=debug
export MCPDEV_PROXY_RESTART_LIMIT=5
export MCPDEV_PROXY_AUTO_RESTART=true
export MCPDEV_PROXY_TIMEOUT=30000
// reloaderoo.config.js
export default {
childCommand: "node",
childArgs: ["server.js"],
logLevel: "debug",
maxRestarts: 5,
autoRestart: true
};
Add to your project's claude_desktop_config.json
:
{
"mcpServers": {
"my-dev-server": {
"command": "reloaderoo",
"args": ["--log-level", "info", "--", "node", "my-server.js"]
}
}
}
{
"scripts": {
"dev": "reloaderoo -- npm run server:dev",
"mcp:proxy": "reloaderoo -- node dist/server.js",
"mcp:debug": "reloaderoo --log-level debug -- node server.js"
}
}
Universal configuration (all clients):
{
"mcpServers": {
"MyServer": {
"command": "node",
"args": [
"/path/to/reloaderoo.js",
"--working-dir",
"/path/to/accessible/directory",
"--",
"node",
"/path/to/my-server.js"
]
}
}
}
Claude Code not detecting new tools:
VSCode best experience:
Server won't start:
# Check if your server runs independently first
node my-server.js
# Then try with dry-run to validate configuration
reloaderoo -- node my-server.js --dry-run
Connection problems:
# Enable debug logging
reloaderoo --log-level debug -- node my-server.js
# Check system info
reloaderoo info --verbose
Restart failures:
# Increase restart timeout
reloaderoo -- node my-server.js --restart-timeout 60000
# Check restart limits
reloaderoo -- node my-server.js --max-restarts 5
# Get detailed information about what's happening
reloaderoo -- node my-server.js --debug
# View system diagnostics
reloaderoo info --verbose
restart_server
ToolYour AI agent can call this tool to restart your server:
interface RestartServerParams {
force?: boolean; // Force restart even if server appears healthy
config?: {
environment?: Record<string, string>; // Update environment variables
childArgs?: string[]; // Update command arguments
workingDirectory?: string; // Update working directory
};
}
Example usage in conversation:
"Please restart the MCP server to load my latest changes"
"Force restart the server even if it seems to be working"
"Restart the server with debug logging enabled"
// settings.json or workspace config
{
"mcpServers": {
"my-dev-server": {
"command": "reloaderoo",
"args": ["--", "node", "my-server.js"]
}
}
}
✅ Auto-detection: New tools appear automatically after restart
✅ Full protocol: Tools, prompts, resources all supported
✅ Real-time updates: Changes to existing tools detected immediately
// claude_desktop_config.json
{
"mcpServers": {
"my-dev-server": {
"command": "reloaderoo",
"args": ["--", "node", "my-server.js"]
}
}
}
✅ Tools & Prompts: Full support for tools and prompts
⚠️ Manual refresh: May need to restart conversation for new tools
❌ Resources: Not supported by Claude Code (client limitation)
⚠️ Known Issues: Both clients experiencing identical server startup errors
🔍 Investigation: Compatibility problems under investigation (may be shared architecture)
📋 Workaround: Use VSCode or Claude Code for now
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
git clone https://github.com/your-org/reloaderoo.git
cd reloaderoo
npm install
npm run build
npm test
npm run test # Unit tests
npm run test:e2e # End-to-end tests with MCP Inspector
npm run test:coverage # Test coverage report
MIT License - see LICENSE file for details.
Execute pre-configured and secure shell commands via a Go-based MCP server.
Provides preset prompt templates as tools to assist clients like Cursor and Windsurf in executing various tasks.
A template for deploying a remote, auth-less MCP server on Cloudflare Workers.
A tool to provide Large Language Models with project context by intelligently filtering and concatenating relevant files.
A Node.js MCP server example for the OpenWeather API, requiring an API key.
Official Zeplin server for AI-assisted UI development.
Refactor code using regex-based search and replace.
A server for generating version 7 universally unique identifiers (UUIDv7).
A customizable MCP service with flexible tool selection and configuration. Requires a 302AI API key.
A GraphQL server that supports the Model Context Protocol (MCP), enabling Large Language Models (LLMs) to interact with GraphQL APIs through schema introspection and query execution.