Overview
MCPHub’s server management system allows you to centrally configure, monitor, and control multiple MCP (Model Context Protocol) servers from a single dashboard. All changes are applied in real-time without requiring server restarts.Adding MCP Servers
MCPHub supports four upstream transports. Pick the one that matches your server before filling in the dashboard form (or the JSON body).Via Dashboard
- Access the Dashboard: Navigate to
http://localhost:3000and log in. - Click “Add Server” and choose a transport.
- Fill in the fields that apply to that transport. Common optional fields available on every transport:
enabled,owner,description,passthroughHeaders,oauth,proxy. See MCP Settings for the full schema.
<name>-copy; OAuth authorization state is not copied.
Via Configuration File
Edit yourmcp_settings.json file. Examples for each transport:
Via API
Use the REST API to add servers programmatically:Popular MCP Server Examples
Web Fetch Server
Web Fetch Server
Provides web scraping and HTTP request capabilities:Available Tools:
fetch: Make HTTP requestsfetch_html: Scrape web pagesfetch_json: Get JSON data from APIs
Playwright Browser Automation
Playwright Browser Automation
Browser automation for web interactions:Available Tools:
playwright_navigate: Navigate to web pagesplaywright_screenshot: Take screenshotsplaywright_click: Click elementsplaywright_fill: Fill forms
File System Operations
File System Operations
File and directory management:Available Tools:
read_file: Read file contentswrite_file: Write to filescreate_directory: Create directorieslist_directory: List directory contents
SQLite Database
SQLite Database
Database operations:Available Tools:
execute_query: Execute SQL queriesdescribe_tables: Get table schemascreate_table: Create new tables
Slack Integration
Slack Integration
Slack workspace integration:Available Tools:
send_slack_message: Send messages to channelslist_slack_channels: List available channelsget_slack_thread: Get thread messages
GitHub Integration
GitHub Integration
GitHub repository operations:Available Tools:
create_or_update_file: Create/update repository filessearch_repositories: Search GitHub repositoriescreate_issue: Create issuescreate_pull_request: Create pull requests
Google Drive
Google Drive
Google Drive file operations:Available Tools:
gdrive_search: Search files and foldersgdrive_read: Read file contentsgdrive_create: Create new files
Amap Maps (China)
Amap Maps (China)
Chinese mapping and location services:Available Tools:
search_location: Search for locationsget_directions: Get route directionsreverse_geocode: Convert coordinates to addresses
Copying a client configuration
Both server cards and group cards offer a copy action that opens a client preset dialog, so you can paste a ready-made configuration into your favorite MCP client:- Copy MCP config (group card menu): generates the configuration for the group’s aggregated endpoint (
<baseUrl>/mcp/<group>), which multiplexes every server in the group behind one URL. - Copy (server card menu): wraps that server’s own stored configuration (its
command/args/envfor stdio servers, or itsurl/headersfor HTTP/SSE servers) in the shape the selected client expects.
openapi transport have no client-side transport of their own, so the dialog shows a “no transport” notice instead of presets; this is expected, not an error. Servers using the sse transport keep their "type": "sse" marker in the generated JSON (and the Claude Code command switches to --transport sse) so clients do not misdial them as streamable HTTP.
The dialog provides presets for the following clients: Generic (mcpServers), Generic HTTP, Claude Code, Cursor, VS Code / Copilot, Codex, OpenCode, Windsurf, Cherry Studio, CodeBuddy Code, Qoder, TRAE, ZCode, and WorkBuddy.
The Claude Code tab additionally offers a one-liner CLI command:
http_headers (there is no headers key), VS Code uses servers plus a type field, and Cherry Studio uses baseUrl with a type of streamableHttp — or sse when the upstream is an SSE endpoint.
Server Lifecycle Management
Starting Servers
Servers are automatically started when:- MCPHub boots up
- A server is added via the dashboard or API
- A server configuration is updated
- A stopped server is manually restarted
Stopping Servers
You can stop servers:- Via Dashboard: Toggle the server status switch
- Via API: Send a POST request to
/api/servers/{name}/toggle - Automatically: Servers stop if they crash or encounter errors
Restarting Servers
Servers are automatically restarted:- When configuration changes are made
- After environment variable updates
- When manually triggered via dashboard or API
Server Status Monitoring
Status Indicators
Each server displays a status indicator:- 🟢 Running: Server is active and responding
- 🟡 Starting: Server is initializing
- 🔴 Stopped: Server is not running
- ⚠️ Error: Server encountered an error
Real-time Logs
View server logs in real-time:- Dashboard Logs: Click on a server to view its logs
- API Logs: Access logs via
/api/logsendpoint - Streaming Logs: Subscribe to log streams via WebSocket
Health Checks
MCPHub automatically performs health checks:- Initialization Check: Verifies server starts successfully
- Tool Discovery: Confirms available tools are detected
- Response Check: Tests server responsiveness
- Resource Monitoring: Tracks CPU and memory usage
Configuration Management
Environment Variables
Servers can use environment variables for configuration:${VAR_NAME}: Expands to environment variable value${VAR_NAME:-default}: Uses default if variable not set${VAR_NAME:+value}: Uses value if variable is set
Command Variations
Different ways to specify server commands:- npm/npx
- Python/uvx
Advanced Features
Hot Reloading
MCPHub supports hot reloading of server configurations:- Dashboard Updates: Immediately applies changes made through the web interface
- API Updates: Real-time updates via REST API calls
- Zero Downtime: Graceful server restarts without affecting other servers
Troubleshooting
Server Won't Start
Server Won't Start
Check the following:
- Command is available in PATH
- All required environment variables are set
- Working directory exists and is accessible
- Network ports are not blocked
- Dependencies are installed
- Check server logs in the dashboard
- Test command manually in terminal
- Verify environment variable expansion
- Check file permissions
Server Keeps Crashing
Server Keeps Crashing
Common causes:
- Invalid configuration parameters
- Missing API keys or credentials
- Resource limits exceeded
- Dependency conflicts
- Review server logs for error messages
- Test with minimal configuration
- Verify all credentials and API keys
- Check system resource availability
Tools Not Appearing
Tools Not Appearing
Possible issues:
- Server not fully initialized
- Tool discovery timeout
- Communication protocol mismatch
- Server reporting errors
- Wait for server initialization to complete
- Check server logs for tool registration messages
- Test direct communication with server
- Verify MCP protocol compatibility
Next Steps
Group Management
Organize servers into logical groups
Smart Routing
Set up AI-powered tool discovery
API Reference
Server management API documentation
Configuration Guide
Detailed configuration options