MCP协议服务器

一个基于Starlette和MCP Python SDK的最小化MCP协议服务器,提供健康检查、SSE流和JSON-RPC消息端点,适用于需要轻量级MCP协议实现的场景。

  • by ahtishamdilawar
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ahtishamdilawar/mcp-server-test

使用说明

用于渲染的简单MCP服务器

这是一个使用Starlette和MCP Python SDK构建的最小模型上下文协议(MCP)服务器,已准备好在Render上部署。

终点(或:终端点)

  • GET /health – 简单的健康检查
  • GET /sse – 为MCP建立SSE流
  • POST /messages/ – SSE 连接后客户端使用的 JSON-RPC 消息端点

本地运行

  1. 确保安装了 Python 3.11 或更高版本
  2. 安装依赖项 使用 pip 安装 requirements.txt 文件中的依赖项
  3. 启动服务器 运行 python server.py
  4. 验证
    • 打开 http://127.0.0.1:8000/health,预期返回 {"status":"healthy", ...}
    • SSE 将可通过以下地址访问:http://127.0.0.1:8000/sse

在Render上部署

  • 这个仓库包含用于自动部署网络服务的 render.yaml 文件:
    • 构建:使用 pip 安装 requirements.txt 中的依赖
    • 启动:python server.py
    • Python:3.11.0
  • 在render.com上:
    1. 新 > 蓝图实例
    2. 指向这个仓库;Render 将检测 render.yaml
    3. 部署。访问 /health 进行健康检查,确认其已正常运行

笔记

  • 这个服务器提供了三个简单的工具:回显(echo)、加法(add)、乘法(multiply)
  • 它使用SSE(Server-Sent Events)传输方式;许多MCP(可能是指某种客户端或系统组件)客户端都支持SSE或可流式HTTP。如果您需要使用可流式HTTP,我们可以将此切换到更新的传输方式。