AM

andreyvmarkelov/mcploadtester

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

6 stars 2 forks Качество 42 Тренд 14

Apache JMeter sampler plugin for load testing Model Context Protocol (MCP) servers over stdio, HTTP, and HTTP+SSE.

Обзор

MCPLoadTester is a load testing toolkit for Model Context Protocol (MCP) servers. It allows performance testing of MCP tools and agents using: - Apache JMeter - k6 (planned) - CLI tools (planned) - plugin jar goes to JMETER_HOME/lib/ext - runtime dependencies go to JMETER_HOME/lib Use this only if dependencies are already managed elsewhere. Each tagged release now publishes a Plugins Manager descriptor asset: https://github.com/AndreyVMarkelov/MCPLoadTester/releases/latest/download/plugins-repo.json To add this custom repo in JMeter, set in user.properties:

README

Показан фрагмент оригинального README. Открыть оригинал.

MCPLoadTester

MCPLoadTester is a load testing toolkit for Model Context Protocol (MCP) servers.

It allows performance testing of MCP tools and agents using:

  • Apache JMeter
  • k6 (planned)
  • CLI tools (planned)

Compatibility

Component Version
Java 11+
Apache JMeter 5.6.3 (current project baseline)
Gradle Wrapper 8.10.2

Installation

This project now builds a thin plugin jar:

  • plugin jar goes to JMETER_HOME/lib/ext
  • runtime dependencies go to JMETER_HOME/lib
JMETER_HOME=/path/to/apache-jmeter-5.6.3 ./gradlew installLocalWithDeps

Plugin-only local install

Use this only if dependencies are already managed elsewhere.

JMETER_HOME=/path/to/apache-jmeter-5.6.3 ./gradlew installLocal

Build artifact

./gradlew jar

Jar path:

build/libs/jmeter-mcp-sampler-.jar

Plugins Manager Custom Repo (Latest Release)

Each tagged release now publishes a Plugins Manager descriptor asset:

https://github.com/AndreyVMarkelov/MCPLoadTester/releases/latest/download/plugins-repo.json

To add this custom repo in JMeter, set in user.properties:

jpgc.repo.address=https://jmeter-plugins.org/repo/;https://github.com/AndreyVMarkelov/MCPLoadTester/releases/latest/download/plugins-repo.json

Then restart JMeter and open Plugins Manager. The catalog/display name is MCPLoadTester JMeter MCP Sampler.

Quick Start (2 Minutes)

Path note: commands and scripts/... arguments below are relative to this repository root.
Run JMeter from the repo root, or use absolute paths.

  1. Install plugin (see Installation > Recommended local install above).
  2. Restart JMeter.
  3. Add sampler: Thread Group -> Add -> Sampler -> MCP Sampler.

  1. Use local echo mock (stdio) with these sampler settings:
    • Transport: stdio
    • Command: python3
    • Arguments: scripts/mock_mcp_server.py
    • MCP Method: tools/list
    • Client name: jmeter-mcp-sampler (default)
    • Client version: 1.0.0 (default)

  1. Add a Response Assertion:
    • Field to Test: Response Data
    • Pattern: echo

  1. Run test and verify the assertion passes.

HTTP + SSE Quick Start

  1. Start local mock HTTP+SSE server:
node scripts/mock_http_sse_mcp_server.js
  1. In sampler set:
  • Transport: http+sse
  • HTTP base URL: http://127.0.0.1:8080
  • SSE endpoint path: /events
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →