MCP Gateway 系统的整体架构设计和模块说明
概述了 MCP Gateway 系统的整体架构,包括网关本身、管理后台、配套 API、存储机制以及与外部服务的集成方式。
架构图正在更新中,将在后续版本中提供详细的系统架构图。
MCP Gateway 是系统的核心组件,负责处理所有的 MCP 协议请求:
/*
监听所有 HTTP 请求请求路由
根据路由前缀和后缀(/sse
、/message
、/mcp
)进行请求分发
协议解析
对 JSON-RPC 格式进行解析,提取方法与参数
服务调用
针对外部服务发起调用并解析结果
配置读取
动态加载和应用配置信息
提供可视化的管理界面,包含以下核心模块:
代理配置模块
用于配置 MCP 网关代理和工具,支持图形化配置界面
对话实验台
用于测试 MCP 的简易 Chat,主要提供给开发者和需要集成到自研系统中的用户参考
用户管理模块
用户权限、信息维护和访问控制
提供完整的后端 API 服务:
存储所有 MCP 服务、工具、路由等配置信息:
YAML 文件形式,适合开发环境
轻量级数据库,适合单机部署
企业级数据库,适合生产环境
存储用户数据、会话记录等:
MCP Gateway 设计为与现有业务系统无缝集成:
REST API 服务
支持标准的 REST API 调用,包括 GET、POST、PUT、DELETE 等方法
Webhook 服务
支持 Webhook 回调和事件触发机制
数据库服务
可直接与现有数据库系统集成,支持多种数据库类型
请求接收
MCP Client 发送请求到 MCP Gateway 的指定端点
协议解析
Gateway 解析 MCP 协议格式,提取工具调用信息
配置查找
根据工具名称查找对应的配置信息
服务调用
使用配置的模板和参数调用后端服务
响应处理
处理后端服务响应,转换为 MCP 协议格式
结果返回
将处理结果返回给 MCP Client
所有服务运行在同一台机器上,适合开发和测试环境
各个组件独立部署,支持横向扩展和负载均衡
使用 Docker 和 Kubernetes 进行容器化部署
MCP Gateway 采用模块化设计,支持以下扩展:
想要深入了解各个组件的具体实现,请参考对应的配置文档和开发指南。