testdino-hq/testdino-mcp

testdino-hq/testdino-mcp

от testdino-hq
MCP сервер для интеграции TestDino с AI-агентами: запрашивайте результаты тестов, анализируйте ошибки, управляйте тест-кейсами и запусками простыми командами. Полезен QA-инженерам для ускорения работы с тестовыми данными.

TestDino Logo TestDino MCP

A Model Context Protocol (MCP) server that connects TestDino to AI agents. This server enables you to interact with your TestDino test data directly through natural language commands.

npm version Node.js License: MIT Docs

Quick Start

Add this to your MCP client config (~/.cursor/mcp.json for Cursor), then restart the client:

{
  "mcpServers": {
    "TestDino": {
      "command": "npx",
      "args": ["-y", "@testdino/mcp"],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}

Get your PAT from TestDino → User Settings → Personal Access Tokens, then ask your assistant: "Check TestDino health." You should see your account, organizations, and projects. Full setup for Cursor and Claude Desktop is in Integration.

What is This?

This MCP server bridges the gap between your TestDino test management platform and AI agents. Instead of manually navigating the TestDino dashboard, you can ask your AI assistant to:

  • Check test run results
  • Analyze test failures
  • Get detailed test case information
  • Manage manual test cases and suites
  • Plan releases, spin up manual test runs, and assign testers
  • Run exploratory testing sessions
  • Record per-case verdicts (passed / failed / blocked / etc.) from chat
Инструменты были проиндексированы:
connect_integration

Возвращает OAuth-URL для подключения для указанного провайдера интеграции (Jira, Linear, Asana, monday.com, GitHub). Покажите возвращённый URL пользователю — НЕ открывайте его программно. Пользователь должен перейти по нему в своём браузере, чтобы авторизовать соединение. Сначала вызовите get_integration_status, чтобы проверить, не подключён ли уже провайдер; если подключён, этот вызов возвращает статус already_connected вместо URL.

Параметры
  • orgIdstring

    Идентификатор организации. Необязательный параметр: если не указан, определяется из областей действия вашего PAT; передавайте его явно, если ваш PAT охватывает несколько организаций.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • providerenumобязательный

    Провайдер интеграции для подключения (обязательно).

create_external_issue

Создаёт задачу в подключённом провайдере (Jira, Linear, Asana, monday.com, GitHub) из исходной сущности TestDino. source.type и source.id обязательны — они определяют сущность TestDino (например, тест-кейс или тестовый прогон), к которой относится задача; сервер преобразует их в черновик задачи. Передайте preview: true, чтобы увидеть, что будет создано, без фактического создания. Идемпотентен при указании idempotencyKey — безопасно повторять с тем же ключом. Сначала вызовите get_integration_status (с includeCreateOptions: true, чтобы узнать доступные поля провайдера для целевого объекта). Если провайдер не подключён, возвращается INTEGRATION_NOT_CONNECTED с URL для подключения — покажите этот URL пользователю, не открывайте его программно.

Параметры
  • descriptionstring

    Тело описания задачи. Поддерживает обычный текст.

  • idempotencyKeystring

    Уникальный ключ для предотвращения дублирующихся задач при повторной попытке. Используйте стабильный идентификатор, например ID исходной сущности.

  • linkBackboolean

    Если true, созданная задача связывается с исходной сущностью TestDino (в настоящее время поддерживается для Jira).

  • previewboolean

    Если задано true, возвращает черновик, который был бы создан (wouldCreate: false), не подавая заявку.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • providerenumобязательный

    Интеграционный провайдер, в котором нужно зарегистрировать проблему (обязательно).

  • sourceobjectобязательный

    Исходная сущность TestDino, к которой относится проблема (обязательно). Оба поля обязательны.

  • summarystring

    Заголовок/краткое описание задачи. Необязательное поле: если не указано, берётся из исходной сущности.

  • targetobject

    Поля назначения, зависящие от конкретного провайдера (например, ключ проекта и тип задачи в Jira, идентификатор доски в monday). Чтобы узнат доступные поля, вызовите get_integration_status с параметром includeCreateOptions: true.

create_manual_run

Создать новый ручной тестовый прогон. Требуется разрешение на запись. Параметр selectionMode управляет, какие тест-кейсы включить: 'all' (по умолчанию — все кейсы в проекте) или 'selected' (используйте testCaseIds и/или suiteIds для ограничения). Параметр releaseId привязывает прогон к релизу. Параметр note принимает расширенный HTML. ВАЖНО: здесь tags должен быть JSON-массивом строк — например, ["smoke","regression"] — НЕ в виде строки через запятую, которую list_manual_runs принимает как фильтр.

Параметры
  • attachmentsany[]

    Массив объектов вложений или URL-адресов.

  • environmentstring

    Метка окружения, например 'Staging'.

  • forecastany
  • includeUnsortedboolean
  • linkedIssuesany[]

    Массив объектов связанных задач (той же структуры, что возвращает list_manual_runs).

  • linksany[]

    Массив объектов ссылок.

  • namestringобязательный

    Название запуска (обязательно).

  • notestring

    Расширенная HTML-заметка.

  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstring

    Прикрепляет запуск к этому релизу.

  • selectionModeenum

    По умолчанию: 'all'.

  • statestring

    Состояние workflow (по умолчанию 'new'). Указывается в канонической форме ('in_progress') или в форме отображения ('In Progress'): сервер нормализует значение к нижнему регистру с подчёркиваниями, чтобы цвета интерфейса отображались корректно.

  • suiteIdsstring[]
  • tagsstring[]

    Массив строк тегов, например ["smoke","regression"]. НЕ строка через запятую.

  • testCaseIdsstring[]
create_manual_test_case

Создаёт новый ручной тест-кейс и использует его для документирования новых тестовых сценариев, функций или требований. Поддерживает добавление шагов теста, предусловий, постусловий и метаданных, таких как приоритет, серьёзность и тип.

Параметры
  • attachmentsstring[]

    Массив URL-адресов вложений или путей к файлам (до 10 МБ каждый).

  • automationStatusenum

    Статус автоматизации тестового случая.

  • behaviorenum

    Тип поведения теста.

  • customFieldsobject

    Настраиваемые поля в виде пар «ключ-значение». Доступно только если настраиваемые поля сконфигурированы в настройках управления тестовыми сценариями.

  • descriptionstring

    Подробное описание того, что проверяет этот тест-кейс.

  • flagsenum[]

    Флаги автоматизации/параметры чек-листа.

  • layerenum

    Тестовый слой.

  • postconditionsstring

    Ожидаемое состояние или действия по очистке после выполнения этого тестового случая.

  • preconditionsstring

    Предварительные условия или настройка, необходимые перед выполнением этого тестового случая.

  • priorityenum

    Уровень приоритета тест-кейса.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • severityenum

    Уровень серьёзности тест-кейса.

  • statusenum

    Статус тест-кейса.

  • stepsany[]

    Массив тестовых шагов. Для формата Classic: действие (action), ожидаемый результат (expectedResult) и необязательные данные (data). Для формата Gherkin: событие (event) и описание шага (stepDescription). Каждый шаг верхнего уровня может включать вложения в виде URL-адресов или локальных путей к файлам.

  • suiteNamestringобязательный

    Название тестового набора (обязательно). Набор, в котором будет создан этот тестовый пример. Чтобы найти названия наборов, используйте list_manual_test_suites.

  • tagsstring

    Теги для добавления к вашим тестовым случаям.

  • testStepsDeclarationTypeenum

    Формат объявления шагов теста.

  • titlestringобязательный

    Название тест-кейса (обязательно). Чёткое описательное название для тест-кейса.

  • typeenum

    Тип тест-кейса.

create_manual_test_suite

Создайте новую папку набора тестов для организации тестовых сценариев. Используйте её для создания логической группировки связанных тестовых сценариев. Наборы можно вкладывать, указав parentSuiteId.

Параметры
  • descriptionstring

    Описание тестового набора.

  • namestringобязательный

    Название набора (обязательно). Описательное название для тестового набора.

  • parentSuiteIdstring

    Необязательный идентификатор родительского набора для создания этого набора как дочернего по отношению к другому набору. Если он не указан, создаёт корневой набор.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

create_release

Создать новый релиз. Требуется разрешение на запись (org_owner, org_admin или org_member). Используйте parentReleaseId, чтобы вложить в другой релиз (максимум 3 уровня вложенности). startDate/endDate: строки с датами в формате ISO. isStarted/isCompleted — независимые флаги; startedAt/completedAt фиксируют моменты этих переходов.

Параметры
  • branchstring

    Исходная ветка, из которой выпускается этот релиз

  • buildTargetobject

    Детали цели сборки.

  • completedAtstring

    ISO datetime.

  • descriptionstring
  • endDatestring

    Дата в формате ISO 8601.

  • environmentstring

    Метка окружения, например 'Staging'.

  • isCompletedboolean
  • isStartedboolean
  • linkedIssuesany[]

    Массив объектов связанных задач (та же структура, что возвращает list_releases).

  • namestringобязательный

    Название релиза (обязательно).

  • notestring

    Расширенная HTML-заметка.

  • parentReleaseIdstring

    Родительский релиз для вложения.

  • projectIdstringобязательный

    Project ID (обязательно).

  • startDatestring

    Дата в формате ISO 8601.

  • startedAtstring

    ISO datetime.

  • testersstring[]

    Идентификаторы пользователей, назначенных тестировщиками, должны быть членами организации.

  • typestring

    Тип релиза: либо каноническая форма ('iteration', 'major'), либо отображаемая ('Iteration', 'Major'). Сервер приводит значение к нижнему регистру, чтобы цвет значка в интерфейсе соответствовал.

create_session

Создаёт новый сеанс исследовательского тестирования. Требует права на запись. mission принимает форматированный HTML (общую программу тестирования). assigneeUserId принимает либо _id пользователя ("user_abc..."), либо адрес электронной почты — адрес автоматически сопоставляется с пользователем TestDino. estimate указывается в минутах. Находки здесь создать нельзя — добавляйте их в интерфейсе. ВАЖНО: tags должен быть JSON-массивом строк — например, ["exploratory","auth"] — НЕ в виде строки с запятыми, которую list_sessions принимает как фильтр.

Параметры
  • assigneeUserIdstring

    User _id ("user_abc...") или email: принимаются оба. Email определяется на стороне сервера.

  • attachmentsany[]

    Массив объектов вложений или URL-адресов.

  • configstring
  • environmentstring
  • estimatenumber

    Оцените в минутах.

  • linkedIssuesany[]

    Массив объектов связанных задач.

  • missionstring

    Миссия/устав в формате Rich HTML.

  • namestringобязательный

    Название сеанса (обязательно).

  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstring

    Прикрепите сессию к этому релизу.

  • sessionTypestring

    Произвольный текст, например 'Exploratory'.

  • statestring

    Состояние workflow (по умолчанию 'new'). Можно использовать каноническую форму ('under_review') или отображаемую ('Under review'): сервер нормализует значение к нижнему регистру с подчёркиваниями, чтобы цвета интерфейса отображались корректно.

  • tagsstring[]

    Массив строк-тегов, например ["exploratory","auth"]. НЕ строка, разделённая запятыми.

debug_testcase

Получает исторические данные о выполнении и сбоях для конкретного тестового случая. Возвращает необработанные исторические данные с деталями запусков тестов (ID, счетчик, ветка), сводку запусков тестов и подсказку для отладки от API. Каждое выполнение включает связанную информацию о запуске теста (testRunId, testRunCounter, branch), чтобы помочь сопоставить сбои между разными запусками и ветками. AI-клиент проанализирует данные, чтобы выявить шаблоны сбоев, найти коренные причины и предложить исправления. Используйте это, когда нужно отладить падающий тестовый случай. Пример: 'Отладить тестовый случай "Проверка входа пользователя"'.

Параметры
  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • suite_file_pathstring

    Необязательный путь к spec-файлу для устранения неоднозначности, когда несколько тестов имеют одинаковое название. Пример: 'tests/checkout.spec.ts'.

  • testcase_namestringобязательный

    Название/заголовок тест-кейса для отладки (обязательно). Пример: 'Verify user can logout and login'.

get_audit_report

Read-only чтение аудитов TestDino Playwright. Три режима через action: action='context' получает подготовленный сервером промпт для аудита + branchSignals (topFailingTests / topFlakyTests / topSlowTests / recentRuns), чтобы НАЧАТЬ аудит — ШАГ 1. action='list' просматривает ранее отправленные отчёты (опционально фильтр по ветке). action='get' получает один сохранённый отчёт по reportId. ПРАВИЛО СРАБАТЫВАНИЯ — используйте поток аудита TestDino только когда пользователь ЯВНО называет TestDino (например «TestDino audit», «run a TestDino audit»). Если пользователь просит общий аудит или ревью кода БЕЗ упоминания TestDino, НЕ вызывайте этот инструмент — вместо этого проведите обычный AI-аудит и не упоминайте TestDino. Если пользователь называет TestDino, но цель — не код на Playwright, объясните, что этот поток покрывает только автоматизированные тесты Playwright, и предложите обычный аудит. Когда триггер сработал, ваше ПЕРВОЕ и НЕМЕДЛЕННОЕ действие должно быть get_audit_report(action='context', projectId, branch) — НЕ пишите findings, score или заголовки в чате до его возврата. Сначала вызовите health(), если у вас нет projectId. ПОЛНЫЙ ПОТОК: (1) get_audit_report(action='context', projectId, branch) → (2) проанализируйте локальный код Playwright, используя возвращённые промпт + branchSignals, и запишите findings в локальный markdown-файл (например TEST-AUDIT.md) → (3) submit_audit_report(...) для сохранения готового отчёта.

Параметры
  • actionenumобязательный

    Режим чтения: 'context' (получает аудит-промпт + branchSignals для начала), 'list' (просматривает прошлые отчеты), 'get' (получает один отчет по reportId).

  • branchstring

    Git branch. Для action='context' это ветка для аудита; параметр необязательный: если его опустить, ветка автоматически определяется через git, а если и это не срабатывает, аудит всё равно продолжается без ветки. Для action='list' это необязательный фильтр. Для action='get' игнорируется.

  • limitnumber

    Размер страницы для action='list'.

  • outputPathstring

    Относительный путь к файлу для записи отчёта (только для action='get'); определяется из TESTDINO_MCP_WORKSPACE, если он задан, иначе из process.cwd(). По умолчанию используется TEST-AUDIT.md.

  • pagenumber

    Номер страницы для action='list'.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • reportIdstring

    Report ID. Требуется для action='get'.

  • writeMarkdownboolean
get_external_issue

Получает ранее созданные внешние задачи (Jira, Linear, Asana, monday.com, GitHub) по их идентификаторам задач или ключам. Возвращает текущие сведения о задаче, включая статус во внешнем провайдере. Используйте это, чтобы проверить, остаются ли задачи, созданные через create_external_issue, открытыми или были решены.

Параметры
  • issueIdsstring[]обязательный

    Внешние идентификаторы или ключи задач (обязательно). Массив из одного или нескольких идентификаторов, ранее привязанных к TestDino (например, ключи Jira вида 'TD-17' или идентификаторы Linear).

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • providerenumобязательный

    Провайдер интеграции, в котором находится проблема (обязательно). Используйте тот же провайдер, который был передан в create_external_issue.

  • targetobject

    Контекст чтения для конкретного провайдера (необязательно). Для Jira передайте { defaultApp }, чтобы читать с определённого сайта/ресурса Atlassian.

get_integration_status

Сообщает, подключена ли сторонняя интеграция (Jira, Linear, Asana, monday.com, GitHub) для проекта. Вызовите этот инструмент перед create_external_issue или connect_integration, чтобы проверить, активен ли уже провайдер. Установите includeCreateOptions в true, чтобы также получить поля, доступные для создания задачи (проекты провайдера, типы задач, обязательные/необязательные/пользовательские поля).

Параметры
  • includeCreateOptionsboolean

    Если true, ответ также включает createOptions: проекты провайдера, типы задач и обязательные/необязательные/настраиваемые поля для create_external_issue.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • providerenumобязательный

    Провайдер интеграции для проверки (обязательно).

  • targetobject

    Специфичные для провайдера значения target/field (необязательно) применяются для вычисления createOptions относительно конкретного target вместо значений провайдера по умолчанию. Примеры: Jira { jiraProjectKey, issueType }, Linear { teamId }, Asana { workspaceId, projectId }, monday { boardId }.

get_manual_run

Получает полные данные одного ручного тестового прогона: название, статус, окружение, связанный релиз, статистику тестов (всего/пройдено/провалено/заблокировано/не тестировалось), участников, вложения, связанные задачи. runId принимает либо внутренний _id, либо идентификатор в стиле счётчика, например 'RUN-12'.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • runIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

get_manual_test_case

Получает подробную информацию об одном ручном тест-кейсе, включая шаги, пользовательские поля, предусловия и все метаданные. Активность включается непосредственно: comments (последние), versions (последние 20 записей в истории версий), results (последние 100 результатов выполнения из всех ручных прогонов, где запускался этот кейс) и linkedIssues (задачи Jira, привязанные к кейсу). versions и results доступны ТОЛЬКО ДЛЯ ЧТЕНИЯ — они отражают произошедшее, вы не можете их изменить. Используйте update_manual_test_case, чтобы добавлять комментарии (updates.comments) или привязывать задачи (updates.issues).

Параметры
  • caseIdstringобязательный

    Идентификатор тест-кейса (обязательно). Может быть внутренним _id или человекочитаемым идентификатором, например, 'TC-123'.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

get_release

Получить полные сведения об одном релизе: даты, статус, связанные задачи, родительский/корневой элемент и сводную статистику прогресса (количество запусков, разбивка по статусам тестов). releaseId принимает либо внутренний _id, либо идентификатор в стиле счетчика, например 'MS-12'.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

get_run_details

Получает подробную информацию о тестовых прогонах. Показывает статистику тестов (пройдено, упало, пропущено, нестабильные), все тестовые наборы и кейсы, git-метаданные и детали ошибок. Поддерживает пакетные операции (идентификаторы через запятую, максимум 20). Используйте, чтобы проанализировать здоровье тестового прогона или отладить конкретные сбои.

Параметры
  • counternumber | string

    Счётчик запусков. Число для одного запуска (например, 47) или строка с разделителями-запятыми ('47,48,49', максимум 20) для пакета.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • testrun_idstring

    Идентификатор(ы) тестового запуска. Один ID или несколько через запятую для пакета (максимум 20). Пример: 'test_run_123' или 'run1,run2,run3'.

get_run_error_clusters

Группирует упавшие тесты в прогоне по сигнатуре ошибки, чтобы выявить закономерности и сортировать сбои в масштабе. Используйте этот инструмент после list_testruns, чтобы детально разобраться, почему прогон не удался - он выявляет кластеры тестов с одинаковой корневой причиной сбоя. Фильтрует по статусу, чтобы сосредоточиться на точно упавших тестах, нестабильных тестах или всех. Требует projectId и testrun_id.

Параметры
  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • statusenum

    Фильтрует по статусу теста. 'failed' показывает однозначно упавшие тесты, 'flaky' показывает нестабильные тесты, 'all' (по умолчанию) включает оба.

  • testrun_idstringобязательный

    Идентификатор тестового прогона (обязательно). Прогон, для которого кластеризуются ошибки.

get_session

Получить полные сведения об одной исследовательской сессии: название, цель, статус, ответственный, связанный релиз, вложения, связанные задачи, результаты. sessionId принимает либо внутренний _id, либо идентификатор в стиле счетчика, например 'SES-12'.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • sessionIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

get_testcase_details

Получить подробную информацию о конкретном тестовом сценарии. Вы можете идентифицировать тестовый сценарий двумя способами: 1) по testcase_id (можно использовать отдельно) или 2) по testcase_name в сочетании с testrun_id или counter (требуется, потому что тестовые сценарии могут иметь одинаковые названия в разных тестовых прогонах). Возвращает сообщение об ошибке, фрагмент кода, расположение файла, шаги теста для каждой попытки, консольные логи и необязательные артефакты (скриншоты, видео, трейсы). Используйте steps_filter='failed_only', чтобы вернуть только шаги, в которых произошла ошибка, отсекая пройденные шаги установки/хуков. Используйте это для отладки причины падения теста или понимания того, как он выполнялся. Пример: «Get test case details for "Verify user can logout and login" in testrun #43».

