Skip to main content
Glama
TuanLdv

ai-testcase-designer-mcp

by TuanLdv

🤖 AI Testcase Generator MCP

Сервер Model Context Protocol (MCP), который генерирует комплексные планы тестирования API (позитивные, негативные и граничные/крайние случаи) непосредственно из метаданных конечных точек — на базе LLM.

Это сервер Model Context Protocol (MCP) на TypeScript для инженеров по обеспечению качества. Он демонстрирует основные концепции Model Context Protocol, предоставляя:

  • Инструмент на базе ИИ для генерации исчерпывающих планов тестовых сценариев из API-эндпоинтов и полезных нагрузок

  • Интеграция LLM на основе промптов для качества и покрытия

  • Расширяемая структура для будущих инструментов автоматизации

✨ Возможности

  • 🔌 Сервер, совместимый с MCP (транспорт stdio).

  • 📝 Инструмент: generate_tests_excel

    • Входные данные: endpoint, HTTP-метод, полезная нагрузка, дополнительный контекст.

    • Варианты ввода:

      • Прямые данные эндпоинта: endpoint, HTTP-метод, полезная нагрузка

      • Используйте extraContext для предоставления любых дополнительных заметок или ограничений по тестированию

    • Выходные данные: 📊 Excel-план тестирования со столбцами: Sl no, Test Name, Pre-Condition, Steps, Expected Result.

  • 🧠 Генерация тестов на основе промптов с настраиваемой LLM (Groq, OpenAI, Anthropic).

  • 📜 Подробное логирование с помощью Winston.

Related MCP server: ai-testcase-generator-mcp

🏗️ Архитектура

flowchart TD
    A[Claude / MCP Client] -->|Run Tool| B[MCP Server]
    B -->|Prompt| C[LLM API]
    C -->|Test Cases JSON| B
    B -->|Excel Export| D[(Test Plan .xlsx)]
    B -->|Logs| E[Server Log File]

📂 Структура проекта

ai-testcase-designer-mcp/
├── build/                         # Compiled JavaScript output
├── assets/                        # Demo gifs, images, and sample files
│    ├── demo.gif
│    ├── excel_preview.png
│    └── sample_chat_message.txt
├── configs/
│    └── config.json               # Server/tool config
├── src/
│    ├── index.ts                  # Main server entry point (MCP interface & routing)
│    ├── excel.ts                  # Excel file creation & writing logic (modular)
│    ├── logger.ts                 # Winston logger configuration & log writing (modular)
│    └── prompts/
│         └── testcase_prompt.txt  # Prompt template for LLM-based test generation
├── package.json
├── tsconfig.json
├── README.md
└── .gitignore
  • src/excel.ts: Обрабатывает создание всех файлов Excel (.xlsx) и экспорт плана тестирования (модульно).

  • src/logger.ts: Предоставляет модульную функциональность логирования на сервере MCP с использованием Winston.

  • src/prompts/: Содержит шаблоны промптов для генерации тестов на основе LLM.

  • assets/: Демо-GIF, предпросмотр образца Excel и примеры чат-промптов.


🎥 Демо

Вот MCP, генерирующий тестовые сценарии и экспортирующий их в Excel:

AI Testcase Designer Demo

🔍 Предпросмотр Excel

Ниже приведен краткий предпросмотр сгенерированных тестовых сценариев:

Excel Preview

Разработка

Установите зависимости:

npm install

Соберите сервер:

npm run build

Для разработки с автоматической пересборкой:

npm run watch

⚙️ Установка

