mcps / memory-bank /systemPatterns.md
airsltd's picture
update
4b2a02f

系统模式

系统架构:

  • 核心服务: 基于 FastAPI 构建的 ASGI 应用程序,作为所有 MCP 应用的统一入口。
  • MCP 应用: 每个 MCP 应用(例如 app01app02airs_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 应用实例(例如 App01App02Tasks)内部包含一个 FastMCP 实例。
  • app.py 将每个 MCP 应用的 mcp.sse_app() 挂载到其对应的 URL 路径。