Ищем разработчиков для созвона на 25 минут: 500 ₽ на баланс за разговор.

Выбрать время

Руководство

Управление облаком из Claude Code и Cursor через MCP: подключение и права

Обновлено · 6 мин чтения

MCP-сервер DADA Cloud живёт по адресу https://console.dada-tuda.ru/mcp и даёт агенту 47 инструментов: создать приложение, задать переменные окружения, поднять базу данных, запустить сборку, прочитать логи. Агент входит через ваш аккаунт Dada ID и получает ровно ваши права в консоли, поэтому подключение занимает пару минут, а настройка ролей отдельно не нужна.

Ниже порядок подключения для трёх клиентов, проверка входа и честный список того, что агент сделать не может. Если нужен обзор всех сценариев с агентами, включая запуск своего агента на платформе, начните с гайда AI-агенты на DADA Cloud.

КлиентКак подключитьВход
Claude CodeПлагин dada-cloud из публичного репозиторияБраузер, Dada ID, OAuth 2.1 с PKCE
Claude DesktopПользовательский коннектор с адресом сервераClient ID dada-mcp, секрет пустой
Cursor, WindsurfStreamable HTTP на тот же адресClient ID dada-mcp с локальным адресом возврата
Агент на сервереТот же адрес, заголовок авторизацииAuthorization: Bearer с токеном Dada ID

Шаг 1 - Проверьте, что сервер отвечает

Прежде чем разбираться с клиентом, убедитесь, что сервер доступен с вашей машины. Документ обнаружения открыт без авторизации:

curl -sS https://console.dada-tuda.ru/mcp/.well-known/oauth-protected-resource

В ответе будут адрес ресурса, сервер авторизации https://id.dada-tuda.ru/realms/master и список поддерживаемых областей доступа. Запрос к самому /mcp без токена вернёт 401 с заголовком WWW-Authenticate, который указывает на этот документ. Оба ответа означают, что сервер работает и ждёт входа.

Шаг 2 - Подключите Claude Code

В Claude Code добавьте маркетплейс и установите плагин:

/plugin marketplace add DadaDevelopment/dada-cloud
/plugin install dada-cloud@dada-cloud

Плагин запускает локальный мост mcp-remote к адресу сервера, поэтому на машине должен быть установлен Node.js. Без него плагин не стартует, и инструменты в списке не появятся. Адрес, идентификатор клиента и токен плагин подставляет сам.

Шаг 3 - Подключите Claude Desktop или Cursor

В Claude Desktop откройте настройки коннекторов и добавьте пользовательский коннектор. Адрес: https://console.dada-tuda.ru/mcp. В дополнительных настройках укажите OAuth Client ID dada-mcp, поле секрета оставьте пустым.

Cursor, Windsurf и другие клиенты, которые работают на вашем компьютере, подключаются к тому же адресу по Streamable HTTP. Клиент dada-mcp публичный и принимает адреса возврата только на localhost или 127.0.0.1, на любом порту. Подключение Claude Code и Claude Desktop мы сверили с кодом и документацией. Cursor и Codex описаны в документации, но на практике мы их ещё не прогоняли, поэтому при сбое сначала смотрите таблицу ошибок в справке по подключению.

Шаг 4 - Войдите и проверьте права

При первом вызове инструмента клиент откроет браузер. Вы входите через Dada ID, клиент получает токен и дальше ходит с ним сам. Проверить результат проще всего просьбой к агенту показать ваши проекты: он вызовет listProjects, и вы увидите тот же список, что в консоли.

Если проекта в списке нет, у вас нет в нём роли. Агент её не получит, пока вас не пригласят в проект.

Шаг 5 - Дайте агенту первое задание

Проекты, окружения и приложения агент называет по имени, например ref="проект/окружение/приложение", UUID искать не нужно. Кроме инструментов сервер отдаёт три готовых сценария, которые хорошие клиенты показывают в интерфейсе:

  • deploy-app разворачивает образ контейнера и задаёт переменные окружения;
  • configure-env меняет переменные у существующего приложения и выкатывает их;
  • diagnose-app собирает статус, логи и последнюю сборку и объясняет, что сломалось.

