前言

若你之前已经开发部署了大量 FastAPI 接口服务,打算让 LLM 调用这些已有的 API 服务来查询数据,执行任务。通常,需要将已有的 API 服务改写为支持 MCP 协议的服务:手写大量的“胶水代码”,定义工具(Tool)。工作繁琐,且容易出错。

如何快速将已有的 API 服务转换成 MCP 服务呢?

本文介绍一个开源项目:https://github.com/tadata-org/fastapi_mcp,几行代码就把现有 FastAPI 接口升级为支持 MCP 协议的工具服务,并保留原有的鉴权、数据校验和文档,极大降低了传统 API 与 AI 工作流之间的集成门槛,支持独立部署、SSE 流式传输、实时文档同步等功能。

什么是 FastAPI-MCP
  • GitHub: https://github.com/tadata-org/fastapi_mcp
  • 官方文档: https://fastapi-mcp.tadata.com/

FastAPI-MCP 是一个能将现有的 FastAPI 接口(Endpoints)自动转换并暴露为模型上下文协议(Model Context Protocol)工具服务的框架。

这意味着,不需要为 LLM 重写任何 API 调用逻辑。FastAPI-MCP 会自动读取 FastAPI 应用的路由、Pydantic 模型、甚至是接口文档,然后生成完全符合 MCP 规范的工具集,让 LLM 可以直接理解和调用。

FastAPI-MCP 特性

  • 🛡️自带认证:直接复用 FastAPI 中已有的安全依赖(Depends())。无论是 HTTPBearer 令牌认证还是复杂的 OAuth2 流程,都无需为 LLM 重复开发,安全性无缝继承。
  • 零/极简配置:大多数情况下,需要两行代码就能完成所有设置,真正做到“即插即用”。
  • 📚保留结构与文档:精确地将 Pydantic 模型和接口文档(docstrings)翻译成 LLM 能理解的工具输入/输出结构(Schema)和描述,保证了调用时的准确性。
  • 🔧灵活部署:可以将 MCP 服务直接挂载到现有的 FastAPI 应用上,也可以将其作为独立服务分开部署。
  • 高效通信:通过 ASGI 接口直接与 FastAPI 应用通信,避免了从 MCP 服务到 API 服务的额外 HTTP 调用,延迟更低,效率更高。
安装步骤

安装 fastapi-mcp 包,使用 uv 工具或 pip 进行安装。

使用 uv (推荐):

uv add fastapi-mcp

使用 pip:

pip install fastapi-mcp
代码示例

1、基础用法

假设已经有了一个标准的 FastAPI 应用 app。现在,想让它所有的 API 都能被 LLM 调用。

  • FastApiMCP(app):自动完成了所有 API 的扫描和转换
  • mcp.mount_http():创建了一个新的接口(默认为 /mcp),这个接口就是 LLM 和应用沟通的桥梁。
from fastapi import FastAPIfrom fastapi_mcp import FastApiMCP# 已有的 FastAPI app app = FastAPI()# 1. 从你的 FastAPI app 创建一个 MCP 实例mcp = FastApiMCP(app)# 2. 将 MCP 服务挂载到你的 app 上mcp.mount_http()# 启动服务if __name__ == "__main__":    import uvicorn    uvicorn.run(app, host="0.0.0.0", port=8000)

2、无缝集成现有认证

假设应用中有一个需要授权才能访问的接口。已有的FastAPI 应用代码如下:

from fastapi import Depends, FastAPIfrom fastapi.security import HTTPBearer app = FastAPI()token_auth_scheme = HTTPBearer()# 一个受保护的接口,必须提供有效的 Bearer Token@app.get("/private")async def private(token: str = Depends(token_auth_scheme)):    return {"message": f"Your token is: {token.credentials}"}

现在,如何让 LLM 在调用这个工具时也带上认证信息?使用 FastAPI-MCP,几乎不需要做任何额外的事:

from fastapi_mcp import FastApiMCP, AuthConfig# ... (前面的 app 和 token_auth_scheme 定义)# 创建 MCP 服务时,将 FastAPI 中已有的 Depends(token_auth_scheme) 传递给 AuthConfig# 通过 AuthConfig 告诉 FastApiMCP 需要哪些认证依赖mcp = FastApiMCP(    app,    name="Protected MCP",    auth_config=AuthConfig(        dependencies=[Depends(token_auth_scheme)], # 把认证依赖传进去    ),)# 挂载服务mcp.mount_http()

当 MCP 客户端尝试调用这个受保护的工具但未提供 Authorization 头时,FastAPI-MCP 会正确地返回 401 Unauthorized,从而触发客户端启动标准的 OAuth 流程,引导用户完成登录并获取Token,然后用这个 Token 再次调用工具。整个过程完全符合现代安全实践,而几乎没写任何额外的认证代码!

3、选择性暴露的 API

我们可能不想把所有的 API 都暴露给 LLM。FastAPI-MCP 同样提供了非常灵活的过滤机制,可以通过 operation_id 或 tags 来精确控制。这种灵活性使得管理和维护面向 LLM 的工具集变得异常轻松和安全。

# 仅暴露 operation_id 为 "get_item" 和 "list_items" 的接口include_operations_mcp = FastApiMCP(    app,    name="Item API MCP - Included Operations",    include_operations=["get_item", "list_items"],)# 暴露除了带有 "search" 标签以外的所有接口exclude_tags_mcp = FastApiMCP(    app,    name="Item API MCP - Excluded Tags",    exclude_tags=["search"],)# 挂载不同的 MCP 服务到不同的路径include_operations_mcp.mount_http(mount_path="/include-operations-mcp")exclude_tags_mcp.mount_http(mount_path="/exclude-tags-mcp")

以上是 FastAPI-MCP 项目介绍。该项目对 FastAPI 开发者十分友好,可以将已有的 API 服务快速高效地转换为 MCP 工具服务,从而将现有的业务能力赋能给大模型。

最后

为什么要学AI大模型

当下,⼈⼯智能市场迎来了爆发期,并逐渐进⼊以⼈⼯通⽤智能(AGI)为主导的新时代。企业纷纷官宣“ AI+ ”战略,为新兴技术⼈才创造丰富的就业机会,⼈才缺⼝将达 400 万!

DeepSeek问世以来,生成式AI和大模型技术爆发式增长,让很多岗位重新成了炙手可热的新星,岗位薪资远超很多后端岗位,在程序员中稳居前列。

在这里插入图片描述

与此同时AI与各行各业深度融合,飞速发展,成为炙手可热的新风口,企业非常需要了解AI、懂AI、会用AI的员工,纷纷开出高薪招聘AI大模型相关岗位。
在这里插入图片描述
最近很多程序员朋友都已经学习或者准备学习 AI 大模型,后台也经常会有小伙伴咨询学习路线和学习资料,我特别拜托北京清华大学学士和美国加州理工学院博士学位的鲁为民老师给大家这里给大家准备了一份涵盖了AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频 全系列的学习资料,这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

AI大模型系统学习路线

在面对AI大模型开发领域的复杂与深入,精准学习显得尤为重要。一份系统的技术路线图,不仅能够帮助开发者清晰地了解从入门到精通所需掌握的知识点,还能提供一条高效、有序的学习路径。

img

但知道是一回事,做又是另一回事,初学者最常遇到的问题主要是理论知识缺乏、资源和工具的限制、模型理解和调试的复杂性,在这基础上,找到高质量的学习资源,不浪费时间、不走弯路,又是重中之重。

AI大模型入门到实战的视频教程+项目包

看视频学习是一种高效、直观、灵活且富有吸引力的学习方式,可以更直观地展示过程,能有效提升学习兴趣和理解力,是现在获取知识的重要途径

在这里插入图片描述
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

海量AI大模型必读的经典书籍(PDF)

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。
在这里插入图片描述

600+AI大模型报告(实时更新)

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
在这里插入图片描述

AI大模型面试真题+答案解析

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
在这里插入图片描述

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

Logo

更多推荐