Выполните следующие шаги, чтобы настроить MCP-сервер AI Testcase Designer локально:

  1. Клонируйте репозиторий

    git clone 
    cd ai-testcase-designer-mcp
  2. Установите зависимости

    npm install
  3. Соберите сервер

    npm run build
  4. Настройте сервер в вашем MCP-клиенте

    a. Claude Desktop или любой MCP-совместимый клиент

    • Добавьте следующую конфигурацию сервера:

      • На MacOS:
        ~/Library/Application Support/Claude/claude_desktop_config.json

      • На Windows:
        %APPDATA%/Claude/claude_desktop_config.json

    {
      "mcpServers": {
        "ai-testcase-designer-mcp": {
          "disabled": false,
          "timeout": 60,
          "command": "node",
          "args": [
            "c:/Auto_WS/ai-testcase-designer-mcp/build/index.js"
          ],
          "transportType": "stdio"
        }
      }
    }

    b. Cline (расширение VS Code)

    Быстрый старт:

    1. Установите Cline из маркетплейса VS Code.

    2. Откройте боковую панель Cline (из панели действий VS Code).

    3. Перейдите в раздел "MCP Servers" и нажмите "Add New MCP Server".

    4. Заполните данные сервера:

      {
        "mcpServers": {
          "ai-testcase-designer-mcp": {
            "disabled": false,
            "timeout": 60,
            "command": "node",
            "args": [
              "c:/Auto_WS/ai-testcase-designer-mcp/build/index.js"
            ],
            "transportType": "stdio"
          }
        }
      }
    5. Проверьте соединение и сохраните.

    Визуальное пошаговое руководство см. ниже:

    Cline MCP Server Add Steps

    Cline MCP Server Connection Success

    Подробные инструкции по Cline см. в официальной документации:
    cline.bot/getting-started/installing-cline#vs-code-marketplace%3A-step-by-step-setup

c. Hermes Agent

  • Добавьте следующую конфигурацию сервера в ~/.hermes/config.yaml в раздел mcp_servers:

mcp_servers:
  ai-testcase-designer-mcp:
    command: "node"
    args: ["/absolute/path/to/ai-testcase-designer-mcp/build/index.js"]

🔑 Настройка API-ключа и рабочей директории

Для использования AI Testcase Designer MCP.

  1. Получите бесплатный API-ключ Groq здесь: https://console.groq.com/keys

  2. Рабочая директория (WORK_DIR), в которой будут сохраняться сгенерированные Excel-планы тестирования и журналы сервера.

Обновите файл config.json следующим образом:

{
  "MODEL_API_KEY": "gsk_7Ma3Fabcd <your-api-key-here>",
  "WORK_DIR": "C:/Auto_WS/ai-testcase-designer-mcp"
}

Как использовать

  1. 🖥️ Откройте Claude Desktop (или любой MCP-совместимый клиент).

  2. 📂 Скачайте пример чат-сообщения: sample_chat_message.txt и скопируйте его содержимое.

  3. ✉️ Вставьте содержимое в чат и отправьте сообщение: ИИ сгенерирует подробные тестовые сценарии в формате Excel.

  4. 💾 Сгенерированные Excel-файлы и журналы сервера сохраняются в вашей папке WORK_DIR.

▶️ Пример запроса

{
  "name": "generate_tests_excel",
  "arguments": {
    "endpoint": "https://api.example.com/v1/users",
    "method": "POST",
    "payload": {
      "name": "John Doe",
      "email": "john@example.com"
    },
    "extraContext": "Focus on invalid email and empty payload scenarios."
  }
}

📊 Пример вывода Excel

№ п/п

Название теста

Предусловие

Шаги

Ожидаемый результат

1

Создание валидного пользователя

БД пуста

Отправить POST с валидной полезной нагрузкой

Пользователь успешно создан

2

Отсутствует email

БД пуста

Отправить POST только с именем

Ошибка валидации 400

3

Неверный email

БД пуста

Отправить POST с неверным форматом email

Сообщение об ошибке 422

📂 Выходные файлы

Файлы записываются в: ./workdir/generated/


Пример вывода журнала

2025-09-13T10:22:11 [info]: [Step1] Incoming request: endpoint=/v1/users, method=POST
2025-09-13T10:22:11 [info]: [Step2] Building LLM prompt...
2025-09-13T10:22:13 [info]: [Step5] Converting LLM JSON to Excel rows (15 test cases)

Отладка

npm run inspector

Inspector предоставит URL для доступа к инструментам отладки в вашем браузере.

Лицензия

Этот проект лицензирован по лицензии MIT.
Подробности см. в файле LICENSE.

Available Tools

1 tool
generate_tests_excelB

