当前位置: 首页 > article >正文

FastAPI MCP 快速入门教程

目录

    • 什么是 FastAPI MCP?
    • 项目设置
      • 1. 初始化项目
      • 2. 安装依赖
      • 3. 项目结构
    • 编写代码
      • 创建主应用文件
    • 运行和测试
      • 1. 启动服务器
      • 2. 使用 MCP Inspector 测试

什么是 FastAPI MCP?

FastAPI MCP 是一个将 FastAPI 应用程序转换为 Model Context Protocol (MCP) 服务器的库。它允许 AI 助手通过标准化的协议访问你的 API 端点。

项目设置

1. 初始化项目

uv init fastapi-mcp-quickstart
cd fastapi-mcp-quickstart
uv venv
source .venv/bin/activate  # Linux/Mac
# 或者在 Windows 上:
.venv\Scripts\activate

2. 安装依赖

uv add fastapi-mcp

3. 项目结构

你的项目结构应该如下所示:

fastapi-mcp-quickstart/
├──.venv/
├── .gitignore
├── .python-version
├── README.md
├── main.py
├── pyproject.toml
└── uv.lock

编写代码

创建主应用文件

创建 main.py文件:

from fastapi import FastAPI
from fastapi_mcp import FastApiMCP# Create (or import) a FastAPI app
app = FastAPI()@app.get("/", operation_id="get_user_info")
async def read_user():return {"user_id"}mcp = FastApiMCP(app)mcp.mount()if __name__ == "__main__":import uvicornuvicorn.run(app, host="0.0.0.0", port=8000)

运行和测试

1. 启动服务器

uv run main.py

或者:

uvicorn main:app --host 0.0.0.0 --port 8000 --reload

服务器启动后,你的 MCP 服务器将在 http://127.0.0.1:8000/mcp 运行。

2. 使用 MCP Inspector 测试

打开新的终端窗口,运行 MCP Inspector:

npx @modelcontextprotocol/inspector

然后:

  1. 连接到 MCP 服务器:在 Inspector 中输入 http://localhost:8000/mcp
  2. 查看可用工具:导航到 “Tools” 部分,点击 “List Tools” 查看所有可用端点
  3. 测试端点
    • 选择一个工具(如 get_user_info
    • 填写必要参数(如果有)
    • 点击 “Run Tool” 执行
  4. 查看结果:检查返回的响应数据

请添加图片描述

http://www.lryc.cn/news/2396025.html

相关文章:

  • uni-app学习笔记二十一--pages.json中tabBar设置底部菜单项和图标
  • 【Redis】基本命令
  • 爬虫工具链的详细分类解析
  • 鸿蒙编译ffmpeg库
  • 哈希:闭散列的开放定址法
  • Unity-QFramework框架学习-MVC、Command、Event、Utility、System、BindableProperty
  • FPGA实现CNN卷积层:高效窗口生成模块设计与验证
  • LeetCode 3068.最大节点价值之和:脑筋急转弯+动态规划(O(1)空间)
  • 2.2HarmonyOS NEXT高性能开发技术:编译优化、内存管理与并发编程实践
  • BLIP-2
  • 【Go-6】数据结构与集合
  • 支持向量机(SVM)例题
  • SQL中各个子句的执行顺序
  • PHP下实现RSA的加密,解密,加签和验签
  • 本地部署消息代理软件 RabbitMQ 并实现外部访问( Windows 版本 )
  • 每日c/c++题 备战蓝桥杯(P2240 【深基12.例1】部分背包问题)
  • Java异步编程:CompletionStage接口详解
  • Java后端接受前端数据的几种方法
  • Oracle OCP认证的技术定位怎么样?
  • powershell7.5@.net环境@pwsh7.5在部分windows10系统下的运行问题
  • 基于微信小程序的垃圾分类系统
  • CSS3 渐变、阴影和遮罩的使用
  • Spring Boot 全局配置文件优先级
  • 流媒体基础解析:视频清晰度的关键因素
  • grid网格布局
  • C#数字金额转中文大写金额:代码解析
  • Vehicle HAL(2)--Vehicle HAL 的启动
  • JS中的函数防抖和节流:提升性能的关键技术
  • Android Compose开发架构选择指南:单Activity vs 多Activity
  • 【Netty系列】Reactor 模式 1