Ещё есть справочные ресурсы: dada://guide/getting-started с описанием модели платформы, dada://reference/tools со списком инструментов и dada://reference/openapi.json с полным описанием API. Типичные цепочки вызовов собраны в рецептах MCP, полный список инструментов в справочнике.

Какие права получает агент

Агент действует от вашего имени. Он видит только проекты, где у вас есть роль, и меняет только то, что ваша роль разрешает менять в консоли. Повышения прав через MCP нет.

ЧтоКак устроено
Чтение22 инструмента помечены как только для чтения
Удаление и перезапись9 помечены как разрушающие: deleteEnvVar, deleteServiceCache, deleteAgent, revokeAgentGrant, setEnvVar, setAgentEngine, updateAppImage, updateAppPort, updateAppStorage
Приложения, базы, проекты, серверыУдалить их через MCP нельзя, перезапуска тоже нет
Секретные переменныеlistEnvVars показывает их замаскированными, прочитать значение обратно нельзя
Пароль базы данныхВыдаётся только при явном reveal=true, каждый вызов пишется в аудит
SQLqueryDatabase выполняет только SELECT, до 1000 строк, 5 МБ и 5 секунд

Клиенты, которые учитывают эти пометки, спрашивают подтверждение перед разрушающим вызовом. Отдельные сервисные учётные записи агентов существуют: они входят в группу /agents, не могут создавать проекты и получают доступ к проекту только через временный грант с ролью Developer или ReadOnly на срок до 24 часов. Такие учётные записи заводит оператор платформы, обычному пользователю самостоятельно создать их сейчас нельзя.

Агент, который работает на сервере

Вход через браузер рассчитан на клиента на вашем компьютере. Агент на сервере с собственным https-адресом возврата этот вход не пройдёт: такие адреса для dada-mcp не разрешены. Ему нужно передавать заголовок Authorization: Bearer с токеном Dada ID. Ключи AI-шлюза sk-dada-ai- для этого не подходят, они открывают только OpenAI-совместимый шлюз.

Когда этот путь не подойдёт

Привязать проверенный домен к приложению через MCP нельзя, это делается в консоли. Удалять приложения и базы данных через MCP тоже нельзя, это сделано намеренно. Изменения записываются в git асинхронно: статус Committed у операции значит, что изменение сохранено, но приложение может ещё запускаться, поэтому агент должен дождаться статуса Healthy в listApps. Если вам нужен агент, который сам живёт на платформе и отвечает пользователям, смотрите страницу MCP и раздел про собственных агентов в обзорном гайде.

Частые вопросы

Нужен ли Node.js для подключения?

Для плагина Claude Code нужен: он запускает мост mcp-remote через npx. Claude Desktop подключается к серверу как коннектор, Node.js ему не требуется.

Может ли агент удалить мою базу данных?

Нет. На поверхности MCP нет инструментов удаления приложений, баз данных, проектов и серверов. Удалить можно переменную окружения, кэш, своего агента и грант, и клиенты с поддержкой пометок спросят подтверждение.

Что делать, если сервер отвечает 401 и окно входа так и не появилось?

Клиент не выполняет обнаружение OAuth сам. Укажите в его настройках Client ID dada-mcp вручную. Если клиент не умеет вход через браузер вообще, передавайте заголовок Authorization: Bearer с токеном Dada ID.

Увидит ли агент секреты приложения?

Значения секретных переменных он не прочитает: listEnvVars их маскирует. Пароль базы данных агент может получить только явным запросом с reveal=true, и этот вызов попадает в аудит проекта.

Сколько инструментов у сервера и какие главные?

Шестьдесят три. Для начала хватит resolveRef, listProjects, createApp, setEnvVar, createDatabase, triggerBuild, getOperation и searchLogs.

Источники