
FastAPI MCP SSE

2025.03.10
29
PythonAI 工具集成实时数据流开发效率
FastAPI MCP SSE 是一个基于 FastAPI 框架实现的 Server-Sent Events (SSE) 服务,集成了 Model Context Protocol (MCP) 功能。MCP 是一个开放标准,允许 AI 模型与外部工具和数据源交互,解决了 AI 开发中的上下文限制、工具集成、互操作性和可扩展性等关键挑战。该服务展示了如何在 FastAPI 应用中实现 MCP 的 SSE 功能,同时提供自定义路由和标准 Web 端点。
View on GitHub
Overview
基本能力
产品定位
FastAPI MCP SSE 是一个集成了 Model Context Protocol (MCP) 的 Server-Sent Events (SSE) 服务,旨在为 AI 模型提供与外部工具和数据源的交互能力。
核心功能
- Server-Sent Events (SSE) 实现与 MCP 集成
- FastAPI 框架集成,支持自定义路由
- 统一的 Web 应用,包含 MCP 和标准 Web 端点
- 可自定义的路由结构
- MCP 功能与 Web 功能的清晰分离
适用场景
- AI 模型与外部工具和数据的交互
- 实时数据流传输(如天气警报、预测等)
- 开发 AI 扩展功能,无需重新训练模型
工具列表
- MCP Inspector:用于测试和调试 MCP 功能,支持 SSE 传输类型,可以列出可用工具并执行。
- 功能:连接 SSE 端点、列出可用工具(如
get_alerts
和get_forcast
)、执行工具并查看结果。
常见问题解答
- 如何扩展应用?:可以通过 FastAPI 的 APIRouter 添加自定义路由,或修改
server.py
中的 MCP 集成部分。 - 如何与 Continue VS Code 扩展集成?:在 Continue 配置中添加 MCP 服务器的 SSE 传输信息。
使用教程
使用依赖
安装 UV Package Manager(一个快速的 Python 包安装工具):
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
安装教程
快速运行(无需安装)
uvx --from git+https://github.com/panz2018/fastapi_mcp_sse.git start
完整安装
- 创建虚拟环境:
uv venv
- 激活虚拟环境:
.venv\Scripts\activate
- 安装依赖:
uv pip install -r pyproject.toml
- 启动服务器:
python src/server.py
或
uv run start
调试方式
- 使用 MCP Inspector 调试:
mcp dev ./src/weather.py
- 打开 MCP Inspector(http://localhost:5173),配置 SSE 传输并连接。
- 在
Tools
部分列出可用工具并执行测试。