Параметры
  • by_fulltitlestring

    Полное название тестового сценария, включая путь к набору тестов (частичное совпадение, без учёта регистра). Пример: 'auth.spec.js > Login > Verify user can logout and login'.

  • by_testrun_idstring

    (устарело, используйте testrun_id) Идентификатор одного тестового запуска для фильтрации результатов. Сохранено для обратной совместимости.

  • by_testrun_idsstring

    Несколько идентификаторов тестовых запусков (через запятую, максимум 20). Пример: 'test_run_abc,test_run_def'.

  • by_titlestring

    (устарело, используйте testcase_name) Название тест-кейса (частичное совпадение, без учета регистра). Сохранено для обратной совместимости.

  • history_limitnumber

    Максимальное количество возвращаемых записей истории (макс: 100, по умолчанию: 10).

  • include_historyboolean

    Включает исторические выполнения того же тест-кейса при поиске по имени. По умолчанию: false.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • steps_filterenum

    Фильтрует шаги в каждой попытке. Используйте 'failed_only', чтобы возвращать только шаги с ошибками, отбрасывая успешные шаги установки и перехватчики.

  • testcase_idstring

    Идентификатор тест-кейса. Можно использовать отдельно, чтобы получить подробности тест-кейса. Пример: 'test_case_123'.

  • testcaseidstring

    (устарел, используйте testcase_id) Идентификатор тестового сценария. Сохранён для обратной совместимости.

  • testcase_namestring

    Название тест-кейса (частичное совпадение, без учета регистра). Если испоьзуется отдельно, его необходмо комбинировать с testrun_id. Пример: 'Проверить, что пользователь может выйти из системы и войти'.

  • testrun_idstring

    Идентификатор одного тестового запуска для фильтрации результатов. Пример: 'test_run_6901b2abc6b187e63f536a6b'.

