init_projectLABSCO 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_testanddelete_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 theenv, anaccount, asectionof setup, steps or teardown, withdryRun,verboseandfailFastflags; results come back as structured JSON with request and response detail, timing budgets and per-assertion outcomesvalidate_testandvalidate_workspace— check syntax, structure, request methods and schema references without executing anything- Environments and credentials:
list_environments,create_environment,update_environment,read_credential,create_credentialandupdate_credential - Schemas:
list_schemas,create_schemaandupdate_schema convert_curl_to_yamlandconvert_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_projectscaffolds the configuration, schemas, environments and templates, andget_project_inforeports 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
USE CASES
Writing your first integration test
Scaffold the project, describe the journey, and have the scenario created with its syntax and schema references validated before it is written.
Migrating a pile of cURL commands
Convert each command into a scenario step rather than rewriting the request by hand.
Debugging a step that fails
Run that one step in isolation with full request and response detail, then re-run the whole journey once it passes.
Running the same suite against several environments
Define the environments and their credentials once, then choose which one a run targets.
Checking a workspace before committing
Validate every scenario's structure and schema references without sending a single request.
21 tools
Listed in project docs. Your client may show a different list.
get_project_infolist_testsread_testcreate_testupdate_testdelete_testrun_testvalidate_testvalidate_workspacelist_environmentscreate_environmentupdate_environmentread_credentialcreate_credentialupdate_credentiallist_schemascreate_schemaupdate_schemaconvert_curl_to_yamlconvert_yaml_to_curlBEFORE YOU INSTALL
What to know first
Tools you get
21 tools named in the project's documentation.
INSTALLATION
Connect your client
Server setup
go install github.com/muhfaris/gherkio@latestMCP Clients
Claude Desktop, Cursor
{
"mcpServers": {
"gherkio": {
"command": "/usr/local/bin/gherkio",
"args": [
"mcp"
]
}
}
}Cline, Roo Code
{
"mcpServers": {
"gherkio": {
"type": "stdio",
"command": "/usr/local/bin/gherkio",
"args": [
"mcp"
]
}
}
}Continue
{
"experimental": {
"mcpServers": {
"gherkio": {
"command": "/usr/local/bin/gherkio",
"args": [
"mcp"
]
}
}
}
}JetBrains IDEs
/usr/local/bin/gherkio mcp