Goku CLI

A Rust HTTP load-testing tool with an MCP server: an agent runs a benchmark and gets latency percentiles and status breakdowns.

  • 148 ★ on the repository
  • Last commit
  • MIT
CLI

Broad access

Why this level

  • The tool generates network load against a given address, and an agent can start it without your oversight.
  • The `--insecure` flag disables TLS checks and portal tokens are stored in `~/.config/goku/credentials.json`.
All reasons and checks

jcaromiq/goku

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/goku

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The tool generates network load against a given address, and an agent can start it without your oversight.
  • The `--insecure` flag disables TLS checks and portal tokens are stored in `~/.config/goku/credentials.json`.

This is third-party code. Review the repository files before installing.

What it does

Goku is a Rust HTTP load-testing tool inspired by Drill and Vegeta. It sets client count, duration or request count, a requests-per-second cap, multi-step scenarios, templated variables in URLs and bodies, and Bearer or Basic authentication. Output is text, JSON or CSV, text mode includes a latency histogram, and `compare` diffs two runs. A separate MCP server, `goku-mcp`, gives an agent one tool, `run_benchmark`: target, client count, requests or duration, headers, body, HTTP/2, ramp-up, timeout, rate limit. A full report comes back with percentiles, throughput and a status code breakdown. Results can be sent to the Observability Insight portal.

Who it is for. Developers and testers who check API performance and want to run benchmarks from a conversation with an agent.

Good fit when

  • Before release, p95 and p99 latency of an endpoint are measured under load.
  • An agent runs a multi-request scenario with `{{uuid}}` and `{{seq}}` substitution.
  • Two runs before and after a change are compared with `compare`.
  • In CI, run results go to the portal with branch and commit labels.

Not a fit when

  • Load is planned against someone else's service without the owner's permission.
  • The test targets a protocol other than HTTP: the docs list HTTP/1.1 and HTTP/2.
  • You need browser-level interface metrics.

Example request

Run a load test against the staging host: 50 clients, 30 seconds, HTTP/2, and report p95 and p99 latency.

Limitations

The `install.sh` installer is downloaded from the repository and run through `sh`: if you are cautious, install via Cargo or read the script first. Aim load only at services you are allowed to test, and do not let an agent pick the target without your confirmation. The MCP server is installed separately as `goku-mcp` and exposes one tool. The `insecure` parameter disables TLS certificate checks. Sending results to Observability Insight requires `goku login` or a `GOKU_OI_TOKEN` token in CI; query strings and credentials are stripped from URLs before sending.

How to disable. Remove the MCP server from the client settings and run `cargo uninstall goku-mcp goku-bench`. Clear the saved login with `goku logout` and revoke the token in the portal settings.

FAQ

What does the MCP server expose?

One tool, `run_benchmark`, with `target`, `clients`, `requests` or `duration_secs`, plus optional headers, body, `http2` and `rps`.

How do I compare two runs?

Use `goku compare <BASELINE> <CANDIDATE>` on two JSON result files.

How do I cap request rate?

Use the `--rps` flag in the CLI or the `rps` parameter of the MCP tool.

How do I report results from CI?

Set the `GOKU_OI_TOKEN` token and the `--report` flag; the README has a sample GitHub Actions step.

Can I accept a self-signed certificate?

Yes, the `--insecure` flag or the `insecure` MCP parameter. TLS verification is disabled, so avoid it on production addresses.

Discussion

No questions or reviews yet.

CLI tools
Official

An MCP server from the AWS load testing solution: an agent reads scenarios and runs and starts JMeter, K6 and Locust tests

MCP serverBroad access423Repository stars

MCP server: an agent sends GET, POST, PUT, DELETE and PATCH to your REST API and gets back status, headers and body

MCP serverExtended access103Repository stars
Official

kogiQA MCP gives an agent a browser that finds page elements without selectors, for debugging web apps and writing e2e tests

MCP serverExtended access88Repository stars
Needs a VPN

An MCP server that spins up several browser agents to test a site for broken links, UI bugs and accessibility issues

MCP serverExtended access835Repository stars
Official

MCP server, agent and skills for end-to-end UI tests where the agent drives the computer through vision on cloud machines

MCP serverBroad access386Repository stars

The CLI sends bounded HTTP load to your service and gives agents response-time and request-success measurements.

CLIExtended access10.7KRepository stars

README in short

The README gathers features, three ways to install the CLI, the Observability Insight portal integration, login and CI use. A separate section describes the MCP server and the `run_benchmark` parameters. A flag and subcommand reference closes the file.

README badge

Report a problem

Foxx AIGoku
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.