mcp-0ne
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-0nelist all my connected backend servers and their current status"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-0ne
One MCP server to rule them all.
A standalone MCP Gateway that multiplexes N backend MCP servers behind a single endpoint. Connect your MCP client once, manage backends dynamically at runtime.
MCP Client ──(HTTP)──> mcp-0ne (:8150)
│
┌───────────────┼───────────────┐
│ │ │
(HTTP client) (stdio spawn) (stdio spawn)
│ │ │
HTTP MCP stdio MCP stdio MCP
server server serverQuickstart
# Install
pip install -e .
# Start with empty backends
python -m mcp_0ne.server
# Verify
curl http://127.0.0.1:8150/healthConnect Claude Code
Add to your .mcp.json:
{
"mcpServers": {
"0ne": {
"type": "http",
"url": "http://127.0.0.1:8150/mcp"
}
}
}Add Backends
Via MCP tool (from Claude Code)
Call 0ne__add:
{
"id": "myapp",
"type": "http",
"prefix": "myapp",
"url": "http://127.0.0.1:8100/mcp",
"description": "My App MCP Server"
}Via REST API
curl -X POST http://127.0.0.1:8150/api/backends/myapp \
-H "Content-Type: application/json" \
-d '{"type":"http","prefix":"myapp","url":"http://127.0.0.1:8100/mcp"}'Via config file
Edit backends.json:
{
"backends": {
"myapp": {
"type": "http",
"url": "http://127.0.0.1:8100/mcp",
"prefix": "myapp",
"enabled": true,
"description": "My App MCP Server"
}
},
"settings": {
"separator": "__",
"lazy_connect": true,
"tool_cache_ttl": 60,
"log_level": "info"
}
}Backend Types
HTTP
Connects to an existing MCP server over HTTP JSON-RPC 2.0.
Field | Required | Description |
| yes |
|
| yes | Tool namespace prefix |
| yes | MCP endpoint URL |
| no | Health check URL |
| no | Request timeout (default: 30s) |
| no | Human-readable description |
| no | Auto-connect (default: true) |
Stdio
Spawns a subprocess and communicates via MCP SDK stdio transport.
Field | Required | Description |
| yes |
|
| yes | Tool namespace prefix |
| yes | Executable path |
| no | Command arguments |
| no | Environment variables |
| no | Operation timeout (default: 60s) |
| no | Human-readable description |
| no | Auto-connect (default: true) |
Admin Tools
Available as MCP tools (prefix 0ne__):
Tool | Description |
| List all backends with state and tool counts |
| Health check all backends with latency |
| Register a new backend at runtime |
| Disconnect and unregister a backend |
| Enable a disabled backend |
| Disable a backend without removing it |
| Force reconnect and re-enumerate tools |
REST API
Method | Path | Description |
|
| List all backends |
|
| Add a new backend |
|
| Remove a backend |
|
| Update backend config |
|
| Reconnect and refresh |
Environment Variables
Variable | Default | Description |
|
| Server bind address |
|
| Server port |
|
| Config file path |
|
| Log level |
Tool Namespacing
Tools from backends are exposed with a namespace prefix:
{prefix}__{original_tool_name}For example, a backend with prefix myapp exposing a tool search becomes myapp__search. The separator __ is configurable in settings.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ahostbr/mcp-0ne'
If you have feedback or need assistance with the MCP directory API, please join our Discord server