mcps / memory-bank /systemPatterns.md
airsltd's picture
update
4b2a02f
# 系统模式
**系统架构:**
* **核心服务:** 基于 FastAPI 构建的 ASGI 应用程序,作为所有 MCP 应用的统一入口。
* **MCP 应用:** 每个 MCP 应用(例如 `app01``app02``airs_tasks`)都是一个独立的 Python 模块,通过 `FastMCP` 实例管理其工具和资源。
* **挂载机制:** FastAPI 使用 `app.mount` 方法将每个 MCP 应用的 SSE 端点挂载到特定的 URL 路径下(例如 `/app01``/app02``/tasks`)。
**关键技术决策:**
* **FastAPI:** 选择 FastAPI 作为 Web 框架,因为它提供了高性能、易于使用的 API 开发能力,并内置了对 ASGI 的支持。
* **FastMCP:** 使用 FastMCP 库来简化 MCP 应用程序的创建和管理,包括工具注册和 SSE 端点暴露。
* **单端口多应用:** 通过 FastAPI 的路由和挂载功能,实现在单个端口上服务多个独立的 MCP 应用,降低了部署复杂性。
**设计模式:**
* **模块化设计:** 每个 MCP 应用都是一个独立的模块,易于开发、测试和维护。
* **统一接口:** 所有 MCP 应用都通过 `mcp.sse_app()` 方法提供统一的 SSE 端点,方便集成。
**组件关系:**
* `app.py` (主应用) 导入并初始化各个 MCP 应用实例。
* 每个 MCP 应用实例(例如 `App01``App02``Tasks`)内部包含一个 `FastMCP` 实例。
* `app.py` 将每个 MCP 应用的 `mcp.sse_app()` 挂载到其对应的 URL 路径。