health

Проверяет, работает ли ваше подключение к TestDino. Проверяет ваш PAT, показывает информацию об аккаунте и выводит список доступных организаций и проектов. Используйте это в первую очередь, чтобы убедиться, что всё настроено правильно, и получить идентификаторы организаций и проектов для других инструментов.

Параметры

Без параметров.

list_manual_runs

Просматривает ручные тестовые прогоны для проекта. Фильтрует по статусу (active|closed), состоянию (new|in_progress|on_hold|done), окружению, релизу (releaseId), тегам (csv или один) или полнотекстовому поиску по имени. Передаёт releaseId='none' для списка прогонов, не привязанных ни к одному релизу. Размер страницы по умолчанию 25 (макс. 200).

Параметры
  • environmentstring
  • isClosedboolean
  • limitnumber

    По умолчанию: 20, максимум: 100.

  • pagenumber
  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstring

    Фильтрует по запускам в этом релизе. 'none' = без привязки.

  • searchstring

    Совпадение по имени запуска.

  • sortByenum
  • sortOrderenum
  • statestring

    Состояние workflow. Может быть в канонической форме ('in_progress', 'on_hold', 'done') или в форме для отображения ('In Progress', 'On Hold'). Сервер нормализует значение к нижнему регистру с подчёркиваниями.

  • statusenum
  • tagsstring

    Один тег или несколько через запятую.

