メインコンテンツまでスキップ

JSON 批量导入

除了通过表单逐个添加,Elftia 还支持通过 JSON 配置一次性导入多个 MCP 服务器。这在以下场景中尤其方便:

  • 从其他工具(如 Claude Desktop、Cursor 等)迁移 MCP 配置
  • 在团队中共享统一的服务器配置
  • 在新设备上快速恢复 MCP 环境
  • 一次性配置多个相关服务器

打开 JSON 导入

  1. 打开 MCP 服务器 页面
  2. 点击 添加 按钮
  3. 在弹出的表单中切换到 JSON 导入 模式

JSON 格式

推荐格式:mcpServers 批量配置

这是推荐的 JSON 格式,与 Claude Desktop 等工具的配置格式兼容。支持一次添加多个服务器:

{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search@latest"],
"env": {
"BRAVE_API_KEY": "your-brave-api-key"
}
},
"web-reader": {
"url": "https://api.example.com/mcp",
"headers": {
"Authorization": "Bearer your-token"
}
}
}
}

单服务器格式

如果只需要添加一个服务器,也可以使用简化格式:

{
"name": "my-server",
"type": "stdio",
"command": "npx",
"args": ["-y", "@example/mcp-server"]
}

JSON 字段说明

mcpServers 格式

mcpServers 对象中,每个键名即为服务器名称,值为配置对象:

字段类型必填说明
commandstringStdio 必填启动命令
argsstring[]命令参数
envobject环境变量键值对
urlstringSSE/HTTP 必填服务器端点 URL
headersobjectHTTP 请求头
typestring传输类型:stdiossehttp

:::info 类型自动推断 如果未指定 type 字段,系统会自动推断:

  • commandstdio
  • urlsse :::

单服务器格式

字段类型必填说明
namestring服务器名称
typestring传输类型,自动推断
commandstringStdio 必填启动命令
argsstring[]命令参数
envobject环境变量
urlstringSSE/HTTP 必填服务器端点 URL
headersobjectHTTP 请求头

完整示例

示例 1:文件系统 + 搜索组合

{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/projects"]
},
"tavily-search": {
"command": "npx",
"args": ["-y", "tavily-mcp@latest"],
"env": {
"TAVILY_API_KEY": "tvly-xxxxxxxxxxxxx"
}
}
}
}

示例 2:GitHub + 数据库

{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxxx"
}
},
"sqlite": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sqlite", "/path/to/database.db"]
}
}
}

示例 3:混合本地和远程服务器

{
"mcpServers": {
"local-files": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/yourname/Documents"]
},
"web-search": {
"url": "https://api.z.ai/api/mcp/web_search_prime/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
},
"web-reader": {
"url": "https://api.z.ai/api/mcp/web_reader/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}

示例 4:Python 工具(使用 uvx)

{
"mcpServers": {
"minimax-tools": {
"command": "uvx",
"args": ["minimax-coding-plan-mcp", "-y"],
"env": {
"MINIMAX_API_KEY": "your-minimax-key",
"MINIMAX_API_HOST": "https://api.minimaxi.com"
}
}
}
}

导入流程

  1. 将 JSON 内容粘贴到输入框
  2. 系统会实时校验 JSON 格式,如有错误会在下方显示提示
  3. 校验通过后点击 保存
  4. 对于 Stdio 服务器,系统会自动检查所需依赖(如 npxuvx
  5. 如依赖缺失,弹出安装提示
  6. 所有服务器添加完成后,自动刷新服务器列表

校验规则

  • JSON 必须是合法的 JSON 格式
  • mcpServers 格式:每个服务器配置必须包含 commandurltype 中的至少一个
  • 单服务器格式:stdio 类型必须有 commandhttp/sse 类型必须有 url
  • 服务器名称不可与已有服务器重复

跨设备共享配置

导出配置

目前 Elftia 的 MCP 配置存储在本地文件 mcp-config 中。你可以通过以下方式导出:

  1. 在 MCP 服务器列表页面编辑某个服务器,查看其完整配置
  2. 手动整理为 JSON 格式后保存为文件共享

从 Claude Desktop 迁移

如果你之前在 Claude Desktop 中配置了 MCP 服务器,可以直接复制其配置文件中的 mcpServers 部分:

  1. 打开 Claude Desktop 配置文件(通常位于 ~/.claude/config.json
  2. 找到 mcpServers 部分
  3. 整理为上述 JSON 格式
  4. 在 Elftia 中使用 JSON 导入

:::caution 注意事项

  • 导入时请确保环境变量中的 API Key 等敏感信息正确无误
  • 导出配置时注意不要泄露 API Key 等敏感信息
  • 文件路径需要根据目标设备的实际路径进行调整 :::

故障排除

JSON 格式错误

症状:输入 JSON 后下方显示红色错误提示。

解决方案

  • 检查 JSON 语法(括号、引号、逗号是否匹配)
  • 使用 JSON 格式化工具验证格式
  • 注意转义字符(如 Windows 路径中的反斜杠需要写成 \\

部分服务器添加失败

症状:批量导入后部分服务器未出现在列表中。

解决方案

  • 检查是否存在同名服务器(名称不可重复)
  • 查看控制台是否有错误信息
  • 尝试将失败的服务器单独使用表单添加

下一步