Протокол контекста модели (MCP)
Подключите ИИ-агента к своему производству
Одна настройка дает агенту инструменты Золотенков МРП. Отдельный сервер или программная прослойка на вашей стороне не нужны.
Клиента вы выбираете сами: ниже готовые рецепты для 8 самых распространенных — Claude Code, Codex CLI, Gemini CLI, Cursor, VS Code с Copilot, приложения Claude — и для самостоятельных агентов OpenClaw и OpenHands, которые работают без человека за экраном. Для любого другого клиента дальше есть общий формат.
Шаг 1
Выпустите отдельный ключ для агента
В разделе «Настройки → API-ключи» создайте ключ, назовите его по агенту и оставьте только необходимые действия. Значение показывается один раз.
Открыть API-ключиБезопасный профиль на старте
- ●Начните с прав только на чтение.
- ●Выберите короткий срок действия ключа.
- ●Не передавайте ключ в сообщении агенту — храните его в настройках клиента.
- ●Добавляйте право записи только под проверенный сценарий.
Шаг 2
Настройте своего клиента
Сервер для всех клиентов один и тот же — различаются только место настройки и имена полей. Выберите вкладку своего клиента и повторите рецепт.
- Транспорт
- streamable HTTP (
http) - Адрес
- https://mrp.zolotenkov.ru/api/external/v1/mcp
- Заголовок
- Authorization: Bearer <ключ>
Две строки в терминале
Где окажется настройка: личная настройка ~/.claude.json — вне репозитория, во всех ваших проектах
read -rs ZOLOTENKOV_MRP_TOKEN && export ZOLOTENKOV_MRP_TOKEN
claude mcp add --transport http zolotenkov-mrp --scope user \
https://mrp.zolotenkov.ru/api/external/v1/mcp \
--header "Authorization: Bearer $ZOLOTENKOV_MRP_TOKEN" - Первая строка просит ключ и кладет его в переменную окружения
ZOLOTENKOV_MRP_TOKEN: значение не отобразится на экране и не попадет в историю команд. - Флаг
--scope userпишет сервер в вашу личную настройку. Альтернативный--scope projectположил бы его в файл.mcp.jsonв корне проекта, а этот файл уезжает в git всей команде вместе с ключом. - Успех подтверждается строкой
Added zolotenkov-mrp. Она означает, что настройка записана, а не что связь проверена.
Проверка в этом клиенте: claude mcp list в терминале или команда /mcp внутри сессии: рядом с zolotenkov-mrp должно стоять «Connected».
Одна команда, ключ остается в окружении
Где окажется настройка: ~/.codex/config.toml, блок [mcp_servers.zolotenkov-mrp]
read -rs ZOLOTENKOV_MRP_TOKEN && export ZOLOTENKOV_MRP_TOKEN
codex mcp add zolotenkov-mrp \
--url https://mrp.zolotenkov.ru/api/external/v1/mcp \
--bearer-token-env-var ZOLOTENKOV_MRP_TOKEN - В файл настроек попадает только имя переменной (
bearer_token_env_var = "ZOLOTENKOV_MRP_TOKEN"), значения ключа там нет. - Обратная сторона: переменная должна быть в окружении той оболочки, из которой вы запускаете
codex. Для постоянной работы добавьтеexport ZOLOTENKOV_MRP_TOKEN=…в файл своей оболочки — например,~/.zshrc. - Тот же блок можно написать руками:
url = "https://mrp.zolotenkov.ru/api/external/v1/mcp"иbearer_token_env_var = "ZOLOTENKOV_MRP_TOKEN"внутри[mcp_servers.zolotenkov-mrp].
Проверка в этом клиенте: codex mcp list — сервер в перечне и включен.
Файл mcp.json в домашней папке
Где окажется настройка: ~/.cursor/mcp.json для всех проектов, .cursor/mcp.json — только для одного
{
"mcpServers": {
"zolotenkov-mrp": {
"url": "https://mrp.zolotenkov.ru/api/external/v1/mcp",
"headers": {
"Authorization": "Bearer ${env:ZOLOTENKOV_MRP_TOKEN}"
}
}
}
} - Подстановка
${env:ZOLOTENKOV_MRP_TOKEN}берет ключ из переменной окружения — в файле остается только ее имя. - Файл
.cursor/mcp.jsonвнутри проекта попадает в git. Кладите туда сервер только с подстановкой и никогда — с готовым ключом.
Проверка в этом клиенте: «Settings → MCP»: сервер помечен подключенным и раскрывает список инструментов.
Ключ спрашивается один раз и хранится в редакторе
Где окажется настройка: .vscode/mcp.json в проекте либо личный файл: палитра команд → «MCP: Open User Configuration»
{
"inputs": [
{
"type": "promptString",
"id": "zolotenkov-mrp-token",
"description": "Ключ Золотенков МРП",
"password": true
}
],
"servers": {
"zolotenkov-mrp": {
"type": "http",
"url": "https://mrp.zolotenkov.ru/api/external/v1/mcp",
"headers": {
"Authorization": "Bearer ${input:zolotenkov-mrp-token}"
}
}
}
} - Ключ верхнего уровня здесь —
servers, а неmcpServers: блок из соседних вкладок редактор не прочитает. - Подстановка
${input:…}заставит редактор спросить ключ при первом запуске и сохранить его в своем хранилище секретов. В файл, который уезжает в git, значение не попадает.
Проверка в этом клиенте: Палитра команд → «MCP: List Servers» → выбрать сервер → «Show Output».
Настройка в settings.json
Где окажется настройка: ~/.gemini/settings.json
{
"mcpServers": {
"zolotenkov-mrp": {
"httpUrl": "https://mrp.zolotenkov.ru/api/external/v1/mcp",
"headers": {
"Authorization": "Bearer $ZOLOTENKOV_MRP_TOKEN"
}
}
}
} - Поле адреса здесь называется
httpUrl. Полеurlв этом клиенте означает другой транспорт (SSE), и наш сервер по нему не отвечает. - Запись
$ZOLOTENKOV_MRP_TOKENподставляется из переменной окружения при чтении настроек, поэтому ключ в файле не хранится.
Проверка в этом клиенте: Команда /mcp внутри сессии: состояние сервера и перечень его инструментов.
Одна команда openclaw mcp set
Где окажется настройка: ~/.openclaw/openclaw.json, раздел mcp.servers
openclaw mcp set zolotenkov-mrp '{
"url": "https://mrp.zolotenkov.ru/api/external/v1/mcp",
"transport": "streamable-http",
"headers": { "Authorization": "Bearer zol_pat_live_ВАШ_КЛЮЧ" }
}' - Транспорт называется словом
streamable-http— это тот же протокол, чтоhttpу соседних клиентов. Значениеhttpэтот клиент тоже примет и сам приведет к каноническому имени. - Тот же блок можно вписать руками в
~/.openclaw/openclaw.jsonвнутрьmcp.servers— так ключ не попадет в историю оболочки. - Ключ здесь хранится в файле готовым значением, поэтому выпускайте для агента отдельный ключ: минимальные права и короткий срок. В журналах и выводе состояния клиент заголовки скрывает.
Проверка в этом клиенте: openclaw mcp list — сервер в перечне; openclaw mcp doctor zolotenkov-mrp --probe проверяет связь и показывает инструменты.
Одна команда openhands mcp add
Где окажется настройка: ~/.openhands/mcp.json
read -rs ZOLOTENKOV_MRP_TOKEN && export ZOLOTENKOV_MRP_TOKEN
openhands mcp add zolotenkov-mrp --transport http \
--header "Authorization: Bearer $ZOLOTENKOV_MRP_TOKEN" \
https://mrp.zolotenkov.ru/api/external/v1/mcp - Адрес идет последним аргументом, после флагов, а не сразу за именем сервера.
- Значение заголовка подставляет оболочка, поэтому в
~/.openhands/mcp.jsonключ окажется готовым значением. Первая строка нужна только чтобы он не попал в историю команд; сам файл после этого держите как файл с секретом. - Агенту, работающему без человека за экраном, права выдавайте по одному сценарию: запись он применит без вопроса.
Проверка в этом клиенте: openhands mcp list — сервер в перечне; openhands mcp get zolotenkov-mrp показывает его настройку целиком.
Свой коннектор без файла настроек
Где окажется настройка: «Настройки → Коннекторы → Добавить свой коннектор»
https://mrp.zolotenkov.ru/api/external/v1/mcp - Адрес вставляется в поле коннектора, а ключ — в раздел заголовков запроса: имя
Authorization, значениеBearerи ваш ключ через пробел. - Раздел заголовков раскатан не на все аккаунты. Если его в окне нет, подключить сервер по ключу оттуда не получится — возьмите любой клиент из соседних вкладок.
Проверка в этом клиенте: Коннектор в списке, у него раскрывается перечень инструментов.
Authorization меняются от версии к версии, поэтому при расхождении верьте документации своего клиента, а не этой странице — и напишите нам.
.mcp.json у Claude Code, .cursor/mcp.json у Cursor, .vscode/mcp.json у VS Code — попадает в git и уезжает всей команде. Кладите туда только подстановку из переменной окружения, а не готовое значение. Ключ нельзя коммитить и нельзя присылать сообщением самому агенту: у каждого человека свой ключ и свои права.
Клиента нет среди вкладок
Настройка через файл JSON
Тот же сервер описывается блоком ниже — с него начинают все клиенты, которых нет среди вкладок. Это не универсальный формат: имя файла, его расположение и поддержка заголовка Authorization у каждого клиента свои — сверьтесь с его документацией. Клиент без поддержки удаленных серверов по HTTP подключить так нельзя.
Собственному агенту на любом SDK этого протокола отдельного рецепта не нужно: адрес и заголовок те же.
{
"mcpServers": {
"zolotenkov-mrp": {
"type": "http",
"url": "https://mrp.zolotenkov.ru/api/external/v1/mcp",
"headers": {
"Authorization": "Bearer zol_pat_live_ВАШ_КЛЮЧ"
}
}
}
} Шаг 3
Проверьте соединение и чтение
Записанная настройка — еще не подключенный сервер. Проверка занимает две минуты и сразу отличает неверный ключ от нехватки прав.
- 1. Перечитайте настройку. Клиент читает конфигурацию при запуске: закройте сессию или окно редактора и откройте заново. У Claude Code это новая сессия командой
claude. - 2. Посмотрите состояние серверов. Команда или экран для этого свои у каждого клиента — они названы в его вкладке на шаге 2: например,
claude mcp listи/mcpу Claude Code,codex mcp listу Codex CLI, «MCP: List Servers» у VS Code. Рядом сzolotenkov-mrpдолжно стоять «Connected» или его местный эквивалент. Ответ вида «Failed to connect» означает, что до сервера дошли, но он отказал, — причина в той же строке. - 3. Проверьте чтение. Попросите агента прочитать список заказов покупателей или остатки. Успешный ответ с вашими данными и есть подтверждение подключения.
Две разные неполадки, которые легко перепутать
- Сервер не подключился, в ответе
401 - Ключ неверный, отозван или истек — либо потерялась переменная окружения и в заголовок ушла пустая строка. Выпустите ключ заново и повторите шаг 2.
- Сервер подключен, но нужного инструмента нет в списке
- Это не ошибка связи, а отсутствие права у ключа. Инструмент не появляется вовсе — не «появляется и отказывает». Добавьте нужное право ключу в «Настройках → API-ключи».
Только после успешной проверки чтения добавляйте права создания и изменения документов.
idempotency_key. При обрыве связи повторяйте действие с тем же значением — второй документ не появится.