Model Context ProtocolClaude Code · Cursor · any MCP client

Let your coding agent order real-device testing.

Your coding agent already runs headless self-tests. 99tests adds what it can't: real phones and laptops, real Indian networks, and human testers judging whether the app works. Your agent creates the job, you pay through the checkout link, and verified findings come back in the build chat as fix prompts.

Connect

Add it in one line.

Claude Code

claude mcp add --transport http 99tests https://99tests.com/api/mcp

Cursor or VS Code (mcp.json)

{
  "mcpServers": {
    "99tests": {
      "url": "https://99tests.com/api/mcp"
    }
  }
}

Any other MCP client

Add a remote MCP server with the URL https://99tests.com/api/mcp

The lookups (packages, sample report) are public and need no key. "Create a test job" returns a browser checkout link — payment always happens in your browser, never through the assistant.

Tools

What the assistant can do.

ToolWhat it does
list_packagesPackages, prices (INR + GST and USD), sessions and turnaround.
create_test_jobCreates a job and returns a hosted checkout link to pay in a browser.
get_job_statusProgress for a job token. Poll at most every 10 minutes.
get_reportVerified findings for a delivered job, returned as ready-to-paste fix prompts.
get_sample_reportAn example report, so you can see the format before you pay.
Packages

Fixed price per job.

PackageSessionsDevices / browsersIndia (incl GST)Rest of worldReport
Starter5 × 45 min2₹9,999 + GST$1293 business days
Standard10 × 45 min4₹18,999 + GST$2493 business days
Deep20 × 90 min6₹34,999 + GST$4495 business days

Not included: test automation, security/penetration testing, performance/load testing, certification. Full details on /pricing.

What comes back

Verified findings, as fix prompts.

Each accepted finding comes back with the device, exact steps, expected vs actual, and a ready-to-paste fix prompt. See the full format in the sample report.

Example fix prompt from get_report:

On Redmi 12 · MIUI 14 · Jio 4G, "Cart empties after returning from UPI app". Steps to reproduce: Add 2 items → Checkout → Pay with UPI → switch to PhonePe → approve → return to app. Expected: Order confirmed with both items. Actual: App restarts on return; cart is empty and no order is created. Money debited. Please fix the root cause and add a regression test that covers this case (TC-03).
Questions

About the MCP server.

Is this automated testing?

No. Real people run your flows on real devices. Your agent's own self-tests stay as they are.

Do I need an account?

No. Each job is paid through Stripe Checkout, and a job token lets your agent fetch status and the report.

Who pays?

You do. The agent only hands you the checkout link; it can never charge you.

What happens to test logins I share?

They are included in the job only for the assigned testers to use during the session, shared by link, and not retained by 99tests beyond the job.

What isn't covered?

Security or penetration testing, load testing, and certification.

Prefer the website?

Everything the MCP server exposes is on the site too.

See packages