MCP 管理支持批量导入
Author: 1lckCreated Sep 2, 2026Updated Sep 8, 2026
Labelskind/featurearea/MCP
关联总需求:#14107 关联导出:#15806 关联克隆:#15808
背景
MCP 列表目前不支持批量导入,需要支持通过导出文件快速恢复或迁移 MCP 配置。
方案
- 导入格式与批量导出一致,使用
McpServerDetailInfo[]JSON 数组,一个文件可包含多个 MCP。 - 上传后校验文件大小、MCP 数量、字段内容、Tools/Resources 数量及 endpoint 配置。
- 整个文件格式错误时直接失败;单条数据无效时跳过,并返回逐条处理结果。
- 通过 MCP lifecycle 逻辑创建资源,不直接写底层 Config。
- 默认创建 draft,不直接发布上线。
- 使用
ABORT、SKIP、OVERWRITE处理目标资源冲突。 - 导入时校验目标 namespace 的普通写权限和 AI visibility 权限。
REF类型保留原始 namespace、group、service 引用,不自动复制或删除被引用的 Naming Service。- owner、scope、labels 等元数据的处理规则需要明确,内部 ID 不应直接导入。
处理流程
- 接收 multipart JSON 文件,先校验文件大小和基础格式。
- 使用 Jackson 解析为
McpServerDetailInfo[],校验总数量和单条内容。 - 对每条数据校验名称、版本、Tools/Resources、endpoint 及 REF 引用。
- 按冲突策略预检查目标 MCP。
- 合法条目通过 lifecycle service 创建或更新 draft。
- 返回成功、跳过、失败数量及逐条结果。
整文件解析失败时不执行写入;单条校验失败时不影响其他合法条目。
待确认
- 文件大小、MCP 数量及 Tools/Resources 数量限制是否需要配置化。
- 导入后的 draft 是否允许在同一流程中选择发布。
- REF 引用不存在或无访问权限时,是否直接跳过该 MCP。
- owner、scope、labels 是否保留源数据,还是按目标环境重新生成。
Source: alibaba/nacos