{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_berdwwezp3qp","handle":"jmeter-docs","url":"https://wellknown.network/agents/jmeter-docs","links":{"self":"https://wellknown.network/agents/jmeter-docs/record.json","html":"https://wellknown.network/agents/jmeter-docs","markdown":"https://wellknown.network/agents/jmeter-docs/record.md","api":"https://wellknown.network/api/v1/agents/jmeter-docs","status":"https://wellknown.network/api/v1/agents/jmeter-docs/status","claim":"https://wellknown.network/agents/jmeter-docs/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/jmeter-docs/claim.json","badge":"https://wellknown.network/agents/jmeter-docs/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/jmeter-docs/history","tools":"https://wellknown.network/api/v1/agents/jmeter-docs/tools"},"ard":{"identifier":"urn:air:docs.jmeter.ai:server:jmeter-docs","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"JMeter Docs","summary":"Apache JMeter community documentation, conversion tools, linters, and calculators for AI agents.","description":"Apache JMeter community documentation, conversion tools, linters, and calculators for AI agents.","publisher":{"name":"QAInsights","url":null},"homepage":"https://docs.jmeter.ai/","repository":"https://github.com/QAInsights/docs.jmeter.ai","version":"1.4.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://docs.jmeter.ai/api/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-08T14:54:13.675457Z","publishedAt":"2026-09-08T14:54:13.675457Z","registryName":"io.github.QAInsights/jmeter-docs"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"code.documentation","name":"Code Documentation","confidence":1,"provenance":"derived"},{"slug":"data.apis","name":"API Access","confidence":1,"provenance":"derived"},{"slug":"dev.docs-lookup","name":"Documentation Lookup","confidence":1,"provenance":"derived"},{"slug":"infra.cloud","name":"Cloud Platforms","confidence":0.948,"provenance":"derived"},{"slug":"documents.conversion","name":"Document Conversion","confidence":0.946,"provenance":"derived"},{"slug":"commerce.ecommerce","name":"E-commerce Operations","confidence":0.54,"provenance":"derived"},{"slug":"code.testing","name":"Testing","confidence":0.51,"provenance":"derived"}],"categories":["code","commerce","data","dev","documents","infra"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 2h ago.","lastOkAt":"2026-10-09T23:30:36.313Z","lastProbedAt":"2026-10-09T23:30:36.313Z","statusComputedAt":"2026-10-09T23:31:22.560Z","reliability30d":{"probes":108,"successRate":1,"p50Ms":479,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":108,"ok":108,"authBoundaryOk":0,"serviceOk":108,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T23:30:36.313Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":647,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T17:28:52.859Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":469,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T11:27:01.954Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":775,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T04:27:45.657Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":451,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T21:23:05.549Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":631,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T15:24:47.997Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":516,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T09:23:01.274Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":518,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T02:22:07.000Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":441,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T19:23:38.742Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":657,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T12:30:25.814Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":527,"error":null,"detail":{"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"toolCount":15,"toolsHash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","serverName":"jmeter-docs","capabilities":["tools"],"serverVersion":"1.6.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search_jmeter_docs","description":"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 tes"},{"name":"get_jmeter_page","description":"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"},{"name":"lint_jmx_snippet","description":"Validate a JMeter test plan XML string or snippet against best practices and performance anti-patterns, and return a structural inventory with thread groups, sa"},{"name":"calculate_workload_model","description":"Compute required thread concurrency, pacing delays, ramp-up schedules, and JVM heap recommendations based on target RPS/TPS and SLA response times using Little'"},{"name":"lookup_jmeter_property","description":"Search or lookup curated JMeter properties (e.g. \"httpclient4.idletimeout\", \"jmeter.save.saveservice.*\", \"remote_hosts\", \"summariser\"). Returns category, defaul"},{"name":"get_jsr223_recipe","description":"Fetch production-ready, performant Groovy scripts for JMeter JSR223 samplers, preprocessors, and postprocessors (e.g., JWT parsing & expiration, HMAC-SHA256 sig"},{"name":"lint_groovy_script","description":"Statically analyze a Groovy script for a JMeter JSR223 element. Flags Thread.sleep, ${var} interpolation, System.out, BeanShell APIs, per-call Random or Pattern"},{"name":"lookup_error_playbook","description":"Get immediate root causes, OS/JVM config fixes, and remediation steps for common JMeter exceptions (e.g. \"BindException\", \"SocketTimeoutException\", \"OutOfMemory"},{"name":"triage_errors","description":"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 cal"},{"name":"lookup_component","description":"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 "},{"name":"lookup_function","description":"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"},{"name":"plan_distributed_testing","description":"Generate Master-Worker RMI port assignments, user.properties, CLI commands, firewall/security group rules, and Docker Compose manifests for distributed load tes"},{"name":"tune_linux_os","description":"Generate production sysctl.conf, limits.conf, systemd overrides, and Docker/K8s configs tuned for high-concurrency JMeter load testing (fixing ulimit nofile, Bi"},{"name":"convert_curl_or_har_to_jmx","description":"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 Defaul"},{"name":"convert_openapi_to_jmx","description":"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 par"}],"package":null,"toolSurface":{"id":"ts_5j7xdtd6rca6","endpointId":"ep_vq8xwvcxj6xy","hash":"ffe06d4d112b205205645e4201700a6f4946acae7d9e1f61b1081794998dff74","toolCount":15,"serverName":"jmeter-docs","serverVersion":"1.6.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-28T07:27:21.063Z","lastSeenAt":"2026-10-09T23:30:36.305Z","observations":43,"toolNames":["search_jmeter_docs","get_jmeter_page","lint_jmx_snippet","calculate_workload_model","lookup_jmeter_property","get_jsr223_recipe","lint_groovy_script","lookup_error_playbook","triage_errors","lookup_component","lookup_function","plan_distributed_testing","tune_linux_os","convert_curl_or_har_to_jmx","convert_openapi_to_jmx"],"distinctSurfaces":4},"endpointFacts":[{"id":"ep_vq8xwvcxj6xy","url":"https://docs.jmeter.ai/api/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-09T04:27:45.657Z","auth":{"observedAt":"2026-10-09T04:27:45.703Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-09T04:27:45.763Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"jmeter.ai","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-08-15T00:58:25.000Z","validTo":"2026-11-13T01:58:21.000Z","daysToExpiry":34,"sanCount":3,"fingerprint256":"56:7A:0D:C1:23:C2:4F:F9:90:01:E8:93:57:EF:8C:1F:7D:71:63:8F:8E:A9:C3:1B:F5:AD:42:CF:D7:C8:5A:51"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.QAInsights/jmeter-docs","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.QAInsights%2Fjmeter-docs","firstSeenAt":"2026-09-10T04:20:33.896Z","fetchedAt":"2026-10-10T00:19:40.111Z","normalizedAt":"2026-10-10T00:19:40.111Z"}]},"firstSeenAt":"2026-09-10T04:20:33.896Z","updatedAt":"2026-10-09T23:32:27.554Z"}