trackmcp
Back to directory
QAInsights

jmeter-mcp-server

View on GitHub

โœจ JMeter Meets AI Workflows: Introducing the JMeter MCP Server! ๐Ÿคฏ

47 stars PythonAI & Machine Learning Updated Oct 21, 2025
apache-jmeterjmetermcpmodel-context-protocol-serversperformance

Documentation

๐Ÿš€ JMeter MCP Server

This is a Model Context Protocol (MCP) server that allows executing JMeter tests through MCP-compatible clients and analyzing test results.

> [!IMPORTANT]

> ๐Ÿ“ข Looking for an AI Assistant inside JMeter? ๐Ÿš€

> Check out Feather Wand

Anthropic
Cursor
Windsurf

๐Ÿ“‹ Features

JMeter Execution

  • ๐Ÿ“Š Execute JMeter tests in non-GUI mode
  • ๐Ÿ–ฅ๏ธ Launch JMeter in GUI mode
  • ๐Ÿ“ Capture and return execution output
  • ๐Ÿ“Š Generate JMeter report dashboard

Test Results Analysis

  • ๐Ÿ“ˆ Parse and analyze JMeter test results (JTL files)
  • ๐Ÿ“Š Calculate comprehensive performance metrics
  • ๐Ÿ” Identify performance bottlenecks automatically
  • ๐Ÿ’ก Generate actionable insights and recommendations
  • ๐Ÿ“Š Create visualizations of test results
  • ๐Ÿ“‘ Generate HTML reports with analysis results

๐Ÿ› ๏ธ Installation

Local Installation

1. Install `uv`:

2. Ensure JMeter is installed on your system and accessible via the command line.

โš ๏ธ Important: Make sure JMeter is executable. You can do this by running:

bash
chmod +x /path/to/jmeter/bin/jmeter

3. Install required Python dependencies:

bash
pip install numpy matplotlib

4. Configure the `.env` file, refer to the `.env.example` file for details.

bash
# JMeter Configuration
JMETER_HOME=/path/to/apache-jmeter-5.6.3
JMETER_BIN=${JMETER_HOME}/bin/jmeter

# Optional: JMeter Java options
JMETER_JAVA_OPTS="-Xms1g -Xmx2g"

๐Ÿ’ป MCP Usage

1. Connect to the server using an MCP-compatible client (e.g., Claude Desktop, Cursor, Windsurf)

2. Send a prompt to the server:

code
Run JMeter test /path/to/test.jmx

3. MCP compatible client will use the available tools:

JMeter Execution Tools

  • ๐Ÿ–ฅ๏ธ `execute_jmeter_test`: Launches JMeter in GUI mode, but doesn't execute test as per the JMeter design
  • ๐Ÿš€ `execute_jmeter_test_non_gui`: Execute a JMeter test in non-GUI mode (default mode for better performance)

Test Results Analysis Tools

  • ๐Ÿ“Š `analyze_jmeter_results`: Analyze JMeter test results and provide a summary of key metrics and insights
  • ๐Ÿ” `identify_performance_bottlenecks`: Identify performance bottlenecks in JMeter test results
  • ๐Ÿ’ก `get_performance_insights`: Get insights and recommendations for improving performance
  • ๐Ÿ“ˆ `generate_visualization`: Generate visualizations of JMeter test results

๐Ÿ—๏ธ MCP Configuration

Add the following configuration to your MCP client config:

json
{
    "mcpServers": {
      "jmeter": {
        "command": "/path/to/uv",
        "args": [
          "--directory",
          "/path/to/jmeter-mcp-server",
          "run",
          "jmeter_server.py"
        ]
      }
    }
}

โœจ Use Cases

Test Execution

  • Run JMeter tests in non-GUI mode for better performance
  • Launch JMeter in GUI mode for test development
  • Generate JMeter report dashboards

Test Results Analysis

  • Analyze JTL files to understand performance characteristics
  • Identify performance bottlenecks and their severity
  • Get actionable recommendations for performance improvements
  • Generate visualizations for better understanding of results
  • Create comprehensive HTML reports for sharing with stakeholders

๐Ÿ›‘ Error Handling

The server will:

  • Validate that the test file exists
  • Check that the file has a .jmx extension
  • Validate that JTL files exist and have valid formats
  • Capture and return any execution or analysis errors

