模型上下文协议服务器

一个支持OAuth 2.1认证、Supabase用户管理和Cloudflare隧道的MCP服务器,适用于ChatGPT和Claude.ai。

  • by mokcontoro
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 mokcontoro/simple_mcp_server

使用说明

简单MCP服务器

具有OAuth 2.1身份验证、Supabase用户管理和Cloudflare隧道支持的模型上下文协议(MCP)服务器。适用于ChatGPT和Claude.ai。

快速开始

# Install via pipx
pipx install git+https://github.com/mokcontoro/simple_mcp_server.git

# Run (opens browser for first-time setup)
simple-mcp-server

看 docs/install.md 用于手动安装和故障排除。

特性

  • 可流式HTTP传输:现代MCP运输 /mcp
  • OAuth 2.1:具有PKCE和动态客户端注册的全流程
  • Cloudflare隧道:通过安全访问 {name}.robotmcp.ai
  • 仅限创建者访问:只有服务器创建者可以连接
  • 可选OAuth:禁用 ENABLE_OAUTH=false

项目结构

simple_mcp_server/
├── main.py              # FastAPI app entry point
├── tools.py             # MCP tools (echo, ping) - replace for custom tools
├── cli.py               # CLI daemon management
├── config.py            # Config management (~/.simple-mcp-server/)
├── setup.py             # Browser-based login flow
├── sse.py               # Legacy SSE endpoints
└── oauth/               # OAuth module (optional)
    ├── endpoints.py     # OAuth routes
    ├── middleware.py    # Token validation
    ├── stores.py        # In-memory token stores
    └── templates.py     # HTML templates

云服务: CLI登录和隧道创建由以下人员处理 robotmcp云 在 https://app.robotmcp.ai.

看 docs/project_plan.md 了解架构细节。

CLI命令

命令 描述
simple-mcp-server 在后台启动服务器
simple-mcp-server stop 停止服务器和隧道
simple-mcp-server status 显示当前状态
simple-mcp-server logout 清除凭据并停止

环境变量

变量 描述
SUPABASE_URL Supabase项目URL
SUPABASE_ANON_KEY Supabase匿名密钥
SUPABASE_JWT_SECRET 用于令牌验证的JWT密钥
ENABLE_OAUTH 设置 false 禁用OAuth(默认值: true)
ROBOTMCP_CLOUD_URL 云服务URL(默认值: https://app.robotmcp.ai)

API终点

端点 描述
GET / 服务器信息
POST /mcp 流式HTTP传输(推荐)
GET /sse 传统SSE(向后兼容)
/.well-known/oauth-authorization-server OAuth元数据

连接MCP客户端

使用 https://{your-name}.robotmcp.ai/mcp 作为ChatGPT或Claude.ai中的MCP服务器URL。

看 docs/workflow.md 用于连接流程图。

定制

要添加自定义MCP工具,请替换 tools.py:

from fastmcp import FastMCP
mcp = FastMCP("my-server")

@mcp.tool()
def my_tool(param: str) -> str:
    return f"Result: {param}"

对于ros mcp服务器合并:替换 tools.py 并设置 ENABLE_OAUTH=false.

文档

许可证

版权所有(c)2025 Contoro。保留所有权利。

该软件是专有和机密的。未经明确书面许可,严禁未经授权复制、修改、分发或使用本软件。