Labsco
MCP SERVER

Gherkio

by muhfaris

API integration tests written as YAML, with 21 tools that let an assistant create a scenario, run it step by step, and read structured results.

Automated Testing & QA
Summary
The conversion tools are what get an existing suite moved.

Most declarative test frameworks fail at adoption, not at execution — you have a hundred cURL commands and no path from there. Round-tripping between cURL and a scenario step removes that, and step-isolated runs with a dry-run flag mean an assistant can debug one request without executing the whole journey. The single static binary is the other practical detail: nothing to install in the CI image.

What it is

A declarative integration testing platform with a full MCP surface. Tests are YAML describing an HTTP user journey — request sequences, extracted variables, assertions — and compile into a single static Go binary with no runtime dependencies, which suits CI containers and air-gapped machines. The MCP server exposes the whole workflow: scenarios, environments, credentials, schemas and the runner.

What you get
  • Scenario management: `list_tests`, `read_test`, `create_test`, `update_test` and `delete_test`, with creation and update validating syntax and schema references before writing and backing up the previous file
  • `run_test` — execute a scenario fully or one step in isolation, choosing the `env`, an `account`, a `section` of setup, steps or teardown, with `dryRun`, `verbose` and `failFast` flags; results come back as structured JSON with request and response detail, timing budgets and per-assertion outcomes
  • `validate_test` and `validate_workspace` — check syntax, structure, request methods and schema references without executing anything
  • Environments and credentials: `list_environments`, `create_environment`, `update_environment`, `read_credential`, `create_credential` and `update_credential`
  • Schemas: `list_schemas`, `create_schema` and `update_schema`
  • `convert_curl_to_yaml` and `convert_yaml_to_curl` — move a legacy cURL command into a scenario step, or take a step back out to run by hand
  • Project setup: `init_project` scaffolds the configuration, schemas, environments and templates, and `get_project_info` reports the resolved workspace paths
Requirements

Nothing — no account, no key; credentials belong to the systems under test and live in the environment files. Install with `go install github.com/muhfaris/gherkio@latest`, then start the MCP server with `gherkio mcp`, pointing your client's `command` at the installed binary. Tests live under `.gherkio/tests/` in the workspace. Outbound network sandboxing with allowlists and blocklists is part of the platform, aimed at SSRF and DNS rebinding, and credentials are masked in output.

Setup effort

One command — go install github.com/muhfaris/gherkio@latest