K6 Load Testing MCP Server for performance testing
Until 2026-09-26 this record combined several servers published from one repository. The others now have records of their own: traffic-generator-mcp. Checks from before that date include them.
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"k6-mcp-server","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# K6 MCP Server A Model Context Protocol (MCP) server for running k6 load tests and stress tests. ## Features - **Load Testing**: Run k6 load tests with configurable virtual users, duration, and request parameters - **Stress Testing**: Run multi-stage stress tests to gradually increase load - **JSON Results**: Get detailed test results in JSON format - **Flexible Configuration**: Support for custom HTTP methods, headers, body, and thresholds ## Prerequisites - Python 3.10 or higher - k6 installed on your system ([Installation Guide](https://k6.io/docs/get-started/installation/)) ## Installation 1. Install dependencies: ```bash pip install -r requirements.txt ``` 2. Run the server: ```bash python index.py ``` ## Tools ### run_k6_load_test Run a k6 load test against a specific URL. **Parameters:** - `url` (required): Target URL for the load test - `vus` (optional): Number of virtual users (default: 10) - `duration` (optional): Test duration (default: "30s") - `rps` (optional): Requests per second limit - `method` (optional): HTTP method (default: "GET") - `headers` (optional): HTTP headers object - `body` (optional): Request body for POST/PUT requests - `thresholds` (optional): k6 thresholds for pass/fail criteria **Example:** ```json { "url": "https://httpbin.org/get", "vus": 20, "duration": "1m", "method": "GET", "headers": { "User-Agent": "k6-test" } } ``` ### run_k6_stress_test Run a k6 stress test with multiple stages to gradually increase load. **Parameters:** - `url` (required): Target URL for the stress test - `stages` (optional): Array of stages with duration and target VUs - `method` (optional): HTTP method (default: "GET") - `headers` (optional): HTTP headers object - `body` (optional): Request body for POST/PUT requests - `thresholds` (optional): k6 thresholds for pass/fail criteria **Example:** ```json { "url": "https://httpbin.org/get", "stages": [ {"duration": "2m", "target": 10}, {"duration": "5m", "target"…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.