MCP Rigor

официальный

MCP-сервер, который предоставляет AI-кодинг-агентам детерминированный цикл тестирования для создаваемых ими MCP-серверов: пишите приёмочные тесты на естественном языке, проверяйте формулировки, запускайте их и читайте структурированные результаты «пройдено/не пройдено» — никакой AI не интерпретирует тесты во время выполнения. Запуск: npx mcprigor serve <project>. Также полноценный CLI/CI-фреймворк для тестирования с обнаружением расхождений контрактов и паритетом транспорта. Apache-2.0.

Что можно делать с Rigor MCP?

  • Проверка тестовых файлов — Запросите проверку синтаксиса и структуры файла .mcpr с помощью check перед его запуском на сервере.

  • Запуск приемочных тестов — Выполните тестовый набор против локального или потокового HTTP MCP-сервера с помощью test, с подсчетом пройденных и неудачных тестов в выводе.

  • Создание HTML-отчетов — Создайте доступный для общего использования артефакт report.html из тестовых запусков, чтобы прикрепить его к тикетам или журналам CI.

  • Интерактивное создание тестов — Используйте author для обнаружения инструментов, ресурсов и подсказок MCP-сервера, затем создайте тестовый файл, руководствуясь вашими целями проверки.

  • Использование рабочей области браузера — Запустите workspace для редактирования, проверки и запуска нескольких наборов тестов с подсветкой синтаксиса, автодополнением и историей запусков.

Документация

Это руководство проведёт вас от установки до первого успешно пройденного MCP-теста.

1. Установка MCP Rigor

Вам понадобится Node.js 20 или 22. MCP Rigor опубликован на npm как mcprigor — пакет поставляется с готовым к запуску скомпилированным кодом, поэтому ничего собирать из исходников не нужно.

mkdir mcp-acceptance-tests
cd mcp-acceptance-tests
npm init -y
npm install mcprigor

Чтобы проверить установку:

npx mcprigor --help

2. Создайте файл теста

Создайте calculator.mcpr:

MCP Test 1

Suite: "Calculator acceptance tests"
Server: node ../calculator-server/dist/server.js

Test: "Adding 20 and 22 gives 42"
  Call tool "add" with:
    a: 20
    b: 22

  Expect "structuredContent.sum" equals 42

Замените команду Server на команду, которая запускает ваш MCP-сервер.

Для развёрнутого Streamable HTTP-сервера используйте:

MCP URL: https://qa.example.com/mcp

3. Проверьте формулировку

npx mcprigor check calculator.mcpr

Корректный файл выводит:

✓ calculator.mcpr looks good and is ready to run

check не подключается к серверу.

4. Запустите тест

npx mcprigor test calculator.mcpr

Успешный результат выглядит так:

MCP Rigor — Calculator acceptance tests
✓ Adding 20 and 22 gives 42

1 passed, 0 failed, 0 skipped, 0 blocked

5. Создайте отчёт для публикации

npx mcprigor test calculator.mcpr --html report.html

Откройте report.html или прикрепите его к тикету.

6. Попробуйте браузерную рабочую область

npx mcprigor workspace .

Откройте выведенный локальный URL. Выберите calculator.mcpr — редактор предоставляет подсветку синтаксиса и автодополнение — затем нажмите Validate и ▶ Run tests. Вы также можете создавать новые файлы тестов, запускать несколько наборов одновременно с помощью флажков и просматривать историю запусков и тенденции на панели результатов. См. руководство по QA-рабочей области.

Если вы не знаете названия инструментов

Создайте небольшой целевой файл, например server.mcpr:

MCP Test 1
Suite: "Server target"
Server: node ../calculator-server/dist/server.js
Test: "Connection"
  Send "ping"

Запустите управляемое создание:

npx mcprigor author server.mcpr --out calculator.mcpr

MCP Rigor обнаруживает инструменты, ресурсы и подсказки и спрашивает, что вы хотите проверить.

Рекомендуемая структура проекта

mcp-acceptance-tests/
  package.json
  tests/
    smoke.mcpr
    regression.mcpr
    data/
      customers.csv
  .mcprigor/
    # generated evidence; normally ignored or stored as CI artifacts

Следующие шаги