cocaxcode/api-testing-mcp

cocaxcode/api-testing-mcp

от cocaxcode
Полноценный MCP сервер для тестирования API: 42 инструмента без настройки. HTTP-запросы с проверками, цепочки и импорт OpenAPI. Также генерация моков, нагрузочное тестирование и сравнение ответов, всё из диалога. Для разработчиков и тестировщиков.

@cocaxcode/api-testing-mcp

The most complete MCP server for API testing. Period.
42 MCP tools · Zero config · Works in any MCP client

npm version npm downloads 42 tools 171 tests Node License

Overview · Just Talk to It · Installation · Features · Tool Reference · Storage · Architecture


Quick Overview

The most complete MCP server for API testing — 42 tools, zero config, nothing else comes close. This is not just a request sender. It is a full testing workbench: HTTP requests with assertions, multi-step flows with variable extraction, OpenAPI import with schema-aware mock data, load testing with percentile metrics, response diffing across environments, bulk test runners, reusable collections, environment groups with directory scoping and persistent defaults, Postman import/export, and cURL export. All from natural conversation. No accounts, no cloud, no generated files. Everything runs inline and stores as plain JSON you own.


Just Talk to It

You don't need to learn tool names or parameters. Describe what you want and the AI picks the right tool.

Инструменты были проиндексированы:
api_endpoint_detail

Показывает полную информацию об endpoint: параметры, схему тела запроса и ответы. Полезно для понимания, какие данные отправлять.

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

    Método HTTP del endpoint

  • namestring

    Nombre del API importada. Si se omite y solo hay un spec, lo usa automáticamente

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

    Path exacto del endpoint (ej: "/blog", "/auth/login")

api_endpoints

Перечисляет эндпоинты импортированного API. Фильтрует по тегу, методу или пути. Если имя не указано и импортирован только один spec, использует его автоматически.

Параметры
  • methodenum

    Filtrar por método HTTP

  • namestring

    Nombre del API importada. Si se omite y solo hay un spec, lo usa automáticamente

  • pathstring

    Filtrar por path (búsqueda parcial, ej: "/blog" muestra todos los que contienen /blog)

  • tagstring

    Filtrar por tag (ej: "blog", "auth", "users")

api_import

