fastapi-mcp 是一個專為流行的 Python Web 框架 FastAPI 所設計的擴充套件。它的核心功能是讓開發者能夠以極低甚至零配置的方式,將現有的 FastAPI API 端點 (endpoints) 自動轉換並暴露為符合模型內容協定 (Model Context Protocol, MCP) 的工具,從而讓大型語言模型 (LLM) 應用程式可以直接呼叫這些 API。
核心理念:FastAPI 優先 (FastAPI-first)
與其它的 OpenAPI 轉換器不同,fastapi-mcp 的設計理念是「FastAPI 優先」。這意味著它不僅僅是讀取 API 文件,而是深度整合 FastAPI 的原生特性,帶來了多項關鍵優勢:
原生認證與授權:這是 fastapi-mcp 最亮眼的功能之一。開發者可以直接複用 FastAPI 中已經寫好的依賴注入系統 (Depends()) 來保護 MCP 工具。無論是基於 Token、OAuth2 還是其他複雜的認證邏輯,都無需重寫,AI 呼叫工具時會受到和原始 API 同樣的安全保護。
無縫整合與高效能:它可以直接掛載到現有的 FastAPI 應用程式上,透過 ASGI 介面直接通訊,避免了 MCP 伺服器到 API 伺服器之間額外的 HTTP 網路呼叫,確保了高效能。
保留完整的結構與文件:此工具能完整保留 FastAPI 端點的請求/回應模型 (基於 Pydantic) 和 Swagger/OpenAPI 文件。這代表 AI 能夠精確地理解每個工具需要什麼參數、會回傳什麼格式的資料,以及這個工具的具體用途,大幅提升了呼叫的準確性。
主要功能與特點
FastApiMCP 實例化並掛載到 FastAPI 應用上,它就能自動掃描所有 API 路由,並將其轉換為 MCP 工具。總結來說,fastapi-mcp 是連接 FastAPI 生態與新興 AI 代理 (Agent) 生態的完美橋樑。它讓廣大的 FastAPI 開發者能夠以最低的成本、最熟悉的方式,將自己已有的服務能力賦予 AI,是快速將現有應用「AI 化」的強大工具。