
🚀 FastAPI MCP 服务器

2025.05.05
2
PythonAI模型交互实时通信会话管理开发效率
FastAPI MCP服务器是一个专为大型语言模型设计的Model Context Protocol (MCP) 集成应用,基于FastAPI框架开发,提供高性能的服务器端事件(SSE)通信、智能工具注册和完善的会话管理功能。它是一个轻量级、高性能的MCP服务器实现,旨在简化AI模型与用户应用程序之间的交互。
View on GitHub
Overview
基本能力
产品定位
FastAPI MCP服务器是一个专为大型语言模型设计的Model Context Protocol (MCP) 集成应用,基于FastAPI框架开发,提供高性能的服务器端事件(SSE)通信、智能工具注册和完善的会话管理功能。
核心功能
- FastAPI + MCP整合:将FastAPI的高性能与MCP协议无缝集成,提供标准化的模型交互接口
- 高效SSE实时通信:基于服务器发送事件(SSE)实现毫秒级响应的单向实时数据流
- 多用户会话隔离:完善的会话创建、存储和管理机制,确保多用户场景下的数据隔离
- 灵活认证机制:支持多种认证方式,包括token、path和query参数,满足不同场景需求
- 全异步处理架构:从请求处理到数据库操作均采用异步设计,支持高并发访问
- 智能工具注册系统:简化AI工具函数的注册和管理,便于扩展模型能力
适用场景
- AI模型与用户应用程序之间的交互
- 实时数据流传输场景
- 多用户并发交互场景
工具列表
- MCP处理器:路由和处理MCP请求
- 会话服务:管理用户会话
- 工具函数:扩展模型能力
常见问题解答
- 连接问题:检查端口是否被占用,尝试更改
PORT
环境变量 - 工具注册问题:确保工具函数格式正确,并且已正确导入
- 会话管理问题:检查数据库连接配置
使用教程
使用依赖
- Python 3.13+
- 支持异步的数据库(可选)
- uv包管理器(推荐)
安装步骤
- 克隆代码库:
git clone [email protected]:purity3/fastapi-mcp-server.git
cd fastapi-mcp-server
- 创建并激活虚拟环境:
python -m venv .venv
source .venv/bin/activate # Linux/Mac
# 或者
.venv\Scripts\activate # Windows
- 安装依赖: 使用uv安装(推荐):
# 如果尚未安装uv
pip install uv
# 使用uv安装依赖
uv pip install -e .
或使用pip安装:
pip install -e .
-
配置环境变量: 创建
.env
文件,参考.env.example
设置必要的环境变量。 -
创建数据库:
# 确保database目录存在
mkdir -p database
# 创建空的session.db文件
touch database/session.db
# 应用程序首次运行时会自动创建必要的表结构
- 自定义鉴权逻辑:
在
auth/credential.py
中实现您自己的API密钥验证逻辑。
调试方式
启动服务器:
python -m main
# 或使用安装的入口点
start
使用uv启动:
uv run start
使用inspector模式启动(调试):
mcp dev server.py
服务器默认运行在 http://localhost:8000