副驾模式与枢纽
ConnectorToolAdapter。
核心原则
三层架构
| 层级 | 职责 | 何时变更 |
|---|---|---|
| Platform | 编排、多租户、UI | 平台发布新功能时 |
| Connector Governance Layer | 企业治理策略 | 安全/合规要求发生变化时 |
| MCP Protocol | 传输、工具接口标准 | 永不(开放标准) |
| Legacy System | 业务数据和逻辑 | 永不(这正是其核心所在) |
为什么选择 MCP 作为传输层
- 复用:FIM Agent 已内置 MCP Client (v0.3) 。新增遗留系统适配器时,可复用与接入任何 MCP 工具相同的基础设施。
- 标准协议:MCP 是开放标准。无需自行设计或维护专有协议。
- 生态系统:第三方 MCP 服务器 (数据库、API、SaaS 工具) 可开箱即用。
- 进程隔离:每个 MCP 服务器都以独立进程运行。即使某个适配器行为异常,也不会导致整个平台崩溃。
仅靠 MCP 还无法提供什么
| 关注点 | MCP | 连接器治理层 |
|---|---|---|
| 只读约束 | 否 | 通过操作上的 read_only 标志控制;默认禁止写操作 |
| 审计日志 | 否 | 记录每一次工具调用 (时间戳、用户、工具、参数、结果) |
| 认证透传 | 否 | 代理宿主系统认证;智能体以已登录用户身份执行操作 |
| 确认门 | 否 | 写操作需要人工批准 (SSE confirmation_required) |
| 熔断机制 | 否 | 连接失败时会触发优雅降级 |
| 操作分类 | 否 | 操作标记为读/写/管理,并按级别应用策略 |
为什么不自创协议
部署模型
均由 FIM Agent 提供。客户仅需提供:
- 数据库凭据(建议使用只读账户)
- API 端点和密钥(如有)
- 网络白名单访问权限
| 客户具备的条件 | FIM Agent 的连接方式 |
|---|---|
| 有文档的 API | HTTP API 适配器(最佳情况) |
| 无文档的 API | HTTP API 适配器 + 手动 schema 映射 |
| 仅有数据库访问 | 数据库适配器(直接 SQL,默认只读) |
| 数据库 + 消息总线 | 数据库适配器 + 消息推送适配器 |
智能体-连接器解耦
- 新增 一个系统 = 新增一个连接器配置。智能体代码无需变更。
- 移除 一个连接器 = 移除相应配置。无需修改代码。
- 同一个智能体可以在单个任务中同时使用内置工具和连接器。
热插拔演进
| 版本 | 如何添加新的连接器 | 需要重启吗? |
|---|---|---|
| v0.6 | 编写带有连接器治理层的 Python MCP 服务器,并添加到 docker-compose | 重新部署 |
| v0.8 | 编写 YAML/JSON 配置,由平台生成 MCP 服务器 | 重启 |
| v1.0 | 上传 OpenAPI 规范,AI 自动生成配置 | 无需重启 (热插拔) |
数据流示例
连接器标准化级别
| 级别 | 版本 | 方式 | 构建方 |
|---|---|---|---|
| 第 1 级 | v0.6 | 带连接器治理的 Python MCP 服务器 | FIM Agent 开发者 |
| 第 2 级 | v0.8 | YAML/JSON 配置,由平台自动生成 MCP 服务器 | 实施工程师 (无需 Python) |
| 第 3 级 | v1.0 | 上传 OpenAPI/Swagger 规范,AI 自动生成配置 | AI (经人工审核) |