SuperAPI AI 工具集

fastapi-project-structure

编程与开发

查看项目

更新于 10-16 05:32

技能介绍

用途

FastAPI Project Structure 是一个面向 FastAPI 的项目脚手架技能,提供生产可用的项目模板与最佳实践,帮助构建可扩展、可维护的后端应用,并支持 MCP(Model Context Protocol)集成。它属于 fastapi-backend 插件,版本 1.0.0,类别为项目结构与脚手架,技能类型为模板与自动化。

主要能力

  • 提供多种项目模板:minimal(单文件快速原型)、standard(标准生产结构,含 API 路由、模型、服务)、mcp-server(集成 MCP 服务器的 FastAPI 应用)、full-stack(含认证、数据库、后台任务的完整后端)、microservice(含健康检查、指标等微服务就绪结构)。
  • 通过脚本生成完整目录结构、配置文件(pyproject.toml、.env.example)、主应用入口、设置管理系统,生产模板还包含 Docker 配置与 README。
  • 使用 Pydantic Settings 进行类型安全的配置管理,支持环境变量、环境特定设置(dev、staging、prod)、自动校验与类型转换、嵌套配置。
  • 提供依赖注入模式,包括可复用的认证、数据库、服务依赖,请求级与应用级依赖,以及便于测试的依赖覆盖。
  • 支持 MCP 集成:双模式运行(HTTP + MCP STDIO)、MCP 工具/资源/提示词、通过 .mcp.json 管理配置、兼容 FastMCP 框架。
  • 生产就绪特性:Docker 多阶段构建、健康检查端点、结构化日志、错误处理中间件、CORS 配置、安全响应头。
  • 提供校验脚本,检查目录结构合规性、必需文件(main.py、config.py、pyproject.toml)、Python 语法、依赖声明、环境变量配置、导入结构有效性与类型提示。

使用方式

  1. 选择模板类型(minimal、standard、mcp-server、full-stack、microservice)。
  2. 运行脚手架脚本生成项目: ./scripts/setup-project.sh <project-name> <template-type> 例如:./scripts/setup-project.sh my-api-service standard
  3. 配置应用设置:复制 .env.example 为 .env 并按需修改;配置类位于 app/core/config.py,使用 Pydantic Settings。
  4. 校验项目结构:./scripts/validate-structure.sh <project-directory>
  5. 开发环境初始化:
    • 进入项目目录
    • 创建虚拟环境:python -m venv venv,激活(Windows 为 venv\Scripts\activate)
    • 安装依赖:pip install -e ".[dev]"
    • 运行开发服务器:uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
  6. MCP 集成(可选):复制 MCP 配置模板为 .mcp.json 并编辑;以 MCP 模式运行:python -m app.main --mcp;以 HTTP 模式运行:uvicorn app.main:app --host 0.0.0.0 --port 8000。

适用场景

  • 快速搭建新的 FastAPI 后端项目。
  • 统一团队项目结构与配置规范。
  • 构建需要 MCP 服务器集成的应用。
  • 构建微服务或生产级 API 服务。
  • 需要标准化配置管理、依赖注入与测试结构的项目。

限制

资料未提供该技能的收费、价格、平台兼容性、性能效果等具体信息。使用前需确认本地环境具备 Python 3.11+(模板要求 requires-python >=3.11)及相应依赖。MCP 功能需安装 mcp 包并正确配置 .mcp.json。