MCP Test Runner MCP Server

A **Model Context Protocol** server that lets Claude Desktop / Cursor / any MCP client drive your test suite end-to-end: run tests, inspect failures

Local serverstdioPython

What is the MCP Test Runner MCP server?

A Model Context Protocol server that lets Claude Desktop / Cursor / any MCP client drive your test suite end-to-end: run tests, inspect failures (screenshot + video + trace), analyze a live URL to draft test cases, and — after each run. The mcp test runner mcp server wraps that behind the Model Context Protocol, so an assistant can use it through 6 defined tools rather than through you.

Adding it to your client

newman on npm is all you need. Most clients run it directly, so configuration is a few lines and a restart.

Its toolset

Everything the assistant can do here goes through one of these:

  • API1BOLA / IDOR — alice's token reads bob's object via path-id tampering
  • API2Broken Authentication — server accepts alg:none, malformed, or wrong-signature JWTs
  • API3Mass Assignment — server persists dangerous extra fields like role: admin, is_verified: true
  • API5Function-Level Authz — non-admin user accesses admin-shaped endpoints
  • API8Security Misconfiguration — missing HSTS/CSP/X-Frame headers, wildcard CORS with credentials
  • Privacy — No screenshot retention beyond the active inspect→solve cycle. Telemetry logs the boolean outcome only — never the screenshot, never the challenge

Configuration

You will need 8 environment variables: QA_RUNNER, QA_PROJECT_ROOT, QA_OPENAPI_URL, QA_POSTMAN_COLLECTION, QA_VISUAL_CHALLENGE_CONSENT, QA_VISUAL_CHALLENGE_AUTHORIZED_DOMAINS, QA_API_SECURITY_CONSENT, QA_API_SECURITY_AUTHORIZED_DOMAINS. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the mcp test runner mcp server does with a few real requests.

When to reach for it

This sits in the browser automation group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. MCP Test Runner's toolset — API1, API2, API3 and 3 more — is a fair guide to whether it matches your workflow. It is maintained by kao273183; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Available tools

ToolWhat it does
API1**BOLA / IDOR** — alice's token reads bob's object via path-id tampering
API2**Broken Authentication** — server accepts alg:none, malformed, or wrong-signature JWTs
API3**Mass Assignment** — server persists dangerous extra fields like role: admin, is_verified: true
API5**Function-Level Authz** — non-admin user accesses admin-shaped endpoints
API8**Security Misconfiguration** — missing HSTS/CSP/X-Frame headers, wildcard CORS with credentials
PrivacyNo screenshot retention beyond the active inspect→solve cycle. Telemetry logs the boolean outcome only — never the screenshot, never the challenge text, never the tile selection. The 5-minute LRU cache holds at most 10 o

How to install the MCP Test Runner MCP server

{
  "mcpServers": {
    "mk-qa-master": {
      "command": "uvx",
      "args": ["mk-qa-master"],
      "env": { "QA_RUNNER": "pytest", "QA_PROJECT_ROOT": "/path/to/your-test-project" }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
QA_RUNNERConfiguration value read at startup.Optional
QA_PROJECT_ROOTConfiguration value read at startup.Optional
QA_OPENAPI_URLEndpoint or connection string the server talks to.Yes
QA_POSTMAN_COLLECTIONConfiguration value read at startup.Optional
QA_VISUAL_CHALLENGE_CONSENTConfiguration value read at startup.Optional
QA_VISUAL_CHALLENGE_AUTHORIZED_DOMAINSConfiguration value read at startup.Optional
QA_API_SECURITY_CONSENTConfiguration value read at startup.Optional
QA_API_SECURITY_AUTHORIZED_DOMAINSConfiguration value read at startup.Optional

Example prompts to try

  • Use MCP Test Runner to API1.
  • Use MCP Test Runner to API2.
  • Use MCP Test Runner to API3.

Frequently asked questions

It connects MCP Test Runner to MCP-compatible AI assistants such as Claude and Cursor, exposing 6 tools (API1, API2, API3, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with MCP Test Runner directly.