๐Ÿ“Š Test Results Analyzer

The Test Results Analyzer is a powerful feature that helps you understand your JMeter test results better. It consists of several components:

Parser Module

  • Supports both XML and CSV JTL formats
  • Efficiently processes large files with streaming parsers
  • Validates file formats and handles errors gracefully

Metrics Calculator

  • Calculates overall performance metrics (average, median, percentiles)
  • Provides endpoint-specific metrics for detailed analysis
  • Generates time series metrics to track performance over time
  • Compares metrics with benchmarks for context

Bottleneck Analyzer

  • Identifies slow endpoints based on response times
  • Detects error-prone endpoints with high error rates
  • Finds response time anomalies and outliers
  • Analyzes the impact of concurrency on performance

Insights Generator

  • Provides specific recommendations for addressing bottlenecks
  • Analyzes error patterns and suggests solutions
  • Generates insights on scaling behavior and capacity limits
  • Prioritizes recommendations based on potential impact

Visualization Engine

  • Creates time series graphs showing performance over time
  • Generates distribution graphs for response time analysis
  • Produces endpoint comparison charts for identifying issues
  • Creates comprehensive HTML reports with all analysis results

๐Ÿ“ Example Usage

code
# Run a JMeter test and generate a results file
Run JMeter test sample_test.jmx in non-GUI mode and save results to results.jtl

# Analyze the results
Analyze the JMeter test results in results.jtl and provide detailed insights

# Identify bottlenecks
What are the performance bottlenecks in the results.jtl file?

# Get recommendations
What recommendations do you have for improving performance based on results.jtl?

# Generate visualizations
Create a time series graph of response times from results.jtl

Frequently asked questions

What is jmeter-mcp-server?

jmeter-mcp-server is โœจ JMeter Meets AI Workflows: Introducing the JMeter MCP Server! ๐Ÿคฏ

How do I install jmeter-mcp-server?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is jmeter-mcp-server open source?

Yes โ€” it is hosted on GitHub at https://github.com/QAInsights/jmeter-mcp-server and has 47 stars.

Related MCP tools

zhayujiechatgpt-on-wechat

ๅŸบไบŽๅคงๆจกๅž‹ๆญๅปบ็š„่Šๅคฉๆœบๅ™จไบบ๏ผŒๅŒๆ—ถๆ”ฏๆŒ ๅพฎไฟกๅ…ฌไผ—ๅทใ€ไผไธšๅพฎไฟกๅบ”็”จใ€้ฃžไนฆใ€้’‰้’‰ ็ญ‰ๆŽฅๅ…ฅ๏ผŒๅฏ้€‰ๆ‹ฉChatGPT/Claude/DeepSeek/ๆ–‡ๅฟƒไธ€่จ€/่ฎฏ้ฃžๆ˜Ÿ็ซ/้€šไน‰ๅƒ้—ฎ/ Gemini/GLM-4/Kimi/LinkAI๏ผŒ่ƒฝๅค„็†ๆ–‡ๆœฌใ€่ฏญ้Ÿณๅ’Œๅ›พ็‰‡๏ผŒ่ฎฟ้—ฎๆ“ไฝœ็ณป็ปŸๅ’Œไบ’่”็ฝ‘๏ผŒๆ”ฏๆŒๅŸบไบŽ่‡ชๆœ‰็Ÿฅ่ฏ†ๅบ“่ฟ›่กŒๅฎšๅˆถไผไธšๆ™บ่ƒฝๅฎขๆœใ€‚

39,573 Python
aiai-agentchatgpt+17
assafelovicgpt-researcher

An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to

24,026 Python
agentaiautomation+8
jlowinfastmcp

๐Ÿš€ The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.

19,927 Python
agentsfastmcpllms+6
tadata-orgfastapi_mcp

Expose your FastAPI endpoints as Model Context Protocol (MCP) tools, with Auth! Python-based implementation. Trusted by 11000+ developers.

11,002 Python
aiauthenticationauthorization+10
Upsonicupsonic

Agent Framework For Fintech for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.

7,670 Python
agentagent-frameworkclaude+7
lastmile-aimcp-agent

Build effective agents using Model Context Protocol and simple workflow patterns Python-based implementation. Trusted by 7600+ developers.

7,669 Python
agentsaiai-agents+5

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP