mcp-dashboard
v0.2.1
Published
GUI tool for managing Claude Code MCP settings
Maintainers
Readme
MCP Dashboard
A GUI dashboard for managing Claude Code and Claude Desktop MCP (Model Context Protocol) settings through a user-friendly web interface.
Features
- Claude Code Support: Full support for Claude Code's MCP configuration (.mcp.json, ~/.claude.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
Installation
npx mcp-dashboardOr install globally:
npm install -g mcp-dashboard
mcp-dashboardUsage
Basic Usage
Simply 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
Command Line Options
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 versionConfiguration File Locations
The tool automatically detects and prioritizes configuration files in the following order:
Claude Code (Recommended)
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
Claude Desktop (Legacy Support)
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.
Managing MCP Servers
Adding a Server
- 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"
Using Presets
- Click "Add from Preset"
- Search or browse available presets
- Click "Add" on desired preset
- Customize configuration if needed
- Click "Save"
Available Presets
- 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
Editing a Server
- Click "Edit" on the server card
- Modify configuration
- Click "Save"
Deleting a Server
- Click "Delete" on the server card
- Confirm deletion
Enabling/Disabling a Server
Click the checkbox next to the server name to toggle enabled/disabled state.
Development
Setup
# Clone the repository
git clone https://github.com/ogison/mcp-dashboard.git
cd mcp-dashboard
# Install dependencies
npm install
# Build the project
npm run buildDevelopment Mode
# Run both server and client in watch mode
npm run dev
# Or run them separately
npm run dev:server # Backend
npm run dev:client # FrontendProject Structure
mcp-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 outputTech Stack
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)
Security
- 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
Troubleshooting
Port Already in Use
If port 4000 is already in use:
mcp-dashboard -p 62000Browser Doesn't Open
If the browser doesn't open automatically:
mcp-dashboard --no-openThen manually open: http://localhost:4000
Configuration Not Found
If your configuration file isn't detected, ensure Claude Code is installed and has been run at least once to create the config file.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Support
For issues and feature requests, please visit: https://github.com/ogison/mcp-dashboard/issues
