Перейти к основному содержимому

Массовый импорт JSON

Помимо добавления серверов по одному через форму, Elftia также поддерживает одновременный импорт нескольких MCP-серверов с помощью конфигурации JSON. Это особенно удобно в следующих ситуациях:

  • Перенос конфигураций MCP из другого инструмента (например, Claude Desktop или Cursor)
  • Совместное использование единой конфигурации серверов в команде
  • Быстрое восстановление среды 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 каждый ключ является именем сервера, а его значение — объектом конфигурации:

ПолеТипОбязательноеОписание
commandstringОбязательно для StdioКоманда запуска
argsstring[]НетАргументы команды
envobjectНетПары ключ-значение переменных окружения
urlstringОбязательно для SSE/HTTPURL конечной точки сервера
headersobjectНетЗаголовки HTTP-запросов
typestringНетТип транспорта: stdio, sse или http

:::info Автоматическое определение типа Если поле type не указано, система определяет его автоматически:

  • Есть commandstdio
  • Есть urlsse :::

Формат для одного сервера

ПолеТипОбязательноеОписание
namestringДаИмя сервера
typestringНетТип транспорта; определяется автоматически
commandstringОбязательно для StdioКоманда запуска
argsstring[]НетАргументы команды
envobjectНетПеременные окружения
urlstringОбязательно для SSE/HTTPURL конечной точки сервера
headersobjectНетЗаголовки HTTP-запросов

Полные примеры

Пример 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-серверов система автоматически проверяет наличие необходимых зависимостей (например, npx или uvx)
  5. Если зависимость отсутствует, появляется запрос на установку
  6. После добавления всех серверов список серверов автоматически обновляется

Правила проверки

  • JSON должен быть валидным
  • Формат mcpServers: конфигурация каждого сервера должна содержать хотя бы одно из полей: command, url или type
  • Формат для одного сервера: тип stdio требует command; типы http/sse требуют url
  • Имена серверов не должны совпадать с существующими именами серверов

Совместное использование конфигураций на разных устройствах

Экспорт конфигурации

В настоящее время конфигурация MCP в Elftia хранится локально в файле mcp-config. Поделиться ею можно следующим образом:

  1. Откройте редактирование сервера на странице списка MCP-серверов, чтобы просмотреть его полную конфигурацию
  2. Вручную оформите конфигурацию в формате JSON и сохраните её как файл для совместного использования

Миграция из Claude Desktop

Если вы ранее настраивали MCP-серверы в Claude Desktop, можно скопировать раздел mcpServers напрямую из его конфигурационного файла:

  1. Откройте конфигурационный файл Claude Desktop (обычно расположен по адресу ~/.claude/config.json)
  2. Найдите раздел mcpServers
  3. Оформите его в формате JSON, описанном выше
  4. Импортируйте в Elftia с помощью импорта JSON

:::caution Важные примечания

  • Перед импортом убедитесь, что ключи API и другие конфиденциальные значения в переменных окружения указаны верно
  • При экспорте конфигураций будьте осторожны, чтобы не раскрыть ключи API или другую конфиденциальную информацию
  • Пути к файлам необходимо скорректировать в соответствии с реальными путями на целевом устройстве :::

Устранение неполадок

Ошибка формата JSON

Симптом: после ввода JSON под полем появляется красное сообщение об ошибке.

Решение:

  • Проверьте синтаксис JSON (скобки, кавычки и запятые должны быть расставлены правильно)
  • Используйте инструмент форматирования JSON для проверки формата
  • Следите за управляющими символами (например, обратные косые черты в путях Windows нужно писать как \\)

Некоторые серверы не удалось добавить

Симптом: после массового импорта некоторые серверы не появляются в списке.

Решение:

  • Проверьте наличие дублирующихся имён серверов (имена должны быть уникальными)
  • Проверьте консоль на наличие сообщений об ошибках
  • Попробуйте добавить проблемные серверы по отдельности через форму

Следующие шаги