Как подключить MCP-сервер КРАСОФТ
Пошаговые инструкции для популярных ИИ-клиентов: Claude Code, claude.ai и Claude Desktop, ChatGPT, Cursor, VS Code, Windsurf и любых других с поддержкой MCP. Везде нужен один и тот же адрес сервера — различается только место, куда его вставить.
https://zakupki.krasoft.ru/api/mcpТранспорт — streamable HTTP (не SSE и не stdio). Один адрес для всех клиентов, отдельных «endpoint для инструментов» не существует.
- Без ключа — анонимно. Поиск извещений и карточки закупок с дневными квотами, ничего создавать не нужно. Для первого знакомства этого достаточно.
- С ключом — ваш тариф. Ключ
krsp_...даёт ассистенту лимиты и данные вашего тарифа. Передаётся в заголовкеAuthorization: Bearer krsp_... - Где взять ключ: войдите в аккаунт, откройте раздел «Разработчикам» (меню профиля), вкладку «MCP», и нажмите «Создать ключ». Значение показывается один раз — у нас хранится только хеш. Активных ключей может быть до десяти, отозвать любой можно в любой момент.
- В claude.ai, Claude Desktop и ChatGPT ключ не нужен вовсе — там вход по OAuth логином КРАСОФТ.
В инструкциях ниже оба варианта размечены такими бейджами — копируйте тот блок, который вам подходит.
Инструкции по клиентам
Claude Code (CLI)
Ключ опционален- 1
Откройте терминал и выполните одну из команд — в зависимости от способа подключения:
Без ключа — анонимнодневные квоты, ничего создавать не нужноclaude mcp add --transport http krasoft https://zakupki.krasoft.ru/api/mcp
С ключом — ваш тарифподставьте свой ключ вместо krsp_...claude mcp add --transport http krasoft https://zakupki.krasoft.ru/api/mcp --header "Authorization: Bearer krsp_..."
- 2
Проверьте подключение: запустите сессию Claude Code и выполните команду
/mcp— в списке серверов появитсяkrasoftсо статусом connected и набором инструментов закупок.
Без ключа — анонимные квоты на поиски и карточки. С ключом — лимиты вашего аккаунта и реестры, MCP-доступ к которым подключён.
claude.ai и Claude Desktop
OAuth — ключ не нужен- 1
Откройте настройки и найдите раздел «Коннекторы» (Connectors) — название и расположение могут отличаться в вашей версии приложения.
- 2
Выберите добавление пользовательского коннектора (Add custom connector) и вставьте адрес сервера:
https://zakupki.krasoft.ru/api/mcp
- 3
Клиент предложит авторизацию — войдите логином и паролем КРАСОФТ через OAuth. Ключ
krsp_...создавать не нужно. - 4
В новом диалоге включите коннектор в меню инструментов (если он не активен по умолчанию) и задайте вопрос о закупках.
После входа действуют квоты вашего аккаунта, а реестры открываются по подключённому MCP-доступу к страницам — он выдаётся отдельно от веб-версии.
ChatGPT
OAuth — ключ не нужен- 1
Убедитесь, что ваш план ChatGPT поддерживает MCP-коннекторы — доступность функции зависит от плана подписки и региона.
- 2
В настройках найдите раздел про коннекторы или приложения (Connectors — название может отличаться в вашей версии) и добавьте MCP-коннектор с адресом сервера:
https://zakupki.krasoft.ru/api/mcp
- 3
Пройдите авторизацию через OAuth — войдите логином КРАСОФТ. Доступ ассистента будет соответствовать вашему тарифу.
- 4
Включите коннектор в диалоге и спросите про закупки — например, про активные тендеры в вашем регионе.
Если в вашем плане MCP-коннекторы недоступны, тот же сервер можно использовать через Claude, Cursor или любой другой клиент из этой инструкции.
Cursor
Ключ опционален- 1
Откройте файл
~/.cursor/mcp.json(глобально) или.cursor/mcp.jsonв корне проекта. То же можно сделать через настройки: раздел MCP (название может отличаться в вашей версии). - 2
Добавьте сервер — скопируйте подходящий вариант конфига. В анонимном варианте блока
headersнет вовсе:Без ключа — анонимнодневные квоты, ничего создавать не нужно{ "mcpServers": { "krasoft": { "url": "https://zakupki.krasoft.ru/api/mcp" } } }С ключом — ваш тарифподставьте свой ключ вместо krsp_...{ "mcpServers": { "krasoft": { "url": "https://zakupki.krasoft.ru/api/mcp", "headers": { "Authorization": "Bearer krsp_..." } } } } - 3
Перезапустите Cursor или обновите список серверов в настройках MCP — сервер
krasoftдолжен показать зелёный статус и список инструментов.
С ключом агент Cursor работает в лимитах вашего тарифа; без ключа — анонимные дневные квоты.
VS Code (Copilot)
Ключ опционален- 1
Создайте файл
.vscode/mcp.jsonв корне проекта (или добавьте сервер через палитру команд — команда добавления MCP-сервера, название зависит от версии). - 2
Опишите сервер — обратите внимание на ключ верхнего уровня «servers». Выберите свой вариант:
Без ключа — анонимнодневные квоты, ничего создавать не нужно{ "servers": { "krasoft": { "type": "http", "url": "https://zakupki.krasoft.ru/api/mcp" } } }С ключом — ваш тарифподставьте свой ключ вместо krsp_...{ "servers": { "krasoft": { "type": "http", "url": "https://zakupki.krasoft.ru/api/mcp", "headers": { "Authorization": "Bearer krsp_..." } } } } - 3
Откройте чат Copilot в режиме агента — инструменты закупок появятся в списке доступных инструментов.
Чтобы не хранить ключ в файле, VS Code умеет спрашивать секреты при старте — см. документацию по inputs в mcp.json. Ключ определяет доступ: без него — анонимные квоты, с ним — квоты аккаунта и подключённые для MCP реестры.
Windsurf, Cline и другие клиенты с JSON-конфигом
Ключ опционален- 1
Найдите, где клиент хранит конфигурацию MCP-серверов: обычно это JSON-файл или раздел настроек с названием вроде MCP Servers / Plugins (точное расположение — в документации клиента).
- 2
Большинство клиентов используют тот же формат
mcpServers, что и Cursor — скопируйте подходящий вариант:Без ключа — анонимнодневные квоты, ничего создавать не нужно{ "mcpServers": { "krasoft": { "url": "https://zakupki.krasoft.ru/api/mcp" } } }С ключом — ваш тарифподставьте свой ключ вместо krsp_...{ "mcpServers": { "krasoft": { "url": "https://zakupki.krasoft.ru/api/mcp", "headers": { "Authorization": "Bearer krsp_..." } } } } - 3
Если клиент требует явно указать тип транспорта — выбирайте streamable HTTP (иногда обозначается как http).
Подойдёт любой клиент с поддержкой MCP по streamable HTTP — специальной интеграции со стороны платформы не требуется.
Клиент поддерживает только stdio
Ключ опционален- 1
Старые версии некоторых клиентов не умеют удалённые HTTP-серверы и запускают MCP только локальной командой (stdio). Для них есть мост
mcp-remote: локальный процесс, который пробрасывает stdio-клиент к нашему HTTP-серверу. Понадобится установленный Node.js. - 2
В конфиге клиента опишите сервер командой, а не адресом — выберите свой вариант (в анонимном нет аргументов
--header):Без ключа — анонимнодневные квоты, ничего создавать не нужно{ "mcpServers": { "krasoft": { "command": "npx", "args": [ "mcp-remote", "https://zakupki.krasoft.ru/api/mcp" ] } } }С ключом — ваш тарифподставьте свой ключ вместо krsp_...{ "mcpServers": { "krasoft": { "command": "npx", "args": [ "mcp-remote", "https://zakupki.krasoft.ru/api/mcp", "--header", "Authorization: Bearer krsp_..." ] } } } - 3
Перезапустите клиент. При первом обращении
npxскачает пакет — это займёт несколько секунд.
Если у клиента есть нативная поддержка streamable HTTP — используйте её напрямую, мост нужен только как запасной вариант.
Проверка подключения
Задайте ассистенту простой вопрос — так, как спросили бы коллегу:
Найди активные тендеры на канцтовары
- Ассистент должен вызвать инструмент
search_tendersи вернуть список живых извещений: названия, НМЦК, регионы и сроки подачи заявок. - Если вместо данных пришло сообщение о лимите или о том, что MCP-доступ к странице не подключён, — подключение работает. Это граница вашего доступа: в ответе сказано, что откроет регистрация или подключение страницы.
Частые проблемы
Ошибка 401 Unauthorized — сервер не принимает ключ
Ключ отозван, истёк или скопирован с опечаткой. Восстановить значение нельзя: оно показывается один раз при создании, в базе хранится только хеш. Выпустите новый ключ в разделе «Разработчикам» (меню профиля, вкладка «MCP») и замените его в конфиге клиента. Если ключ не нужен — уберите заголовок Authorization целиком: сервер работает и анонимно.
Ошибка 429 или ответ про исчерпанный лимит
Сработала дневная квота вашего уровня доступа: у анонимного доступа лимиты ниже, бесплатный аккаунт их повышает, на платных тарифах дневных лимитов нет. Квота обнуляется на следующий день. Чтобы поднять потолок — зарегистрируйтесь бесплатно и выпустите ключ либо подключите платный тариф.
Ошибка «Cannot convert argument to a ByteString» (Cursor, VS Code и другие)
В заголовок Authorization попал символ за пределами ASCII — чаще всего многоточие «…», если ключ вставлен из замаскированного значения или плейсхолдер krsp_... не заменён на настоящий ключ. Клиент не может собрать HTTP-заголовок и падает ещё до запроса к серверу. Вставьте полное значение ключа — оно состоит только из латиницы, цифр, дефиса и знака подчёркивания и показывается один раз при создании в кабинете. Если ключ не нужен, возьмите анонимный вариант конфига — в нём блока headers нет вовсе.
Клиент не видит сервер или подключение не устанавливается
Проверьте три вещи. Транспорт — streamable HTTP, не SSE и не stdio: в Claude Code это флаг --transport http, в JSON-конфигах — поле url, а не command. Адрес — ровно https://zakupki.krasoft.ru/api/mcp, без слэша на конце. Если клиент старый и поддерживает только stdio — подключайтесь через мост npx mcp-remote.
Инструмент ответил, что MCP-доступ к странице не подключён
Это не ошибка, а граница доступа. Поиск извещений, карточки извещения и контракта, профиль заказчика и срезы рынка открыты всем. Остальные реестры — техзадания, объекты закупок, исполнение, спецификации, поиск контрактов и планов-графиков, документы извещений — работают через MCP только при подключённой странице. Этот доступ выдаётся отдельно от веб-версии: подключить страницу можно через менеджера КРАСОФТ.
Не помогло? Напишите нам на support@krasoft.ru — разберёмся вместе.
Осталось выпустить ключ
Анонимный доступ уже работает, а ключ из личного кабинета поднимет лимиты и откроет данные вашего тарифа.