A GUI dashboard for managing Claude Code and Claude Desktop MCP (Model Context Protocol) settings through a user-friendly web interface.
- Claude Code Support: Full support for Claude Code's MCP configuration (.mcp.json, ~/.claude.json)
- VS Code MCP Support: Configure VS Code MCP settings (.vscode/mcp.json, ~/.vscode/mcp.json)
- Multi-Scope Configuration: Manage project-level, user-level, and Claude Desktop configs
- Easy Configuration: Manage MCP servers through an intuitive web-based GUI
- Preset Support: Quick setup with pre-configured MCP server templates
- Live Editing: Add, edit, delete, and enable/disable MCP servers
- Validation: Built-in validation to ensure configuration correctness
- Auto Backup: Automatic backup before saving changes
- Cross-Platform: Works on macOS, Windows, and Linux
npx mcp-dashboardOr install globally:
npm install -g mcp-dashboard
mcp-dashboardSimply run the command to start the tool:
npx mcp-dashboardThis will:
- Start a local web server (default port: 4000)
- Automatically open your default browser
- Load your current MCP configuration
mcp-dashboard [options]
Options:
-p, --port <port> Port number (default: 4000)
--no-open Do not open browser automatically
-h, --help Display help
-V, --version Display versionThe tool automatically detects and prioritizes configuration files in the following order:
- Project scope:
.mcp.json - Cursor scope:
.cursor/mcp.json - VS Code scope:
.vscode/mcp.json(project) or~/.vscode/mcp.json(user) - User scope:
~/.claude.json - Claude Desktop scope: platform-specific legacy path
Project Scope (.mcp.json in project directory):
- Searched upward from current directory to home directory
- Ideal for team-shared, version-controlled configurations
- Priority: Highest
User Scope (~/.claude.json):
- All platforms:
~/.claude.jsonin home directory - Personal settings shared across all projects
- May contain additional Claude Code settings (theme, projects, etc.)
- Priority: Medium
Project Scope (.vscode/mcp.json in project directory):
- Searched upward from current directory to home directory
- Works with VS Code MCP integrations
- Priority: High
User Scope (~/.vscode/mcp.json):
- Stored under
.vscodein the home directory - Useful for sharing VS Code MCP settings across projects
- Priority: Medium-High
Claude Desktop Config:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json - Priority: Lowest (backward compatibility)
The tool displays the active configuration file and its scope (Project/User/Claude Desktop) in the header.
- Click "Add Server" button
- Enter server details:
- Server name (unique identifier)
- Command (e.g.,
npx) - Arguments (e.g.,
-y,@modelcontextprotocol/server-filesystem) - Environment variables (optional)
- Click "Save"
- Click "Add from Preset"
- Search or browse available presets
- Click "Add" on desired preset
- Customize configuration if needed
- Click "Save"
- Filesystem MCP: Access local files and directories
- Git MCP: Git repository operations
- GitHub MCP: GitHub API integration
- Brave Search MCP: Web search capabilities
- PostgreSQL MCP: PostgreSQL database operations
- SQLite MCP: SQLite database operations
- Puppeteer MCP: Browser automation
- Slack MCP: Slack workspace integration
- Click "Edit" on the server card
- Modify configuration
- Click "Save"
- Click "Delete" on the server card
- Confirm deletion
Click the checkbox next to the server name to toggle enabled/disabled state.
# Clone the repository
git clone https://github.com/ogison/mcp-dashboard.git
cd mcp-dashboard
# Install dependencies
npm install
# Build the project
npm run build# Run both server and client in watch mode
npm run dev
# Or run them separately
npm run dev:server # Backend
npm run dev:client # Frontendmcp-dashboard/
├── bin/
│ └── cli.js # CLI entry point
├── src/
│ ├── server/ # Backend (Express)
│ │ ├── index.ts
│ │ ├── routes/
│ │ ├── services/
│ │ ├── utils/
│ │ └── types/
│ ├── client/ # Frontend (React + Vite)
│ │ ├── src/
│ │ │ ├── components/
│ │ │ ├── hooks/
│ │ │ ├── services/
│ │ │ ├── types/
│ │ │ └── App.tsx
│ │ └── index.html
│ └── presets/
│ └── mcpServers.json # Preset definitions
└── dist/ # Build output
Backend:
- Node.js + TypeScript
- Express
- CORS, Body Parser
Frontend:
- React 18
- Vite
- TailwindCSS
- React Hook Form
- Zod (validation)
CLI:
- Commander (CLI framework)
- Chalk (colored output)
- Open (browser launcher)
- Localhost Only: Web server binds to localhost only
- Input Validation: Strict validation of all user inputs
- Path Safety: Protection against path traversal attacks
- Auto Backup: Configuration backed up before changes
If port 4000 is already in use:
mcp-dashboard -p 62000If the browser doesn't open automatically:
mcp-dashboard --no-openThen manually open: http://localhost:4000
If your configuration file isn't detected, ensure Claude Code is installed and has been run at least once to create the config file.
MIT
Contributions are welcome! Please feel free to submit a Pull Request.
For issues and feature requests, please visit: https://github.com/ogison/mcp-dashboard/issues