Навыки и серверы MCP в настройках Web UI: включение навыков на лету, области и группы, импорт перетаскиванием, проверка MCP-подключений и…
Model Context Protocol — стандартный способ дать агенту чужие инструменты: GitHub, базу данных, файловую систему, память. DeepSeek Harness подключает MCP-серверы штатным плагином, по одной записи конфигурации на сервер. Дальше о том, где эта запись живёт, как выглядит и что после неё увидит модель.
MCP-сервер — отдельная программа или веб-сервис, который по единому протоколу описывает свои инструменты (имя, параметры, что делает) и выполняет их по запросу. Клиент, в нашем случае DSH, читает этот список, показывает инструменты модели и передаёт серверу вызовы. Выгода в том, что сервер пишется один раз: тот же сервер памяти или GitHub работает с любым агентом, который понимает протокол. Если у вас уже настроены MCP-серверы для другого клиента, те же записи подойдут и здесь, об этом прямо пишет README плагина.
Источники: packages/mcp/mcp-client/README.md, docs/user/guide/mcp-memory.md, проверено 11.09.2026
За MCP отвечает пакет
@deepseek-ai/dsh-mcp-client,
обычный плагин из поставки. На каждый сервер своя запись конфигурации с этим
плагином: сколько серверов, столько записей. В поставке ни одна не включена, MCP
подключается только явно и для каждого сервера отдельно.
stdio — DSH сам запускает локальную
программу и останавливает её вместе с плагином; streamable-http —
DSH подключается к уже работающему сервису по URL. SSE не поддерживается.
mcp__<serverName>__<tool>, например
mcp__github__create_issue. Пространство имён задаёте вы в
serverName, а не сервер, поэтому два сервера с инструментом
search уживаются, а история сессий и правила разрешений переживают
перезапуски. Та же схема имён, что у Claude Code и Codex.
KEY,
TOKEN, SECRET, PASSWORD), и все
DSH_*. Что серверу нужно — передаётся явно через env
в его записи.
В DSH нет отдельного файла mcp.json: серверы описываются там же, где
всё остальное, в слоях конфигурации Cordis. Запись плагина выглядит так (пример из
README пакета, оба транспорта):
- id: mcp-github
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: github
transport: stdio
command: npx
args: ['-y', '@modelcontextprotocol/server-github']
env:
GITHUB_TOKEN: !!js process.env.GITHUB_TOKEN
- id: mcp-web
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: web
transport: streamable-http
url: http://localhost:3000/mcp
headers:
Authorization: !!js '`Bearer ${process.env.MCP_TOKEN}`' Поля записи по README плагина:
| Поле | По умолчанию | Значение |
|---|---|---|
transport | обязательно | stdio или streamable-http |
serverName | обязательно | Пространство имён инструментов: [A-Za-z0-9_-], до 32 символов, уникально в одной области регистрации |
command / args / env / cwd | — | stdio: исполняемый файл, аргументы, переменные поверх очищенного окружения, рабочая папка |
url / headers | — | streamable-http: адрес и дополнительные заголовки |
toolCallTimeoutMs | 60 000 | Тайм-аут одного вызова инструмента |
failOnStartupError | false | Прерывать запуск DSH, если первое подключение не удалось (иначе DSH стартует без инструментов сервера) |
reconnect.* | включено | enabled, initialDelayMs 500, maxDelayMs 30 000, maxAttempts 10 |
Исчерпывающий список полей — в генерируемом
каталоге конфигурации
репозитория (раздел про dsh-mcp-client).
В репозитории есть руководство
«Connect a third-party memory MCP server»
и три готовых оверлея в apps/cli/config/examples/mcp-memory/:
Memorix, эталонный сервер памяти из проекта MCP и Engram. Все три выключены по
умолчанию, и DeepSeek отдельно оговаривает, что это примеры совместимости, а не
рекомендация. Для разбора я беру эталонный сервер: ему не нужны ни модель, ни
сервис эмбеддингов, а значит, меньше мест, где что-то пойдёт не так.
Поставьте сервер. DSH его запустит, но скачивать и инициализировать не будет, это ваша часть работы:
npm install --global @modelcontextprotocol/server-memory@2026.7.4
Посмотрите оверлей mcp-reference-memory.cordis.yml из репозитория.
Это тот же формат, что выше, только обёрнутый в insert: так запись
добавляется в дерево плагинов:
- insert:
- id: memory-mcp-reference
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: reference_memory
transport: stdio
command: mcp-server-memory
cwd: !!js process.cwd()
env:
MEMORY_FILE_PATH: !!js >-
process.env.MEMORY_FILE_PATH?.trim() || '…/.dsh-mcp-reference-memory.jsonl'
В оригинале путь к файлу памяти вычисляется выражением JavaScript от домашней
папки, здесь я его сократил. Хранилище получается в $HOME, а не внутри
пакета npm; переменная MEMORY_FILE_PATH переопределяет путь.
Запустите Web UI с оверлеем на один раз (из клона репозитория путь такой; скопированный файл может лежать где угодно):
dsh web --patch "$PWD/apps/cli/config/examples/mcp-memory/mcp-reference-memory.cordis.yml"
Чтобы не передавать --patch при каждом запуске, перенесите блок
insert в пользовательский слой: $DSH_HOME/profiles/web/cordis.patch.yml
для одного профиля или $DSH_HOME/cordis.patch.yml для всех профилей
на машине. Руководство предупреждает: не копируйте файл поверх существующего,
там могут быть другие ваши патчи. Порядок слоёв (бандлы → патч профиля →
домашний патч → --patch) описан в
справочнике CLI и в нашей
инструкции по плагинам.
Другой сервер подключается той же записью: уникальный id, свой
serverName, для локальной программы — command, для
удалённого сервиса — transport: streamable-http, url
и headers.
Руководство предлагает простой тест в три шага. В сессии A попросите агента
запомнить какое-нибудь приметное значение («my validation drink is lapsang-…») и
убедитесь, что он вызвал инструмент записи. Откройте сессию B в том же запущенном
DSH, ничего из переписки не копируя, и спросите это значение, попросив заглянуть в
память: агент должен вызвать поиск и вернуть его. Потом попросите использовать
значение в новом ответе. Новая сессия нужна, перезапуск нет. И одна засада: первое
обнаружение инструментов асинхронное, так что подождите, пока в списке появятся
имена с префиксом mcp__reference_memory__, и только потом отправляйте
запрос.
Если сервер не отзывается на старте, DSH всё равно запустится, а в логе будет
ошибка и инструментов этого сервера не будет; failOnStartupError: true
превращает это в остановку запуска. Если инструменты описаны невнятно и модель не
пользуется памятью сама, руководство советует добавить в инструкции модели одну
фразу: когда пользователь просит что-то запомнить — вызывать инструмент записи,
когда может пригодиться история — искать в памяти.
В каталоге 192 плагинов упоминают MCP.
Их два типа. Первый: панели управления. Официальный Web UI, судя по
документации, экрана для MCP не имеет, и сообщество добавило свои, с формами для
stdio и HTTP, импортом mcpServers из JSON других клиентов и статусом
подключений.
Навыки и серверы MCP в настройках Web UI: включение навыков на лету, области и группы, импорт перетаскиванием, проверка MCP-подключений и…
Панель наблюдения за MCP-клиентом DSH (только чтение): статус подключений, список инструментов, ошибки и число переподключений; команда…
Визуальное управление MCP-серверами в Web UI: добавление, удаление, включение и отключение серверов и статус подключения в разделе…
Маркетплейс MCP-серверов с реестром из более чем 100 коннекторов: поиск, авторизация через OAuth 2.0 PKCE или API-ключ, stdio/HTTP, импорт…
Бережёт контекст: каталогизирует инструменты MCP и навыки, делит их на постоянные, по запросу и запрещённые, редкие вызывает через…
Бэкап, экспорт, импорт и перенос всей конфигурации DSH (настройки, плагины, MCP, навыки, рабочие области) с шифрованием секретов и…
Второй: готовые серверы, упакованные в бандл. Плагин привозит ту самую
запись dsh-mcp-client с нужным сервером, и подключение сводится к
команде установки. Есть и совсем прикладные, например поиск по российским
маркетплейсам.
Конфигурационный бандл, монтирующий Ouroboros через MCP-клиент DSH: 36 инструментов интервью, Seed-спецификаций, выполнения, оценки и…
Подключает dsh к локальному рантайму SandBase Harness по stdio MCP: список агентов, сессии, потоковые ходы, артефакты и отмена задач.
Регистрирует локальный MCP-сервер flowix-cli: агент ищет, читает, создаёт и редактирует заметки Flowix и артефакты-майндмэпы.
14 навыков и два MCP для 11 российских маркетплейсов: сравнение цен Wildberries, Яндекс Маркета и «Детского мира», поиск и отзывы на Ozon…
MCP-сервер рыночных данных без ключей: 5 инструментов с котировками акций Китая, Гонконга и США, секторами, фьючерсами, потоками средств и…
MCP bridge to gemini.google.com: vision analysis of images and videos, Imagen image and Veo video generation, and conversation management…
dsh plugin --profile web add github:ConsoleSun/Gemini-Eyes Полные списки — в категориях «Инструменты», «Память» и «Разработка и рантайм»; как ставить и чем это рискованно — в инструкции по установке плагинов. MCP-сервер, как и плагин, — чужой код с вашими правами: stdio-сервер запускается на вашей машине вне песочницы агента.
Второй продукт на этом сайте, Hermes Agent, решает ту же задачу иначе: серверы
описываются блоком mcp_servers в config.yaml, а конфиг
Claude Code импортируется одной командой. Если выбираете между двумя агентами,
есть с чем сравнить: MCP в Hermes Agent.
cordis.patch.yml, безопасность.