Enables environment configuration loading from .env files for setting up server parameters and credentials
Provides repository cloning functionality to set up the MCP server gateway from source code
Supports NPX server integration for running and connecting to MCP tools based on NPM packages
Supports running Python-based MCP servers and tools, including through direct process management and UVX integration
Uses TOML configuration files for structured server setup and management of MCP sub-servers
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., "@Moonshot MCP Server Gatewaylist all connected MCP servers"
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.
π 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
Related MCP server: Weaviate MCP Server
β¨οΈπ 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