JMeter Docs
by QAInsights · remote · no sign-in to list tools · v1.4.0 · published by GitHub user QAInsights
Apache JMeter community documentation, conversion tools, linters, and calculators for AI agents.
16 tools: 8 change things and 8 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things8Claude Code: ask: see these tools
- Only reads8Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http jmeter-docs https://docs.jmeter.ai/api/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
16 tools
Changes things 8Claude Code: ask
calculate_workload_modelCompute 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.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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_jmxConvert 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,…No findings
Why it is in this group
- The name "convert_curl_or_har_to_jmx" says "convert": a word for a change.
Description, as the server wrote it 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_jmxConvert 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 …No findings
Why it is in this group
- The name "convert_openapi_to_jmx" says "convert": a word for a change.
Description, as the server wrote it 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_sandboxGenerate 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…No findings
Why it is in this group
- The name "get_correlation_sandbox" says "get": a word for reading.
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it 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.
lint_groovy_scriptStatically analyze a Groovy script for a JMeter JSR223 element.No findings
Why it is in this group
- The input takes a statement or command to run (input.code), which can change anything it can reach.
Description, as the server wrote it 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.
plan_distributed_testingGenerate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load testing.No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load testing.
triage_errorsMap a run's distinct failure signatures to docs.jmeter.ai error playbooks.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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_osGenerate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, BindException port exh…No findings
Why it is in this group
- The description's first verb is "generate": a word for a change.
Description, as the server wrote it 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).
Only reads 8Claude Code: allow
get_jmeter_pageFetch the full markdown text of one docs.jmeter.ai page.No findings
Why it is in this group
- The name "get_jmeter_page" says "get": a word for reading.
Description, as the server wrote it 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_recipeFetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 signing, dynamic header…No findings
Why it is in this group
- The name "get_jsr223_recipe" says "get": a word for reading.
Description, as the server wrote it 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_jmx_snippetValidate 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/asser…No findings
Why it is in this group
- The description's first verb is "validate": a word for reading.
Description, as the server wrote it 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_componentFind the dedicated reference page for a JMeter test plan component (e.g.No findings
Why it is in this group
- The name "lookup_component" says "lookup": a word for reading.
Description, as the server wrote it 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_playbookGet immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g.No findings
Why it is in this group
- The name "lookup_error_playbook" says "lookup": a word for reading.
Description, as the server wrote it 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_functionFind the dedicated reference page for a built-in JMeter function (e.g.No findings
Why it is in this group
- The name "lookup_function" says "lookup": a word for reading.
Description, as the server wrote it 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_propertySearch or lookup curated JMeter properties (e.g.No findings
Why it is in this group
- The name "lookup_jmeter_property" says "lookup": a word for reading.
Description, as the server wrote it Search or lookup curated JMeter properties (e.g. "httpclient4.idletimeout", "jmeter.save.saveservice.*", "remote_hosts", "summariser"). Returns category, defaults, and recommendations.
search_jmeter_docsSearch the Apache JMeter documentation on docs.jmeter.ai.No findings
Why it is in this group
- The name "search_jmeter_docs" says "search": a word for reading.
Description, as the server wrote it 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.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.4.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http jmeter-docs https://docs.jmeter.ai/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__jmeter-docs__search_jmeter_docs",
"mcp__jmeter-docs__get_jmeter_page",
"mcp__jmeter-docs__lint_jmx_snippet",
"mcp__jmeter-docs__lookup_jmeter_property",
"mcp__jmeter-docs__get_jsr223_recipe",
"mcp__jmeter-docs__lookup_error_playbook",
"mcp__jmeter-docs__lookup_component",
"mcp__jmeter-docs__lookup_function"
],
"ask": [
"mcp__jmeter-docs__calculate_workload_model",
"mcp__jmeter-docs__lint_groovy_script",
"mcp__jmeter-docs__triage_errors",
"mcp__jmeter-docs__plan_distributed_testing",
"mcp__jmeter-docs__tune_linux_os",
"mcp__jmeter-docs__convert_curl_or_har_to_jmx",
"mcp__jmeter-docs__convert_openapi_to_jmx",
"mcp__jmeter-docs__get_correlation_sandbox"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as jmeter-docs. Review it before you use it.
