MCP SSE Launcher

A Python management system for MCP servers that wraps stdio-based servers as SSE endpoints and includes a web inspector for testing.

MCP SSE Launcher

A Python-based management system for Model Context Protocol (MCP) servers that automatically wraps stdio-based servers with Supergateway to expose them as SSE endpoints, plus provides a web-based inspector for testing.

Key Features

  • Auto-update - keeps MCP servers up-to-date automatically
  • Background monitoring - restarts crashed servers automatically
  • Web inspector - debug and test MCP servers via browser
  • SSE conversion - wraps stdio servers for HTTP/SSE access
  • AI assistant integration - works with Cursor, Claude Desktop, etc.

Quick Start

# 1. Install dependencies
pip install -r requirements.txt

# 2. Set up environment (copy .env.example to .env and add API keys)
cp .env.example .env

# 3. Start all MCP servers (with auto-restart)
make run-servers

# 4. Start web inspector for debugging
make run-inspector

# 5. View inspector at the URL shown in the output

Common Use Cases

Debug a specific MCP server

# Start inspector (will show URL with auth token)
make run-inspector
# Visit the URL shown in output to test MCP servers

Add a new MCP server

# Add GitHub MCP server
python mcp_servers.py add \
  --name github \
  --cmd npx \
  --args "-y @modelcontextprotocol/server-github" \
  --env GITHUB_TOKEN=your_token_here \
  --port 8094

Use with Cursor AI

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "filesystem": { "url": "http://localhost:8090/sse" },
    "github": { "url": "http://localhost:8094/sse" },
    "brave-search": { "url": "http://localhost:8096/sse" }
  }
}

Restart a problematic server

# Kill conflicts and restart specific server
make restart-server SERVER=github

Run without auto-restart (for development)

make run-servers KEEP_ALIVE=0

What Happens Automatically

  • Updates: npm packages and git repos are checked/updated before starting
  • Port conflicts: conflicting processes are detected and can be killed
  • Process monitoring: crashed servers restart up to 3 times
  • Logging: each server logs to /tmp/<server_name>.log
  • Cleanup: all processes are properly terminated on exit

Available MCP Servers

The default config includes popular servers like:

  • filesystem (8090) - local file access
  • github (8094) - GitHub repository interaction
  • brave-search (8096) - web search
  • fetch (8093) - HTTP requests
  • youtube (8092) - YouTube search/info
  • memory (8100) - persistent memory
  • puppeteer (8101) - web automation

Troubleshooting

# Check what's using server ports
make check-server-ports

# Kill conflicting processes on server ports
make kill-server-conflicts

# Stop servers (inspector stops with Ctrl+C)
make stop-servers

# View server logs
tail -f /tmp/filesystem.log

Configuration

Servers are defined in mcp_config.json. Environment variables use ${VAR} syntax and are loaded from .env.

Example server config:

{
  "name": "github",
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-github"], 
  "env": {"GITHUB_TOKEN": "${GITHUB_TOKEN}"},
  "port": 8094,
  "server_type": "stdio"
}

Máy chủ liên quan

NotebookLM Web Importer

Nhập trang web và video YouTube vào NotebookLM chỉ với một cú nhấp. Được tin dùng bởi hơn 200.000 người dùng.

Cài đặt tiện ích Chrome