jmeter
✨ JMeter Meets AI Workflows: Introducing the JMeter MCP Server! 🤯
claude mcp add --transport stdio qainsights-jmeter-mcp-server uvx jmeter-mcp-server \
--env JMETER_BIN="${JMETER_HOME}/bin/jmeter" \
--env JMETER_HOME="Path to Apache JMeter installation" \
--env JMETER_JAVA_OPTS="-Xms1g -Xmx2g"How to use
This MCP server exposes tooling to run and analyze Apache JMeter tests via MCP-compatible clients. You can launch JMeter in GUI mode for test development or in non-GUI mode for automated execution, capture outputs, and generate dashboards and reports from JMX/JTL results. The server also analyzes JTL result files to compute performance metrics, identify bottlenecks, and provide actionable recommendations, along with visualizations and HTML reports for sharing findings. Available tools include: execute_jmeter_test for GUI executions, execute_jmeter_test_non_gui for headless runs designed for performance, analyze_jmeter_results to summarize metrics from JTL files, identify_performance_bottlenecks to highlight slow endpoints, get_performance_insights to receive optimization recommendations, and generate_visualization to create time series and distribution graphs of results.
How to install
Prerequisites:
- Python 3.8+ and a working Python environment
- Java and Apache JMeter installed and accessible via the command line
- uv (Python MCP server runner) installed
- numpy and matplotlib Python packages for analysis/visualization
Installation steps:
- Install uv if you haven't already:
pip install uv
- Ensure JMeter is installed and executable:
- Download and extract Apache JMeter
- Make the JMeter binary executable if required:
chmod +x /path/to/jmeter/bin/jmeter
- Install Python dependencies for analysis:
pip install numpy matplotlib
- Configure environment variables for JMeter path (example):
# JMeter configuration
export JMETER_HOME=/path/to/apache-jmeter
export JMETER_BIN=${JMETER_HOME}/bin/jmeter
# Optional Java options for JMeter
export JMETER_JAVA_OPTS="-Xms1g -Xmx2g"
- Install or run the MCP server via uvx as described in the mcp_config section and ensure the server can locate JMeter via JMETER_BIN.
Additional notes
Tips and notes:
- Make sure JMETER_HOME and JMETER_BIN are correct and JMETER_BIN is executable.
- The non-GUI JMeter runs (execute_jmeter_test_non_gui) are recommended for production tests to improve performance.
- When analyzing results, provide a valid results JTL file path and ensure it is generated by the corresponding test run.
- If you encounter permission issues on Linux, ensure the user has execute permissions for the JMeter binary and the MCP server script.
- The MCP tools can generate HTML reports and visualizations; share the generated reports with stakeholders for easier interpretation.
Related MCP Servers
Lambda
Creates a simple MCP tool server with "streaming" HTTP.
quick -example
Short and sweet example MCP server / client implementation for Tools, Resources and Prompts.
asterisk
Asterisk Model Context Protocol (MCP) server.
mcp-community
Easily run, deploy, and connect to MCP servers
Zammad
A Model Context Protocol (MCP) server for Zammad integration, enabling AI assistants to interact with tickets, users, and organizations.
mcp -python-template
This template provides a streamlined foundation for building Model Context Protocol (MCP) servers in Python. It's designed to make AI-assisted development of MCP tools easier and more efficient.