用途
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 语法、依赖声明、环境变量配置、导入结构有效性与类型提示。
使用方式
- 选择模板类型(minimal、standard、mcp-server、full-stack、microservice)。
- 运行脚手架脚本生成项目:
./scripts/setup-project.sh <project-name> <template-type>例如:./scripts/setup-project.sh my-api-service standard - 配置应用设置:复制 .env.example 为 .env 并按需修改;配置类位于 app/core/config.py,使用 Pydantic Settings。
- 校验项目结构:
./scripts/validate-structure.sh <project-directory> - 开发环境初始化:
- 进入项目目录
- 创建虚拟环境:
python -m venv venv,激活(Windows 为venv\Scripts\activate) - 安装依赖:
pip install -e ".[dev]" - 运行开发服务器:
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
- 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。