Skip to main content

Installation

Initial Setup

1. Access the Dashboard

Open your browser and navigate to:
http://localhost:3000

2. Login

The default username is admin. On first launch, if no ADMIN_PASSWORD environment variable is set, a random password is generated and printed to the server logs. To pre-set the admin password:
# Via environment variable
ADMIN_PASSWORD=your-secure-password docker run -p 3000:3000 samanhappy/mcphub
Change the admin password after first login for security.
ADMIN_PASSWORD and the random password printed to the logs apply only the first time MCPHub starts with an empty users list. Once any user exists, the variable is ignored — manage passwords through the dashboard or PUT /api/users/:username afterwards. To force a fresh bootstrap, remove the users from mcp_settings.json (file mode) or the mcphub_user table (database mode) before restarting.

3. Configure Your First MCP Server

Click “Add Server” in the dashboard. The form supports four transport types — pick the one that matches the upstream server:
TypeWhen to useRequired fields
stdio (default)The server runs as a local process you launch (uvx, npx, etc.).command, optional args and env.
sseThe server is reachable over HTTP/SSE.url, optional headers, enableKeepAlive, keepAliveInterval.
streamable-httpThe server speaks MCP Streamable HTTP.url, optional headers.
openapiYou want to expose an OpenAPI service as MCP tools.openapi.url or openapi.schema.
Example stdio configuration:
{
  "name": "fetch",
  "config": { "type": "stdio", "command": "uvx", "args": ["mcp-server-fetch"] }
}
Example SSE configuration:
{
  "name": "amap",
  "config": { "type": "sse", "url": "https://mcp.amap.com/sse?key=YOUR_KEY" }
}
See MCP Settings for the complete field reference.

Basic Usage

Connecting AI Clients

Once your servers are configured, connect your AI clients using MCPHub endpoints:
Access all configured MCP servers: http://localhost:3000/mcp
Here are some popular MCP servers you can add:
{
  "name": "fetch",
  "command": "uvx",
  "args": ["mcp-server-fetch"]
}
{
  "name": "playwright",
  "command": "npx",
  "args": ["@playwright/mcp@latest", "--headless"]
}
{
  "name": "amap",
  "command": "npx",
  "args": ["-y", "@amap/amap-maps-mcp-server"],
  "env": {
    "AMAP_MAPS_API_KEY": "your-api-key-here"
  }
}
{
  "name": "slack",
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-slack"],
  "env": {
    "SLACK_BOT_TOKEN": "your-bot-token",
    "SLACK_TEAM_ID": "your-team-id"
  }
}

Next Steps

Server Management

Learn advanced server configuration and management

Group Management

Organize servers into logical groups

Smart Routing

Set up AI-powered tool discovery

API Reference

Explore the complete API documentation

Troubleshooting

  • Check if the MCP server command is accessible in your PATH - Verify environment variables are correctly set - Check MCPHub logs for detailed error messages
  • Ensure MCPHub is running on the correct port - Check firewall settings - Verify the endpoint URL format
  • Verify credentials are correct - Check if JWT token is valid - Try clearing browser cache and cookies
Need more help? Join our Discord community for support!