Импортирует спецификацию OpenAPI/Swagger из URL или локального файла (JSON или YAML). Сохраняет endpoints и схемы для запросов.

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

    Nombre para identificar este API (ej: "mi-backend", "cocaxcode-api")

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

    URL o ruta a archivo local del spec OpenAPI (JSON o YAML, ej: http://localhost:3001/api-docs-json, ./openapi.yaml)

api_spec_list

Перечисляет все импортированные спецификации API. Используйте, чтобы узнать, какие API доступны.

Параметры

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

assert

Выполняет запрос и проверяет ответ с помощью assertions. Возвращает результат pass/fail для каждого assertion.

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

    Lista de assertions a validar contra la respuesta

  • authobject

    Autenticación

  • bodyany

    Body del request (JSON)

  • headersobject

    Headers HTTP

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

    HTTP method

  • queryobject

    Query parameters

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

    URL del endpoint (soporta /relativa y {{variables}})

bulk_test

Выполняет все запросы, сохраненные в коллекции, и сообщает результаты. Фильтруется по тегу.

Параметры
  • expected_statusnumber

    Status HTTP esperado para todos (default: cualquier 2xx)

  • tagstring

    Filtrar por tag

collection_delete

Удаляет сохраненный request из коллекции.

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

    Nombre del request a eliminar

collection_get

Получает полные детали сохранённого запроса по его имени.

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

    Nombre del request guardado

collection_list

Перечисляет все запросы, сохраненные в коллекции. Опционально фильтрует по тегу.

Параметры
  • tagstring

    Filtrar por tag

collection_save

Сохраняет запрос в локальной коллекции. Если запрос с таким же именем уже существует, перезаписывает его.

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

    Nombre único del request guardado

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

    Configuración del request a guardar

  • tagsstring[]

    Tags para organizar (ej: ["auth", "users"])

diff_responses

Выполняет два запроса и сравнивает их ответы. Помогает обнаруживать регрессии или сравнивать окружения.

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

    Primer request

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

    Segundo request

env_create

Создаёт новое окружение. СПРАШИВАЕТ у пользователя: имя, группа (или global) и переменные. Если группа не существует, она создаётся автоматически.

Параметры
  • groupstring

    Nombre del grupo (ej: "cocaxcode"). Si se omite, auto-detecta por CWD. Para global: pasar cadena vacía ""

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

    Nombre del entorno (ej: dev, staging, prod)

  • specstring

    Nombre del spec API asociado (ej: "cocaxcode-api")

  • variablesobject

    Variables iniciales como key-value

env_delete

Удаляет окружение и все его переменные. Если это активное окружение, деактивирует его.

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

    Nombre del entorno a eliminar

env_get

Получает конкретную переменную или все переменные окружения. Чувствительные значения (token, password, secret, api_key...) по умолчанию маскируются. Запросите переменную по имени, чтобы увидеть её полное значение.

Параметры
  • environmentstring

    Entorno a consultar (default: entorno activo)

  • keystring

    Variable específica. Si se omite, retorna todas

env_group_add_scope

Добавляет директорию (scope) в группу. Окружения группы будут доступны из этой директории.

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

    Nombre del grupo

  • scopestring

    Ruta del directorio. Si se omite, usa el directorio actual

env_group_create

Создаёт новую группу окружений. Затем добавляет области видимости (каталоги) с помощью env_group_add_scope.

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

    Nombre del grupo (ej: cocaxcode, optimizatusol)

env_group_delete

Удаляет группу. Окружения группы становятся глобальными.

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

    Nombre del grupo a eliminar

env_group_list

Выводит список всех групп с их scopes, default и окружениями.

Параметры

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

env_group_remove_scope

Удаляет директорию (scope) из группы.

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

    Nombre del grupo

  • scopestring

    Ruta del directorio a quitar. Si se omite, usa el directorio actual

env_list

Перечисляет все доступные окружения и указывает, какое из них активно.

Параметры

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

env_project_clear

Удаляет привязку конкретного окружения к проекту. Проект не будет иметь активного окружения, пока не будет назначено одно.

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

    Ruta del proyecto del que eliminar la asociación

env_project_list

Перечисляет все проекты с назначенными конкретными средами.

Параметры

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

env_rename

Переименовывает существующее окружение. Если это активное окружение, обновляет ссылку.

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

    Nombre actual del entorno

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

    Nuevo nombre para el entorno

env_set

Устанавливает переменную в окружении. Если окружение не указано, использует активное.

Параметры
  • environmentstring

    Entorno destino (default: entorno activo)

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

    Nombre de la variable

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

    Valor de la variable

env_set_default

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

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

    Nombre del entorno a marcar como default

env_set_group

Назначает или изменяет группу существующего окружения. Чтобы сделать его глобальным, передать пустую группу "".

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

    Nombre del entorno

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

    Nombre del grupo. Cadena vacía "" para hacerlo global

env_spec

Привязывает или отвязывает спецификацию API к окружению. Если окружение не указано, использует активное.

Параметры
  • environmentstring

    Entorno destino (default: entorno activo)

  • specstring

    Nombre del spec a asociar. Si se omite, desasocia el spec actual

env_switch

Изменяет активное окружение. Без project изменяет глобальное. С project применяется только к этому каталогу.

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

    Nombre del entorno a activar

  • projectstring

    Ruta del proyecto (ej: C:/cocaxcode). Si se omite, cambia el entorno global

export_collection

Экспортирует сохранённые запросы в нативном формате (JSON) в .atm/. Переносимая папка - скопируйте её в другой проект для импорта.

Параметры
  • output_dirstring

    Directorio donde guardar el archivo (default: .atm/)

  • tagstring

    Filtrar requests por tag

export_curl

Генерирует команду cURL из запроса, сохраненного в коллекции. Готова для копирования и вставки.

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

    Nombre del request guardado en la colección

  • resolve_variablesboolean

    Resolver {{variables}} del entorno activo (default: true)

export_environment

Экспортирует среду в нативном формате (JSON) в .atm/ переносимую папку - скопируйте её в другой проект для импорта.

Параметры
  • namestring

    Nombre del entorno a exportar (default: entorno activo)

  • output_dirstring

    Directorio donde guardar el archivo (default: .atm/)

export_postman_collection

Экспортирует сохраненные запросы в формате Postman Collection v2.1 (JSON). Записывает файл на диск, который можно напрямую импортировать в Postman.

Параметры
  • namestring

    Nombre de la colección (default: "API Testing Collection")

  • output_dirstring

    Directorio donde guardar el archivo (default: ./postman/)

  • resolve_variablesboolean

    Resolver {{variables}} del entorno activo (default: false)

  • tagstring

    Filtrar requests por tag

export_postman_environment

Экспортирует окружение как Postman Environment (JSON). Записывает файл на диск, напрямую импортируемый в Postman.

Параметры
  • namestring

    Nombre del entorno a exportar (default: entorno activo)

  • output_dirstring

    Directorio donde guardar el archivo (default: ./postman/)

flow_run

Выполняет последовательность запросов по порядку. Извлекает переменные из каждого ответа для использования в следующих шагах с помощью {{variable}}.

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

    Pasos a ejecutar en orden

  • stop_on_errorboolean

    Detener al primer error (default: true)

import_collection

Импортирует запросы из .atm/collection.json или конкретного файла. Автоматически обнаруживает .atm/ в проекте.

Параметры
  • filestring

    Ruta al archivo (default: busca en .atm/collection.json)

  • overwriteboolean

    Sobreescribir requests existentes con el mismo nombre (default: false)

  • tagstring

    Tag adicional para aplicar a todos los requests importados

import_environment

Импортирует окружение из .atm/ или из указанного файла. Автоматически обнаруживает файлы .env.json в .atm/.

Параметры
  • activateboolean

    Activar el entorno importado como entorno activo (default: false)

  • filestring

    Ruta al archivo (default: busca *.env.json en .atm/)

  • namestring

    Nombre para el entorno (default: usa el nombre del archivo exportado)

  • overwriteboolean

    Sobreescribir si ya existe un entorno con el mismo nombre (default: false)

import_postman_collection

Импортирует Postman Collection v2.1 (JSON) как запросы, сохраненные в коллекции. Поддерживает папки, аутентификацию, заголовки, тело и параметры запроса.

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

    Ruta al archivo .postman_collection.json exportado de Postman

  • overwriteboolean

    Sobreescribir requests existentes con el mismo nombre (default: false)

  • tagstring

    Tag adicional para aplicar a todos los requests importados

import_postman_environment

Импортирует окружение Postman (JSON) как локальное окружение. Поддерживает переменные со значениями initial/current.

Параметры
  • activateboolean

    Activar el entorno importado como entorno activo (default: false)

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

    Ruta al archivo .postman_environment.json exportado de Postman

  • namestring

    Nombre para el entorno (default: usa el nombre del archivo Postman)

  • overwriteboolean

    Sobreescribir si ya existe un entorno con el mismo nombre (default: false)

inspect_last_response

Получает полный HTTP-ответ от предыдущего вызова request, когда сжатой версии недостаточно. Использует call_id, который находится в поле call_id сжатого ответа. Без call_id возвращает самый последний.

Параметры
  • call_idstring

    ID devuelto en el campo 'call_id' de una response comprimida. Si se omite, devuelve la última response guardada (warning si hay varias en los últimos 5s).

load_test

Отправляет N одновременных запросов к одному и тому же endpoint и измеряет среднее время, процентили и частоту ошибок.

Параметры
  • authobject

    Autenticación

  • bodyany

    Body del request

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

    Número de requests concurrentes a lanzar (max: 100)

  • headersobject

    Headers HTTP

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

    HTTP method

  • queryobject

    Query parameters

  • timeoutnumber

    Timeout por request en ms (default: 30000)

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

    URL del endpoint

mock

Генерирует mock/fake данные для endpoint на основе импортированной спецификации OpenAPI. Полезно для frontend без backend.

Параметры
  • countnumber

    Número de items mock a generar si el schema es un array (default: 3)

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

    Método HTTP del endpoint

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

    Nombre del API importada

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

    Path del endpoint (ej: "/users", "/blog")

  • statusstring

    Status code de la respuesta a mockear (default: "200" o "201")

  • targetenum

    Generar mock del body de request o de la response (default: response)

request

Выполняет HTTP-запрос. Относительные URL (/path) используют BASE_URL активного окружения. Поддерживает {{переменные}}. По умолчанию ответ сжимается (verbosity=normal) для экономии токенов; используйте verbosity=full или inspect_last_response, если нужен полный ответ.

Параметры
  • authobject

    Configuración de autenticación

  • bodyany

    Body del request (JSON). Soporta {{variables}}

  • headersobject

    Headers HTTP como key-value pairs

  • max_body_bytesinteger

    Max body size in bytes for verbosity='normal' (default: 2048). Ignored for minimal/full.

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

    HTTP method

  • only_fieldsstring[]

    Cheap alternative to 'full' when you know exactly what you need from the body. Returns only these dot-paths. Supports array index and wildcard. Examples: ["data.id"], ["user.email", "user.role"], ["items[*].id", "meta.total"]. Often saves >95% vs full while keeping the fields you care about.

  • queryobject

    Query parameters como key-value pairs

  • timeoutnumber

    Timeout en milisegundos (default: 30000)

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

    URL del endpoint. Si empieza con / se antepone BASE_URL del entorno activo. Soporta {{variables}}.

  • verbosityenum

    Controls response detail to save context tokens. Default: 'normal'. - 'minimal': Only status, method, url, elapsed_ms, and first 200 chars of body. USE FOR: health checks (/health, /ping), status polling loops, fire-and-forget POST/DELETE, waiting for a job to complete, or when you only care whether the call succeeded. SAVES: ~95% tokens vs full. - 'normal' (DEFAULT): Filtered headers (omits Date, Server, CF-*, Set-Cookie, etc.) + body truncated to max_body_bytes with 'body_truncated' flag. USE FOR: most debugging — CRUDs, checking error messages, API contract exploration. SAVES: ~75% tokens vs full. - 'full': Complete response untouched. USE FOR: debugging CORS/cache/auth headers, large bodies you must inspect completely, or when the user asks to see everything. NO SAVINGS. If a response is truncated and you need more, prefer inspect_last_response({call_id}) over re-running with 'full'.

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

qainsights/locust-mcp-server

qainsights/locust-mcp-server

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

Python13
hijaz/postmancer

hijaz/postmancer

Postmancer — MCP сервер для тестирования REST API, аналог Postman для ИИ. Отправляет HTTP запросы, управляет коллекциями, подставляет переменные окружения, поддерживает аутентификацию (Basic, Bearer, API Key, OAuth2). Полезен разработчикам для интеграции AI в тестирование.

TypeScript28
eyaushev/swagger-testcase-mcp

eyaushev/swagger-testcase-mcp

Автоматически генерирует тест-кейсы из Swagger/OpenAPI спецификаций. Анализирует параметры, ограничения и схемы, создавая тесты 8 категорий для ручного тестирования или импорта в TMS, ускоряя подго...

TypeScript2
marin1321/mcp-devtools

marin1321/mcp-devtools

MCP-сервер, дающий AI-агентам (Claude, Cursor и др.) безопасный доступ к локальной среде разработки. Включает 14 инструментов для работы с файлами, базами данных, процессами, OpenAPI, а также плаги...

TypeScript3
martingeidobler/android-mcp-server

martingeidobler/android-mcp-server

MCP сервер для управления Android через ADB: AI ассистент видит экран, тапает элементы, читает логи и устанавливает приложения. Включает 25 инструментов для отладки и тестирования без модификации кода. Полезен Android-разработчикам и тестировщикам.

TypeScript66
hungthai1401/bruno-mcp

hungthai1401/bruno-mcp

MCP сервер для запуска API-тестов из коллекций Bruno. Позволяет LLM выполнять тесты через Bruno CLI, получать детальные результаты: статус, статистику прохождения, ошибки и время выполнения. Полезе...

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

Лука Никитин