Provides tools for accessing BlazeMeter's performance testing API, enabling retrieval of test data, workspace and project management, test run analysis, aggregate reports, error reports, and performance metrics monitoring.
BlazeMeter MCP Server
This project provides a Model Context Provider (MCP) server for integrating with BlazeMeter's API, enabling programmatic access to performance test data and management features. The server exposes a set of tools that can be used by MCP-compatible clients (such as Claude Desktop and Cursor) to interact with BlazeMeter resources.
Let's set things up!
🚦 Getting Started
⚙️ Prerequisites
Before starting, please ensure you have:
npm (included with Node)
Warning: if you run with a lower version of Node, fetch won't be present. Tools use fetch to make HTTP calls. To work around this, you can modify the tools to use node-fetch instead. Make sure that node-fetch is installed as a dependency and then import it as fetch into each tool file.
📥 Installation & Setup
1. Install dependencies
Run from your project's root directory:
On Linux/macOS (sh):
which nodeOn Windows (PowerShell):
Get-Command node | Select-Object -ExpandProperty Source
To check the node version, run:
To get the absolute path to mcpServer.js, run:
On Linux/macOS (sh):
realpath mcpServer.jsOn Windows (PowerShell):
Resolve-Path mcpServer.js | Select-Object -ExpandProperty Path
Related MCP server: MCP vLLM Benchmarking Tool
👩💻 Connect the MCP Server to Claude Desktop or Cursor
You can connect your MCP server to any MCP client. Below are instructions for connecting it to Claude Desktop and Cursor.
Claude Desktop
Step 1: Note the full path to node and the mcpServer.js from the previous step.
Step 2. Open Claude Desktop → Settings → Developers → Edit Config and add a new MCP server:
Restart Claude Desktop to activate this change. Make sure the new MCP is turned on and has a green circle next to it. If so, you're ready to begin a chat session that can use the tools you've connected.
Cursor
Step 1: Note the full path to node and the mcpServer.js from the previous step.
Step 2. In Cursor, open the Command Palette and search for "MCP: Add Server" or go to Settings → MCP Servers.
Step 3. Add a new MCP server with the following configuration:
Command:
<absolute/path/to/node>Arguments:
<absolute/path/to/mcpServer.js>
Step 4. Save and enable the server. Cursor will show the MCP server as available, and you can use the BlazeMeter tools directly from the Cursor interface.
Note: For both clients, ensure you use the absolute paths and Node.js v18+.
Warning: If you don't supply an absolute path to a node version that is v18+, the client may fall back to another node version on the system of a previous version. In this case, the fetch API won't be present and tool calls will not work. If that happens, you can a) install a newer version of node and point to it in the command, or b) import node-fetch into each tool as fetch, making sure to also add the node-fetch dependency to your package.json.
Additional Options
🐳 Docker Deployment (Production)
For production deployments, you can use Docker:
1. Build Docker image
2. Client Integration
Add Docker server configuration to your MCP client (Claude Desktop or Cursor):
Add your environment variables (API keys, etc.) inside the
.envfile.
The project comes bundled with the following minimal Docker setup:
🌐 Server-Sent Events (SSE)
To run the server with Server-Sent Events (SSE) support, use the --sse flag:
🛠️ Additional CLI commands
List tools
List descriptions and parameters from all generated tools with:
Example:
🔥 BlazeMeter API Tools
This project includes tools for interacting with the BlazeMeter API. You must set the following environment variables in your .env file:
Example .env
For tools where the parameter is optional, the value will be read from
.envif not provided.For tools where the parameter is required, you must provide it in the request.
Supported BlazeMeter Endpoints
Tool Name | Endpoint & Description | Required Parameter(s) |
get_workspaces |
List workspaces for an account | (optional) accountId |
get_projects |
List projects for a workspace | (optional) workspaceId |
get_test_runs |
List test runs (masters) for a test | testId |
get_test_run_summary |
Get summary for a test run | masterId |
get_test_run_aggregate_data |
Aggregate report data | masterId |
get_test_run_errors_data |
Errors report data | masterId |
get_test_run_thresholds |
Thresholds report | masterId |
get_test_run_timeline_kpis |
Timeline KPIs report | masterId |