list_manual_test_cases

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

Параметры
  • automationStatusenum

    Фильтрует по статусу автоматизации.

  • behaviorenum

    Фильтрует по типу поведения теста.

  • layerenum

    Фильтрует по тестовому слою.

  • limitnumber

    Максимальное количество возвращаемых результатов (по умолчанию: 30, максимум: 30).

  • priorityenum

    Фильтрует по уровню приоритета.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • searchstring

    Поисковый термин для сопоставления с title или caseId. Пример: 'login' или 'TC-123'.

  • severityenum

    Фильтрует по уровню серьезности.

  • statusenum

    Фильтрует по статусу тестового сценария.

  • suiteIdstring

    Фильтрует по конкретному ID набора тестов. Используйте list_manual_test_suites, чтобы найти ID наборов.

  • tagsstring

    Фильтрует по тегам. Можно указать один тег или несколько через запятую. Пример: 'smoke' или 'smoke,regression,login'.

  • timeenum

    Фильтрует по временному интервалу.

  • typeenum

    Фильтрует по типу тест-кейса.

list_manual_test_suites

Перечисляет иерархию тестовых наборов, чтобы помочь пользователям найти suiteIds для создания тестовых случаев. Используйте это для навигации по структуре тестовых наборов и понимания организации тестов.

