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: параметры, схему тела запроса и ответы. Полезно для понимания, какие данные отправлять.

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

Параметры

  • namestring

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

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

    Método HTTP del endpoint

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

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

api_endpoints

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

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

Параметры

  • namestring

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

  • tagstring

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

  • methodenum

    Filtrar por método HTTP

    GETPOSTPUTPATCHDELETEHEADOPTIONS
  • pathstring

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

api_import

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

Импортирует спецификацию 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 доступны.

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

Параметры

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

assert

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

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

Параметры

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

    HTTP method

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

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

  • headersobject

    Headers HTTP

  • bodyany

    Body del request (JSON)

  • queryobject

    Query parameters

  • authobject

    Autenticación

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

    Lista de assertions a validar contra la respuesta

bulk_test

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

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

Параметры

  • tagstring

    Filtrar por tag

  • expected_statusnumber

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

collection_delete

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

Удаляет сохраненный 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) и переменные. Если группа не существует, она создаётся автоматически.

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

Параметры

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

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

  • groupstring

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

  • variablesobject

    Variables iniciales como key-value

  • specstring

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

env_delete

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

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

Параметры

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

    Nombre del entorno a eliminar

env_get

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

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

Параметры

  • keystring

    Variable específica. Si se omite, retorna todas

  • environmentstring

    Entorno a consultar (default: entorno activo)

env_group_add_scope

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

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

Параметры

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

    Nombre del grupo

  • scopestring

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

env_group_create

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

Создаёт новую группу окружений. Затем добавляет области видимости (каталоги) с помощью 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 и окружениями.

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

Параметры

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

env_group_remove_scope

Удаляет директорию (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

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

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

Параметры

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

    Nombre de la variable

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

    Valor de la variable

  • environmentstring

    Entorno destino (default: entorno activo)

env_set_default

Отмечает окружение как default для своей группы. 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 к окружению. Если окружение не указано, использует активное.

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

Параметры

  • specstring

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

  • environmentstring

    Entorno destino (default: entorno activo)

env_switch

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

Изменяет активное окружение. Без 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/. Переносимая папка - скопируйте её в другой проект для импорта.

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

Параметры

  • tagstring

    Filtrar requests por tag

  • output_dirstring

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

export_curl

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

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

Параметры

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

    Nombre del request guardado en la colección

  • resolve_variablesboolean

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

export_environment

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

Экспортирует среду в нативном формате (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.

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

Параметры

  • namestring

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

  • tagstring

    Filtrar requests por tag

  • output_dirstring

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

  • resolve_variablesboolean

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

export_postman_environment

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

Экспортирует окружение как 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}}.

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

Параметры

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

    Pasos a ejecutar en orden

  • stop_on_errorboolean

    Detener al primer error (default: true)

import_collection

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

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

Параметры

  • filestring

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

  • tagstring

    Tag adicional para aplicar a todos los requests importados

  • overwriteboolean

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

import_environment

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

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

Параметры

  • 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)

  • activateboolean

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

import_postman_collection

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

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

Параметры

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

    Ruta al archivo .postman_collection.json exportado de Postman

  • tagstring

    Tag adicional para aplicar a todos los requests importados

  • overwriteboolean

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

import_postman_environment

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

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

Параметры

  • 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)

  • activateboolean

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

inspect_last_response

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

Получает полный 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 и измеряет среднее время, процентили и частоту ошибок.

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

Параметры

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

    HTTP method

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

    URL del endpoint

  • headersobject

    Headers HTTP

  • bodyany

    Body del request

  • queryobject

    Query parameters

  • authobject

    Autenticación

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

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

  • timeoutnumber

    Timeout por request en ms (default: 30000)

mock

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

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

Параметры

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

    Nombre del API importada

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

    Método HTTP del endpoint

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

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

  • targetenum

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

    requestresponse
  • statusstring

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

  • countnumber

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

request

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

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

Параметры

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

    HTTP method

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

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

  • headersobject

    Headers HTTP como key-value pairs

  • bodyany

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

  • queryobject

    Query parameters como key-value pairs

  • timeoutnumber

    Timeout en milisegundos (default: 30000)

  • authobject

    Configuración de autenticación

  • 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'.

    minimalnormalfull
  • 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.

  • max_body_bytesinteger

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

Другие проверенные MCP-сервера

manusa/Kubernetes MCP Server

manusa/Kubernetes MCP Server

MCP сервер для Kubernetes и OpenShift на Go: AI-агенты управляют кластерами — CRUD, Pods, Helm, Tekton. Не требует kubectl, работает с несколькими кластерами, лёгкий и быстрый.

Go1827
mobile-next/mobile-mcp

mobile-next/mobile-mcp

MCP сервер для мобильной автоматизации iOS и Android на симуляторах, эмуляторах и реальных устройствах. Взаимодействует с приложениями через accessibility-деревья и скриншоты. Подходит для тестирования, data-entry, агентных систем и LLM-сценариев.

TypeScript5489
chatmcp/mcp-server-chatsum

chatmcp/mcp-server-chatsum

MCP-сервер для суммаризации чат-сообщений. Позволяет запрашивать и обобщать переписку с помощью инструмента query_chat_messages. Полезен для анализа бесед и быстрого получения выжимки из чатов.

TypeScript1030
docker/hub-mcp

docker/hub-mcp

официальный

MCP-сервер для Docker Hub: позволяет LLM искать, рекомендовать и управлять контейнерными образами через естественный язык. Упрощает работу с репозиториями, экономя время разработчиков.

TypeScript157
VictoriaMetrics-Community/mcp-victoriametrics

VictoriaMetrics-Community/mcp-victoriametrics

официальный

MCP сервер для VictoriaMetrics: доступ к API и документации, выполнение PromQL/MetricsQL-запросов в реальном времени, анализ метрик, отладка relabeling и downsampling. Инструмент для инженеров по м...

Go191
stacklok/toolhive

stacklok/toolhive

ToolHive — open-source MCP-платформа для безопасного запуска серверов. Изолирует каждый MCP инструмент в контейнере, управляет доступом и аудитом. Подходит разработчикам, платформенным инженерам и предприятиям, которым нужен самохостинг и контроль данных.

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

Лука Никитин