我做的这个项目是一个基于 DDD 和 Spring AI 的 AI Agent 执行平台,核心目标是把原来写死在代码里的模型、Prompt、Advisor、MCP 工具和执行流程,抽象成可配置、可动态装配的能力。

在执行层我设计了三种模式:Fixed 适合固定链路调用,Flow 适合先规划再执行,Auto 适合自主分析、执行、监督和总结,这样平台可以适配不同复杂度的 Agent 任务。

同时项目还集成了 MCP 工具调用和 RAG 知识检索能力。MCP 这块支持 SSE 和 Stdio 两种方式接入外部工具;RAG 这块实现了文档解析、切片、向量化入 PGVector,并通过 Advisor 在模型调用前做相似度检索和上下文增强。

这个项目最大的价值,是把 AI Agent 从单次模型调用,做成了一个可配置、可编排、可扩展的平台,降低了 AI 应用的开发和迭代成本。

这个项目是一个面向 AI Agent 的 MCP Gateway。

背景是企业内部很多已有能力都是传统 HTTP/OpenAPI 接口,但 Agent 侧更适合通过 MCP 协议以 Tool 的方式标准化调用。如果每接一个服务都单独做适配,成本高、也不利于统一治理。

所以我做了一层网关,一端对接 Agent 的 MCP 协议,一端对接企业内部已有 HTTP 服务,把这些服务统一封装成 MCP Tool。项目里我主要做了四件事:

第一,基于 SSE + JSON-RPC 打通 MCP 的会话通信链路,包括 session 创建、消息分发、工具调用和结果回传;

第二,支持从 OpenAPI 自动解析出 HTTP 协议配置和字段映射,降低已有接口接入 Agent 的改造成本;

第三,把网关、工具、协议、参数映射都做成配置化,而不是硬编码,提升扩展性;

第四,补齐 API Key 鉴权、有效期校验和限流这些治理能力,让整个调用链路更安全、可控。

这个流程其实很简单,用户在前端画布上拖拽 Agent、Model、Prompt、MCP 这些节点,并配置参数、连接链路后,前端会实时生成一份结构化流程数据,主要包括节点信息和节点之间的连线关系。点击保存时,我们会把这份流程数据序列化成 JSON,通过接口提交给后端存库;后续再编辑时,再根据配置 ID 把这份 JSON 查回来,重新回显到画布上。这样就实现了可视化编排、配置持久化和再次编辑的闭环。