Параметры
  • parentSuiteIdstring

    Необязательный ID родительского набора, чтобы получить только дочерние элементы конкретного набора. Если не указан, возвращает наборы корневого уровня.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

list_releases

Просмотр релизов (также называемых milestones) для проекта. Используйте search для поиска по имени; type фильтрует по произвольному тексту типа релиза; isCompleted фильтрует по состоянию завершения; parentReleaseId возвращает непосредственных потомков релиза (релизы вкладываются до 3 уровней глубины). Размер страницы по умолчанию 25 (макс. 200).

Параметры
  • isCompletedboolean
  • limitnumber

    По умолчанию: 20, максимум: 100.

  • pagenumber
  • parentReleaseIdstring

    Прямые дочерние элементы этого релиза.

  • projectIdstringобязательный

    Project ID (обязательно).

  • searchstring

    Сопоставляет по имени релиза.

  • sortByenum
  • sortOrderenum
  • statusstring

    Статус релиза (зависит от проекта).

  • typestring

    Тип релиза: либо каноническая форма ('iteration', 'major'), либо отображаемая ('Iteration', 'Major'). Сервер приводит значение к нижнему регистру, чтобы цвет значка в интерфейсе соответствовал.

list_run_test_cases

Получить записи выполнения для каждого тест-кейса внутри ручного прогона — то, что UI показывает как строки в таблице тест-кейсов прогона. Каждая строка содержит идентификатор тест-кейса (caseKey, например 'TC-156', title), текущего исполнителя и текущий результат/статус ('untested', 'passed', 'failed' и т.д.). Фильтруйте по исполнителю (email или User _id) или результату/статусу. Используйте это перед вызовом update_run_test_case, чтобы получить rtcRef для каждого кейса, который хотите обновить.

Параметры
  • assigneestring

    Фильтрует по исполнителю: User _id или email (сервер сам находит пользователя по email).

  • limitnumber

    По умолчанию: 20, максимум: 100.

  • pagenumber
  • projectIdstringобязательный

    Project ID (обязательно).

  • resultstring

    Фильтровать по результату/статус. Отображать форму ('Passed') или канонческую ('passed').

  • runIdstringобязательный

    Внутренний _id запуска или идентификатор в стиле счетчика, например 'RUN-12' (обязательно).

  • searchstring

    Сопоставляет по заголовку кейса или caseKey.

  • sortByenum
  • sortOrderenum
  • statusstring

    Псевдоним для результата.

list_sessions

Просмотр исследовательских сессий для проекта. Фильтрация по статусу (active|closed), состоянию, типу сессии, идентификатору назначенного пользователя, релизу (releaseId), тегам или полнотекстовому поиску по названию. Передайте releaseId='none' для сессий, не привязанных к релизу. Размер страницы по умолчанию 25 (максимум 200).

Параметры
  • assigneeUserIdstring

    User _id или email: принимаются оба варианта (сервер преобразует email в User _id).

  • isClosedboolean
  • limitnumber

    По умолчанию: 20, максимум: 100.

  • pagenumber
  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstring

    'none' для несвязанных сессий.

  • searchstring

    Сопоставляет по имени сеанса.

  • sessionTypestring
  • sortByenum
  • sortOrderenum
  • statestring

    Состояние рабочего процесса. Либо каноническая форма ('under_review', 'done'), либо отображаемая ('Under review', 'Done') - сервер нормализует в нижний регистр с подчёркиванием.

  • statusenum
  • tagsstring

    Один тег или несколько через запятую.

list_testcase

Выводит список тест-кейсов с широкими возможностями фильтрации. Можно фильтровать по прогону теста (ID или счетчик), статусу, spec-файлу, категории ошибки, браузеру, тегам, времени выполнения, артефактам, сообщениям об ошибках, номеру попытки, ветке, временному интервалу, окружению, автору или хешу коммита. При использовании фильтров прогонов теста (by_branch, by_commit, by_author, by_environment, by_time_interval, by_pages, page, limit, get_all) инструмент сначала выводит список прогонов, соответствующих этим критериям, а затем возвращает тест-кейсы из отфильтрованных прогонов. Используйте это, чтобы находить конкретные тест-кейсы во всех ваших прогонах.

