FastAPI MCP SSE

FastAPI MCP SSE

site icon
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_alertsget_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

完整安装

  1. 创建虚拟环境:
uv venv
  1. 激活虚拟环境:
.venv\Scripts\activate
  1. 安装依赖:
uv pip install -r pyproject.toml
  1. 启动服务器:
python src/server.py

uv run start

调试方式

  1. 使用 MCP Inspector 调试:
mcp dev ./src/weather.py
  1. 打开 MCP Inspector(http://localhost:5173),配置 SSE 传输并连接。
  2. Tools 部分列出可用工具并执行测试。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。