A load test usually ends with a JTL file nobody wants to open. Here the same session that started the run parses the file, points at the slow endpoints and says what to try next.
An MCP server that executes JMeter tests and analyzes what came out of them. It launches JMeter, captures the output, and parses the resulting JTL file into metrics, bottlenecks and recommendations.
- `execute_jmeter_test_non_gui` — runs a `.jmx` test in non-GUI mode, the default for performance reasons
- `execute_jmeter_test` — launches JMeter in GUI mode, which by JMeter's own design opens the tool rather than running the test
- `analyze_jmeter_results` — parses a JTL file, XML or CSV, and summarises the key metrics
- `identify_performance_bottlenecks` — slow endpoints, error-prone endpoints, response-time outliers, and the effect of concurrency
- `get_performance_insights` — recommendations ranked by likely impact
- `generate_visualization` — time series, response-time distributions and endpoint comparisons, exportable as an HTML report
- Streaming parsers, so large result files do not have to be loaded whole
JMeter installed and callable from the command line — make the launcher executable with `chmod +x /path/to/jmeter/bin/jmeter`. Install `uv`, plus `numpy` and `matplotlib` for the analysis and charts. Configure `.env` with `JMETER_HOME` and `JMETER_BIN`, and optionally `JMETER_JAVA_OPTS` for heap settings.
One command — uvx jmeter-mcp-server