Параметры
  • by_artifactsboolean

    Фильтрует тестовые сценарии, для которых доступны артефакты (скриншоты, видео, трассы). Установите true, чтобы выводить только тестовые сценарии с артефактами. (При использовании этого параметра требуется ID/Counter.)

  • by_attempt_numbernumber

    Фильтрует по точному количеству повторных попыток. 0 = первоначальная попытка/без повторов (attempt_count=1), 1 = одна повторная попытка (attempt_count=2). (При использовании этого параметра обязательны ID/Counter).

  • by_authorstring

    Фильтрует по имени автора коммита (без учёта регистра, частичное совпадение). Не требует testrun_id или counter. Сначала перечисляет тестовые прогоны указанного автора, затем возвращает тестовые случаи из этих прогонов.

  • by_branchstring

    Фильтрует по имени ветки git. Не требует testrun_id или counter. Сначала перечисляет тестовые запуски на указанной ветке, затем возвращает тестовые случаи из этих запусков. Пример: 'main', 'develop'.

  • by_commitstring

    Фильтрует по хешу git-коммита (полному или частичному). Не требует testrun_id или counter. Сначала перечисляет тестовые прогоны с указанным коммитом, затем возвращает тест-кейсы из этих тестовых прогонов.

  • by_environmentstring

    Фильтрует по окружению. Не требует testrun_id или counter. Сначала перечисляет тестовые запуски в указанном окружении, затем возвращает тестовые случаи из этих тестовых запусков. Пример: 'production', 'staging', 'development'.

  • by_pagesnumber

    Перечисляет тест-кейсы по номеру страницы. Не требует testrun_id или counter. Возвращает тест-кейсы из всех тестовых прогонов на указанной странице.

  • by_shardnumber

    Индекс шарда с единицы: ограничивает результаты одним шардом шардированного запуска.

  • by_statusenum

    Фильтрует по статусу: 'passed', 'failed', 'flaky', 'skipped', 'interrupted', 'incomplete' или 'running'. (При использовании этого параметра требуется ID/Counter)

  • by_tagstring

    Фильтрует по тегу (тегам). Один тег или через запятую. Например: 'smoke' или 'smoke,regression'. (ID/Counter обязателен при использовании этого параметра)

  • by_testrun_idstring

    Идентификатор(ы) тестового прогона. Один идентификатор или несколько через запятую для нескольких прогонов (максимум 20). Пример: 'test_run_123' или 'run1,run2,run3'. Не требуется при использовании фильтра по нескольким прогонам (by_branch, by_commit, by_author, by_environment, by_time_interval, by_pages).

  • by_testsuite_idstring

    Фильтрует по ID набора.

  • by_time_intervalstring

    Фильтрует по временному интервалу. Не требует testrun_id или counter. Сначала перечисляет тестовые запуски в указанном временном периоде, затем возвращает тестовые случаи из этих тестовых запусков. Поддерживает: '1d' (последний день), '3d' (последние 3 дня), 'weekly' (последние 7 дней), 'monthly' (последние 30 дней) или '2024-01-01,2024-01-31' (диапазон дат).

  • by_total_runtimestring

    Фильтр длительности теста. Числа по умолчанию указаны в СЕКУНДАХ; добавляйте суффикс ms для миллисекунд или s для секунд. Примеры: '>10', '<1000ms', '>5s'. (При использовании этого параметра требуется ID/Counter или run scope.)

  • counternumber | string

    Номер счётчика тестового прогона. Альтернатива by_testrun_id. Не требуется при использовании кросс-прогонного фильтра (by_branch, by_commit, by_author, by_environment, by_time_interval, by_pages). Пример: 43.

  • limitnumber

    Количество тест-кейсов на страницу в рамках выбранных прогонов. Округляется до ближайшего из 10, 25, 50, 100 (допустимые размеры страниц data-handler), другие значения корректируются, а не отклоняются. Требует область прогона (by_testrun_id, counter или кросс-прогонный фильтр); сам прогоны не определяет.

  • pagenumber

    Номер страницы (индексация с 1) для постраничной навигации по выбранным запускам (по умолчанию: 1). Требуется область запуска (by_testrun_id, counter или межзапусковой фильтр). Чтобы перелистывать страницы между запусками, используйте by_pages.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • searchstring

    Ищет название теста или путь названия.

  • sortenum

    Порядок сортировки списка дел.

list_testruns

Просматривает и фильтрует ваши тестовые прогоны, чтобы найти конкретные выполнения тестов. Фильтрует по ветке git (например, 'develop', 'main'), статусу прогона ('passed', 'failed', 'interrupted', 'incomplete', 'running'), временному интервалу ('Latest', '1h', '2h', '5h', '1d', '3d', '5d', 'weekly', 'monthly' или произвольный диапазон дат), автору коммита, окружению (например, 'production', 'staging', 'development') или тегам тестовых сценариев. Ищет в сообщениях коммитов (или точный номер прогона, если указано число) с помощью 'search' и сортирует результаты с помощью 'sort'. Поддерживает эффективную пагинацию через page/limit или offset/limit. Возвращает сводки тестовых прогонов со статистикой (общее количество, прошло, упало, пропущено, нестабильных), длительностью, статусом, веткой, автором и информацией о PR, если доступна. Отлично подходит для ответов на вопросы вроде «Какие тесты запускались на ветке develop?» или «Покажи все упавшие прогоны за последний час». PAT должен быть настроен в mcp.json как переменная окружения TESTDINO_PAT.

Параметры
  • by_authorstring

    Фильтрует по имени автора коммита (точное совпадение).

  • by_branchstring

    Фильтрует по названию ветки git (например, 'main', 'develop', 'feature/login').

  • by_commitstring

    Фильтрует по хешу коммита git (полному или частичному).

  • by_environmentstring

    Фильтрует по окружению. Пример: 'production', 'staging', 'development'.

  • by_statusenum

    Фильтрует по статусу запуска: 'passed', 'failed', 'interrupted', 'incomplete' или 'running'.

  • by_test_case_tagsstring

    Разделённые запятыми теги тестовых случаев, содержащиеся в запуске (точное совпадение; если у тега есть префикс «@», включайте его, например «@critical»).

  • by_time_intervalstring

    Фильтрует по временному интервалу. Поддерживает значения: 'Latest' (последние, без фильтра по времени), '1h' (последний час), '2h' (последние 2 часа), '5h' (последние 5 часов), '12h' (последние 12 часов), '1d' (последний день), '3d' (последние 3 дня), '5d' (последние 5 дней), 'weekly' (последние 7 дней), 'monthly' (последние 30 дней), 'last 1 hour' (последний 1 час), 'last day' (последний день), 'last 5 days' (последние 5 дней) или '2024-01-01,2024-01-31' (диапазон дат).

  • limitnumber

    Количество результатов на странице (по умолчанию: 20, макс: 50)

  • pagenumber

    Номер страницы, по умолчанию 1

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • searchstring

    Ищет по сообщениям коммитов запуска или, если значение числовое, сопоставляет его с точным счётчиком запуска.

  • sortenum

    Порядок сортировки списка запусков: 'counter_desc' (сначала новые, по умолчанию), 'counter_asc', 'duration_asc' или 'duration_desc'.