Generate a comprehensive API test plan with positive, negative, and boundary value analysis test cases and export to Excel (.xlsx). You (Cursor IDE model) can generate test cases directly into the testCases array argument, or pass endpoint, method, and payload to generate via external LLM if configured.

NameRequiredDescriptionDefault
methodYesHTTP method (GET, POST, PUT, DELETE, etc.)
payloadNoSample payload for the request (if applicable)
endpointYesAPI endpoint to test (e.g., https://api.example.com/v1/users)
testCasesNoDirect list of test cases generated by Cursor IDE's AI model. Bypasses external LLM API if provided.
extraContextNoAny additional instructions/context for the test plan

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does disclose the core behavior: generating test cases and exporting to Excel, and it mentions the bypass mechanism for external LLM. However, it does not disclose potential side effects (e.g., file creation, network calls to external LLM, or failure modes if no external LLM is configured). The description is partially transparent but leaves out important behavioral details such as whether the tool makes external API calls when testCases are not provided, and what happens if the external LLM is not configured.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise, fitting in two sentences. It front-loads the core purpose (generating test plan and exporting to Excel) and then explains the two modes of use. The structure is effective, but the second sentence contains a parenthetical that adds some complexity, though it's still efficient. No wasted words, but it could be slightly more streamlined.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of this tool (5 parameters, nested objects, two modes of operation, no output schema), the description provides a decent overview but misses several critical details. It does not explain what happens when both testCases and endpoint/method are provided (which takes precedence), it doesn't mention the format of the Excel file or where it is saved, and it doesn't clarify what is required for the external LLM to be used. The absence of an output schema means the description should clarify what the tool returns, but it only says 'export to Excel' without specifying the output format. This is a significant gap for a tool that likely produces a file artifact.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, meaning that every parameter has a description in the schema itself. The description adds extra context about the testCases parameter, explaining that it bypasses the external LLM, and explains the alternative use of endpoint/method/payload. This adds value beyond the schema but is not exhaustive for all parameters. With full schema coverage, the baseline is 3, and the description slightly enhances clarity for the testCases parameter, but doesn't add semantic depth to method or endpoint beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: generating a comprehensive API test plan with positive, negative, and boundary value analysis, and exporting to Excel. It distinguishes itself by mentioning two modes of operation (direct test case generation or via external LLM), which is a specific feature. However, it does not compare to any sibling tools since none are provided, so it lacks explicit differentiation in that regard.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool (when generating test plans for APIs) and provides context on how to use it (either provide testCases directly or provide endpoint/method/payload for external generation). However, it does not specify when not to use it or mention alternatives, leaving some ambiguity about the exact selection criteria. The guidance is present but not explicit about exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.0
    • First observedgenerate_tests_excel

TDQS

A3.7/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is no possibility of confusion between tools. The single tool's purpose is clearly defined.

Naming Consistency5/5

With only one tool, naming consistency is trivially satisfied. The name 'generate_tests_excel' follows a clear verb_noun pattern and accurately describes the action.

Tool Count3/5

Having just one tool feels thin for a server named 'ai-testcase-designer-mcp', which suggests a broader scope. The single tool does combine generation and export, but it may leave agents wanting for more modular capabilities.

Completeness4/5

The tool covers the core workflow of generating and exporting test cases to Excel, with support for both manual input and external LLM generation. However, it lacks separate operations like previewing, editing, or managing test case files, which are minor gaps given the narrow purpose.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    MCP server for API test case generation from Swagger/OpenAPI specs. Parses Swagger 2.0 and OpenAPI 3.x, generates test cases across 8 categories (positive, negative, boundary, auth, security, idempotency, pagination, business logic), and exports to Postman, TestRail, Allure, k6, pytest, Gherkin, and CSV. Supports internal corporate APIs with auth headers. Auto-saves export files to your working di
    10
    6 npm
    2
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Enables QA/SDET engineers to test APIs by ingesting Swagger/OpenAPI specs and Postman collections, generating and executing tests in multiple languages and frameworks with real-time progress tracking.
    11
    13 npm
    6
    MIT