Search / io.github.QAInsights/jmeter-docs
JMeter Docs
R0· no sign-inApache JMeter community documentation, conversion tools, linters, and calculators for AI agents.
v1.4.0 · active · repository · website · descriptor JSON · versions
Search / io.github.QAInsights/jmeter-docs
R0· no sign-inApache JMeter community documentation, conversion tools, linters, and calculators for AI agents.
v1.4.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"jmeter-docs": {
"type": "http",
"url": "https://docs.jmeter.ai/api/mcp"
}
}
}claude mcp add --transport http jmeter-docs https://docs.jmeter.ai/api/mcp[mcp_servers.jmeter-docs]
url = "https://docs.jmeter.ai/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"jmeter-docs": {
"type": "remote",
"url": "https://docs.jmeter.ai/api/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"jmeter-docs": {
"type": "http",
"url": "https://docs.jmeter.ai/api/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=jmeter-docs&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZG9jcy5qbWV0ZXIuYWkvYXBpL21jcCJ9"
}{
"servers": {
"jmeter-docs": {
"type": "http",
"url": "https://docs.jmeter.ai/api/mcp"
}
}
}{
"mcpServers": {
"jmeter-docs": {
"httpUrl": "https://docs.jmeter.ai/api/mcp"
}
}
}extensions:
"jmeter-docs":
enabled: true
name: "jmeter-docs"
type: streamable_http
uri: "https://docs.jmeter.ai/api/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: lookup_component (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); search_jmeter_docs (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_jmeter_page (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 3,911 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes8 tool changes in 30 daysstability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageget_correlation_sandboxaddedGenerate a ready-to-run Apache JMeter 5.6.3 .jmx practice test plan (either "solved" with Boundary/JSON/Header extractors or "challenge" with broken hardcoded tokens) targeting the live docs.jmeter.ai/api/sandbox endpoints or local localhost:8787 server.
convert_openapi_to_jmxaddedConvert an OpenAPI 3.0/3.1 or Swagger 2.0 document (JSON or YAML) into a JMeter 5.6.3 .jmx test plan: servers become HTTP Request Defaults/${BASE_URL}, path parameters become User Defined Variables, request bodies are sampled from schemas, bearer/basic/apiKey security becomes ${AUTH_TOKEN}/${BASIC_AUTH}/${API_KEY}, with optional method, tag, and deprecated-operation filters.
triage_errorsaddedMap a run's distinct failure signatures to docs.jmeter.ai error playbooks. Error text is sent to classifier.dev for zero-shot classification (public keyless calls are not stored; obvious secrets are redacted first). Prefer signatures shaped as "sampler | response code | response message".
lookup_error_playbookchangeddescription, input schemaGet immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. "BindException", "SocketTimeoutException", "OutOfMemoryError", "NoHttpResponseException", "SSLHandshakeException", "401/403 after recording").
Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. "BindException", "SocketTimeoutException", "OutOfMemoryError", "NoHttpResponseException", "SSLHandshakeException", "401/403 after recording"). When keywords miss, unmatched text is sent to classifier.dev for zero-shot semantic matching (public keyless calls are not stored).
lint_groovy_scriptaddedStatically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern.compile, and bindings such as prev, SampleResult, or sampler that the selected element type does not expose; optionally returns ready-to-paste JMX element XML.
lint_jmx_snippetchangeddescription, input schemameaning changedValidate a JMeter test plan XML string or snippet against best practices and performance anti-patterns (e.g., active GUI listeners, legacy BeanShell, uncompiled JSR223, missing timeouts, zero ramp-up, Thread.sleep in scripts).
Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sampler/listener/assertion counts, HTTP Defaults/Header/Cookie/CSV presence, plugin classes, and JMeter version.
lookup_functionaddedFind the dedicated reference page for a built-in JMeter function (e.g. "__time", "__Random", "__P") and return its full markdown content with syntax, parameters, and examples.
lookup_componentaddedFind the dedicated reference page for a JMeter test plan component (e.g. "HTTP Request", "JSON Extractor", "Thread Group") and return its full markdown content with properties, defaults, and related guides.
Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +website +reachable +uptime-96% ~updated-42d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://docs.jmeter.ai/api/mcp streamable-http | none | yes | 96% | 605 ms | 2025-11-25 | 2026-10-20 |
calculate_workload_model | Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little's Law. |
convert_curl_or_har_to_jmx | Convert one or more cURL commands or HAR (HTTP Archive 1.2) JSON traces into a valid, production-ready Apache JMeter .jmx test plan XML with HTTP Request Defaults, Header Managers, Cookie Managers, timeouts, and assertions. Supports GET, POST, PUT, DELETE, PATCH, and RFC 9838 QUERY methods. |
convert_openapi_to_jmx | Convert an OpenAPI 3.0/3.1 or Swagger 2.0 document (JSON or YAML) into a JMeter 5.6.3 .jmx test plan: servers become HTTP Request Defaults/${BASE_URL}, path parameters become User Defined Variables, request bodies are sampled from schemas, bearer/basic/apiKey security becomes ${AUTH_TOKEN}/${BASIC_AUTH}/${API_KEY}, with optional method, tag, and deprecated-operation filters. |
get_correlation_sandbox | Generate a ready-to-run Apache JMeter 5.6.3 .jmx practice test plan (either "solved" with Boundary/JSON/Header extractors or "challenge" with broken hardcoded tokens) targeting the live docs.jmeter.ai/api/sandbox endpoints or local localhost:8787 server. |
get_jmeter_page | Fetch the full markdown text of one docs.jmeter.ai page. Accepts the page URL (e.g. https://docs.jmeter.ai/topics/api-load-testing/) or a bare path (e.g. topics/api-load-testing). |
get_jsr223_recipe | Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 signing, dynamic header injection, nested JSON array extraction, custom CSV failure logging). |
lint_groovy_script | Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern.compile, and bindings such as prev, SampleResult, or sampler that the selected element type does not expose; optionally returns ready-to-paste JMX element XML. |
lint_jmx_snippet | Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sampler/listener/assertion counts, HTTP Defaults/Header/Cookie/CSV presence, plugin classes, and JMeter version. |
lookup_component | Find the dedicated reference page for a JMeter test plan component (e.g. "HTTP Request", "JSON Extractor", "Thread Group") and return its full markdown content with properties, defaults, and related guides. |
lookup_error_playbook | Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. "BindException", "SocketTimeoutException", "OutOfMemoryError", "NoHttpResponseException", "SSLHandshakeException", "401/403 after recording"). When keywords miss, unmatched text is sent to classifier.dev for zero-shot semantic matching (public keyless calls are not stored). |
lookup_function | Find the dedicated reference page for a built-in JMeter function (e.g. "__time", "__Random", "__P") and return its full markdown content with syntax, parameters, and examples. |
lookup_jmeter_property | Search or lookup curated JMeter properties (e.g. "httpclient4.idletimeout", "jmeter.save.saveservice.*", "remote_hosts", "summariser"). Returns category, defaults, and recommendations. |
plan_distributed_testing | Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load testing. |
search_jmeter_docs | Search the Apache JMeter documentation on docs.jmeter.ai. Returns the most relevant pages with titles, URLs, and snippets. Use for any question about JMeter test plans, components, functions, properties, distributed testing, reports, or troubleshooting. |
triage_errors | Map a run's distinct failure signatures to docs.jmeter.ai error playbooks. Error text is sent to classifier.dev for zero-shot classification (public keyless calls are not stored; obvious secrets are redacted first). Prefer signatures shaped as "sampler | response code | response message". |
tune_linux_os | Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, BindException port exhaustion, somaxconn backlog, and JVM swappiness). |
Schemas: list_tools.
{
"name": "io.github.QAInsights/jmeter-docs",
"icons": [
{
"src": "https://docs.jmeter.ai/favicon.svg",
"sizes": [
"any"
],
"mimeType": "image/svg+xml"
}
],
"title": "JMeter Docs",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://docs.jmeter.ai/api/mcp",
"type": "streamable-http"
}
],
"version": "1.4.0",
"repository": {
"url": "https://github.com/QAInsights/docs.jmeter.ai",
"source": "github"
},
"websiteUrl": "https://docs.jmeter.ai/",
"description": "Apache JMeter community documentation, conversion tools, linters, and calculators for AI agents."
}