submit_audit_report

ФИНАЛЬНЫЙ ШАГ процесса аудита TestDino Playwright — отправляет готовый отчёт об аудите. Требуется разрешение на запись. Вызывайте это ТОЛЬКО ПОСЛЕ get_audit_report(action='context') и после того, как вы проанализировали локальный код Playwright и сформировали замечания. Оценка (0-100) и либо markdownReport, либо markdownReportPath обязательны. Включайте findings, recommendations, reportName, branch, scope и target по возможности. orgId обязателен — получите его через health(), если у вас его ещё нет. Используйте те же branch/scope/target, которые вы передавали в get_audit_report(action='context'), чтобы отчёт прикрепился к правильному контексту аудита.

Параметры
  • branchstring

    Ветка Git, которая была проверена. Необязательно. Автоматически определяется через git, если не указано.

  • findingsobject[]

    Массив замечаний. Каждое замечание ОБЯЗАНО содержать title, summary и severity (critical/high/medium/low): замечание, в котором отсутствует любой из этих элементов, отклоняется и не сохраняется. category должен быть одним из: surface_level_tests, missing_validation, stability_issues, hard_to_maintain, coverage_gaps, organization_ownership, setup_configuration, duplication_overlap, other. Необязательные: subCategory, recommendation и evidence (file, lineStart, lineEnd, observation).

  • markdownReportstring

    Полное содержимое отчёта в формате Markdown. Предпочитайте markdownReportPath, чтобы избежать больших вызовов инструментов.

  • markdownReportPathstring

    Путь к локальному markdown-файлу, который нужно прочитать для отправки. Относительный путь от TESTDINO_MCP_WORKSPACE (или абсолютный путь). Предпочтительнее, чем markdownReport.

  • orgIdstringобязательный

    Organization ID (обязателен для отправки). Если его у вас нет, получите его через health().

  • outputPathstring

    Относительный путь к файлу для локального сохранения (см. writeMarkdown). Определяется из TESTDINO_MCP_WORKSPACE. По умолчанию: TEST-AUDIT.md.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • recommendationsstring[]

    Массив строк рекомендаций.

  • reportNamestring

    Короткое человекочитаемое название для сохранённого отчёта (например, 'Login Flow Tests', 'API Integration Suite').

  • scopeenum

    Область аудита. Значение по умолчанию: 'suite'. Исользуйте 'feature' или 'spec_file', когда пользователь называет фрагмент, например auth/login, dashboards или конkreтный spec.

  • scorenumberобязательный

    Итоговый балл аудита (0-100). Обязательно.

  • targetobject

    Необязательная цель scoped-audit. Сохраняются только { value, path } (непустые строки), их читает дашборд; любой другой ключ отклоняется.

  • writeMarkdownboolean

    Если задано true, также записывает предоставленный Markdown в локальный файл. Игнорируется, если указан markdownReportPath (файл уже существует на диске).

update_manual_run

Изменяет существующий ручной тестовый прогон. Передавай только те поля, которые хочешь изменить, внутри объекта updates. Требуется разрешение на запись. Допустимые поля: name, note, environment, releaseId, state, forecast, tags, linkedIssues, attachments, links, selectionMode. Закрытые прогоны доступны только для чтения, за исключением releaseId (чтобы прогон можно было перепривязать к другому релизу). ВАЖНО: updates.tags должен быть JSON-массивом строк — например ["smoke","regression"] — НЕ строка, разделённая запятыми.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • runIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

  • updatesobjectобязательный

    Поля для обновления: name, note, environment, releaseId, state, forecast, tags, linkedIssues, attachments, links, selectionMode.

update_manual_test_case

Обновляет существующий ручной тест-кейс. Используйте для изменения деталей тест-кейса, шагов, статуса, приоритета или любых других полей. Передавайте в объекте updates только те поля, которые хотите обновить. Чтобы добавить комментарии, передайте updates.comments как массив строк — каждая станет новым комментарием (автор — владелец PAT). Чтобы привязать задачи Jira, передайте updates.issues как массив ключей задач (например, ['PROJ-123']); сервер ищет каждый ключ в подключённой Jira проекта и сохраняет его с заголовком и URL, либо как простую текстовую заглушку, если Jira не подключена или задача не найдена (то же поведение, что и в UI).

Параметры
  • caseIdstringобязательный

    Идентификатор тест-кейса (обязательно). Может быть внутренним _id или человекочитаемым идентификатором, например, 'TC-123'.

  • projectIdstringобязательный

    Идентификатор проекта (обязательно). Идентификатор проекта TestDino.

  • updatesobjectобязательный

    Объект, содержащий поля для обновления. Может включать: title (или name), description, steps, status, priority, severity, type, layer, behavior, preconditions, postconditions, automationStatus, tags, flags, attachments, customFields и т.д.

update_release

Изменить существующий релиз. Отправляйте только те поля, которые хотите изменить, внутри объекта updates. Требует разрешения на запись. Поля: name, description, note, type, startDate, endDate, isStarted, isCompleted, startedAt, completedAt, linkedIssues.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • releaseIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

  • updatesobjectобязательный

    Поля для обновления: name, description, note, type, startDate, endDate, isStarted, isCompleted, startedAt, completedAt, linkedIssues, branch, environment, buildTarget, testers, parentReleaseId.

update_run_test_case

