返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

一行代码,让 FastAPI 应用秒变 MCP 服务器!

[复制链接]
链载Ai 显示全部楼层 发表于 2 小时前 |阅读模式 打印 上一主题 下一主题

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">FastAPI-MCP 是一款ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">零配置工具,可让 FastAPI 应用ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">自动暴露所有端点,并兼容ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">Model Context Protocol (MCP)

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">这意味着你的 FastAPI 应用不仅能被传统客户端调用,还能ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">无缝对接ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">Claude Desktop、Cursor等 AI 代理工具,实现更智能的 API 交互。


ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;display: table;padding: 0.3em 1em;color: rgb(255, 255, 255);background: rgb(51, 51, 51);border-radius: 8px;box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px;">? FastAPI-MCP 是什么?

ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">FastAPI-MCP 是一款ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: inherit;color: rgb(51, 51, 51);">零配置工具,可让 FastAPI 应用自动兼容 Model Context Protocol (MCP),从而:

一行代码集成—— 直接在 FastAPI 挂载 MCP 服务器,无需改动现有代码

自动发现 API—— 无需额外配置,所有端点自动转换为 MCP 工具

保留 API 文档—— 你的 Swagger 文档可在 MCP 生态中直接访问

支持自定义扩展—— 允许额外定义 MCP 工具,增强 API 能力

你的 FastAPI 应用,从此不仅能被传统客户端调用,还能变身智能 API 服务器,供 AI 代理工具高效交互


安装 FastAPI-MCP

你可以通过pipuv进行安装:

# 使用 uv(推荐)
uv add fastapi-mcp

# 或使用 pip
pip install fastapi-mcp

快速上手

假设你已经有一个FastAPI应用,现在**只需一行代码**,就能让它支持MCP

fromfastapiimportFastAPI
fromfastapi_mcpimportadd_mcp_server

# 创建 FastAPI 应用
app = FastAPI()

# 挂载 MCP 服务器
add_mcp_server(
app, # FastAPI 应用
mount_path="/mcp", # MCP 服务器路径
name="My API MCP", # MCP 服务器名称
)

这样,你的 MCP 服务器就可以通过https://your-app.com/mcp访问了!?


进阶用法

FastAPI-MCP 还支持自定义 API 配置,比如:

?启用完整 JSON Schema,适配不同的 LLM 工具

?显示所有可能的响应模式,让 API 更直观

?手动扩展 MCP 工具,增强交互能力

示例代码:

fromfastapiimportFastAPI
fromfastapi_mcpimportadd_mcp_server

app = FastAPI()

# 创建 MCP 服务器并启用高级配置
mcp_server = add_mcp_server(
app,
mount_path="/mcp",
name="My API MCP",
describe_all_responses=True, # 显示所有可能的响应模式
describe_full_response_schema=True# 提供完整 JSON Schema
)

# 额外添加一个 MCP 工具(获取服务器时间)
@mcp_server.tool()
asyncdefget_server_time() ->str:
"""获取服务器当前时间"""
fromdatetimeimportdatetime
returndatetime.now().isoformat()

这样,你的 MCP 服务器不仅支持 API 自动转换,还能扩展自定义 AI 工具!

? 连接 MCP 服务器

FastAPI-MCP 支持SSE(Server-Sent Events)mcp-proxy两种方式,轻松对接 AI 工具:

1️⃣ SSE 方式(适用于 Cursor)

  1. 1. 运行 FastAPI 应用
  2. 2. 在Cursor设置中,填写 MCP 服务器 URL(如http://localhost:8000/mcp
  3. 3. Cursor 将自动发现所有 API 端点

2️⃣ mcp-proxy 方式(适用于 Claude Desktop)

如果 MCP 客户端不支持 SSE(如 Claude Desktop),可以使用mcp-proxy代理:

安装 mcp-proxy

uvtoolinstallmcp-proxy

配置 Claude Desktop

claude_desktop_config.json中添加 MCP 代理配置:

Windows

{
"mcpServers":{
"my-api-mcp-proxy":{
"command":"mcp-proxy",
"args":["http://127.0.0.1:8000/mcp"]
}
}
}

MacOS

{
"mcpServers":{
"my-api-mcp-proxy":{
"command":"/Full/Path/To/Your/Executable/mcp-proxy",
"args":["http://127.0.0.1:8000/mcp"]
}
}
}

找到mcp-proxy的路径:

whichmcp-proxy

Claude Desktop 将自动发现并对接所有 API 端点!?


总结

FastAPI-MCP 让你的FastAPI 应用无缝集成 MCP 生态,只需一行代码,就能让 API 端点自动转换为 AI 代理工具可用的 MCP 工具,同时还保留 Swagger 文档

适用于

✅ 想让 FastAPI自动暴露 API的开发者
✅ 需要与AI 代理(Claude / Cursor)交互的场景
✅ 希望零配置即可对接 MCP 生态的项目

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