MarshallEriksen-shaomingyang/moonshot-mcp-server
If you are the rightful owner of moonshot-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
Moonshot MCP Server Gateway is a lightweight gateway server that provides a unified connection entry point for accessing multiple MCP servers.
π Moonshot MCP Server Gateway
πβ¨ Description
Moonshot MCP Server Gateway is a lightweight gateway server with the following main features:
- Provides a unified connection entry point, allowing clients to access multiple MCP servers by connecting to this server
- Simplifies the connection and management process of MCP servers
- Supports multiple protocols, including Network Transports, Local Transports, etc. For specific protocols, please refer to the MCP Protocol Documentation
β¨οΈπ Quick Start
git clone https://github.com/MarshallEriksen-shaomingyang/moonshot-mcp-server.git
cp .env.example .env
cp moonshot_config.example.toml moonshot_config.toml
# Create virtual environment
uv venv
# Activate virtual environment
source .venv/bin/activate
# Start the project
uv run server.py --mode http or uv run server.py --mode sse
βοΈπ MCP Configuration Details (moonshot_config.toml)
π Configuration File Structure
1οΈβ£ Server Basic Configuration [server]
| Config Item | Description | Required |
|---|---|---|
| name | Server name | Yes |
| version | Server version | Yes |
| port | Listening port | Yes |
| host | Listening address | Yes |
2οΈβ£ MCP Sub-server Configuration [mcpServers]
MCP supports multiple types of server configurations. Each sub-server configuration needs to specify a unique name (e.g., [mcpServers.server_name]) and a required prefix field for API routing.
βοΈ Process Server (type = "process")
| Config Item | Description | Required |
|---|---|---|
| command | Interpreter command | Yes |
| script_path | Script path | Yes |
| args | Startup parameters | No |
| prefix | API routing prefix | Yes |
| exclude | Commands to exclude | No |
| cwd | Working directory | No |
| env | Environment variables | No |
π HTTP/HTTPS Server (type = "http"/"https")
| Config Item | Description | Required |
|---|---|---|
| url | Server URL | Yes |
| prefix | API routing prefix | Yes |
| headers | Request headers | No |
π WebSocket Server (type = "websocket")
| Config Item | Description | Required |
|---|---|---|
| url | WebSocket server address | Yes |
| prefix | API routing prefix | Yes |
π¦ NPX Server (type = "npx")
| Config Item | Description | Required |
|---|---|---|
| package | NPM package name | Yes |
| args | Startup parameters | No |
| prefix | API routing prefix | Yes |
| env | Environment variables | No |
| project_directory | Project directory | No |
| use_package_lock | Whether to use package-lock.json | No |
π UVX Server (type = "uvx")
| Config Item | Description | Required |
|---|---|---|
| tool_name | Tool name | Yes |
| from_package | Package name | No |
| with_packages | Dependency package list | No |
| args | Tool parameters | No |
| prefix | API routing prefix | Yes |
| env | Environment variables | No |
| project_directory | Project directory | No |
| python_version | Python version | No |
π§© Configuration Example
# Basic server configuration
[server]
name = "AlphaCore Server"
version = "1.0.0"
port = 8090
host = "0.0.0.0"
# Process server example
[mcpServers.python_server]
type = "process"
command = "python3"
script_path = "server.py"
prefix = "py"
cwd = "/data/moonshot_tools"
# HTTP server example
[mcpServers.http_server]
type = "https"
url = "https://api.example.com/mcp"
prefix = "api"
# For more configuration examples, please refer to moonshot_config.example.toml