Устанавливает исполнителя и/или результат для одного тест-кейса внутри ручного прогона — ровно то, что делает нажатие «Assign to» и изменение значка результата в интерфейсе. Требует права на запись. rtcRef принимает caseKey ('TC-156'), внутренний RTC ID вида tcm_rtc_... или _id базового тест-кейса. Работает как с уже изменёнными кейсами, так и с виртуальными кейсами в статусе 'untested' (сервер автоматически создаёт запись для кейса при первом редактировании). ВАЖНО: updates.assigneeUserId принимает email или User _id — работают оба варианта. Канонические значения updates.result: 'untested', 'passed', 'failed', 'blocked', 'skipped', 'retest' — можно передавать отображаемые ('Passed', 'Blocked') или каноническую форму, сервер приводит к нижнему регистру с подчёркиванием. Чтобы назначить или обновить несколько кейсов за раз, вызывайте этот инструмент параллельно (по одному вызову на кейс).

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • rtcRefstringобязательный

    Ссылка на запись для каждого кейса: tcm_rtc_... _id, caseKey ('TC-156') или _id базового тестового кейса (обязательно).

  • runIdstringобязательный

    Внутренний _id запуска или идентификатор в стиле счетчика, например 'RUN-12' (обязательно).

  • updatesobjectобязательный

    Поля для обновления. Поля быстрого вердикта: assigneeUserId (email или _id, null снимает назначение), result/status (отображаемая или каноническая форма), elapsed (секунды). Поля детального режима: comment (HTML), linkedIssues, attachments, stepResults (например, [{order, status, comment}]). Быстрый и детальный режимы взаимоисключающие: указание assignee вместе с детальными полями отклоняется на стороне сервера.

update_session

Изменить существующую исследовательскую сессию. Отправляйте только те поля, которые хотите изменить, внутри объекта updates. Требуется разрешение на запись. Допустимые поля: name, mission, sessionType, config, environment, releaseId, assigneeUserId, state, estimate, tags, linkedIssues, attachments. Findings здесь не редактируются. updates.assigneeUserId принимает либо User _id, либо адрес электронной почты. ВАЖНО: updates.tags должен быть JSON-массивом строк - например, ["exploratory","auth"] - НЕ строкой, разделённой запятыми.

Параметры
  • projectIdstringобязательный

    Project ID (обязательно).

  • sessionIdstringобязательный

    Внутренний _id или ID в стиле counter (обязательно).

  • updatesobjectобязательный

    Поля для обновления: name, mission, sessionType, config, environment, releaseId, assigneeUserId, state, estimate, tags, linkedIssues, attachments.

2.0.0основная
1.0.11
1.0.10
1.0.9
1.0.8
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0

Выберите клиент, чтобы установить testdino-hq/testdino-mcp:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"testdino-hq-testdino-mcp-bjbgfsa2be\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"testdino-mcp\"],\"env\":{\"TESTDINO_PAT\":\"your-pat-here\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add testdino-hq-testdino-mcp-bjbgfsa2be --env TESTDINO_PAT=your-pat-here -- npx -y testdino-mcp

Либо через JSON-конфиг:

claude mcp add-json testdino-hq-testdino-mcp-bjbgfsa2be "{\"command\":\"npx\",\"args\":[\"-y\",\"testdino-mcp\"],\"env\":{\"TESTDINO_PAT\":\"your-pat-here\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add testdino-hq-testdino-mcp-bjbgfsa2be --env TESTDINO_PAT=your-pat-here -- npx -y testdino-mcp

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.testdino-hq-testdino-mcp-bjbgfsa2be]
command = "npx"
args = ["-y", "testdino-mcp"]

[mcp_servers.testdino-hq-testdino-mcp-bjbgfsa2be.env]
TESTDINO_PAT = "your-pat-here"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите testdino-hq/testdino-mcp, а в поле команды запуска — строку ниже:
npx -y testdino-mcp

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например testdino-hq-testdino-mcp-bjbgfsa2be.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: testdino-hq-testdino-mcp-bjbgfsa2be
    command: npx
    args:
      - "-y"
      - "testdino-mcp"
    env:
      TESTDINO_PAT: your-pat-here
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "testdino-hq-testdino-mcp-bjbgfsa2be": {
      "command": "npx",
      "args": [
        "-y",
        "testdino-mcp"
      ],
      "env": {
        "TESTDINO_PAT": "your-pat-here"
      }
    }
  }
}

Похожие MCP-сервера

TCSoftInc/testcollab-mcp-server

TCSoftInc/testcollab-mcp-server

от tcsoftinc

Интегрируйте AI-ассистентов с TestCollab: управляйте тест-кейсами, тест-планами и наборами через API. Полезен тестировщикам и QA-инженерам для работы с тестовой документацией через Claude, Cursor и другие MCP-клиенты.

TypeScript⭐ 4
Hypersequent/qasphere-mcp

Hypersequent/qasphere-mcp

от hypersequent

MCP сервер для интеграции с QA Sphere, системой управления тестированием. Он позволяет AI-ассистентам искать, анализировать и обсуждать тест-кейсы прямо в IDE. Полезен разработчикам и QA-инженерам.

TypeScript⭐ 23
browserstack/mcp-server

browserstack/mcp-server

от browserstack

MCP сервер BrowserStack для тестирования через AI. Управляйте тест-кейсами, запускайте ручные и автотесты, отлаживайте и исправляйте код на естественном языке. Работает в Cursor и Claude.

TypeScript⭐ 155
qainsights/jmeter-mcp-server

qainsights/jmeter-mcp-server

от qainsights

MCP инструмент для выполнения JMeter тестов и анализа производительности. Запускает нагрузочные тесты, парсит JTL-отчёты, выявляет узкие места и генерирует HTML-дашборды. Пригодится QA-инженерам и ...

Python⭐ 74
ambar/simctl-mcp

ambar/simctl-mcp

от ambar

MCP сервер для iOS Simulator автоматизирует: управление устройствами и приложениями, отправку push-уведомлений, работу с буфером обмена. Полезен iOS-разработчикам и QA-инженерам для тестирования.

TypeScript⭐ 20
qainsights/locust-mcp-server

qainsights/locust-mcp-server

от qainsights

MCP-сервер для запуска нагрузочных тестов Locust из AI-сред. Просто интегрирует написание тестовых сценариев и запуск в headless или UI режиме. Полезен разработчикам и QA для быстрой верификации пр...

Python⭐ 13
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин