One memory layer. Every agent on the frontier.
npx -y @testrelic/mcpEvery test run becomes shared context for Cursor, Claude Code, Copilot, and Codex — over MCP. So your whole team ships at senior-IC speed, not just the engineer who's been here longest.
{
"mcpServers": {
"testrelic": {
"command": "npx",
"args": ["-y", "@testrelic/mcp"],
"env": { "TESTRELIC_TOKEN": "••••••••" }
}
}
}
Works with any MCP client
Eight capability groups
What an agent can do once it's connected
Enable the slices your workflow needs — the agent only ever sees that part of the schema.
Core & connectivity
Health, repo description and recent runs — the always-on group every agent calls first to find out what it's looking at.
● tr_health · ok · 42ms
● tr_describe_repo · shop-e2e · 214 specs
● tr_recent_runs · run #4821 · 3 failures
always on · core
the first three calls any agent makes
no cap required · core
every other group · opt in
Run triage & RCA
Diagnose a failing run, audit a spec's flake profile, pull platform root-cause analysis, and replay the failure from its trace.
● tr_diagnose_run · 3 failures
● tr_flaky_audit · 4/30 fails
● tr_ai_rca · post-deploy, not timing
● tr_replay_failure · trace 6.1 MB
then · tr_heal_run · tr_create_jira
trace · replayable
Production signals
Blast radius on real users, from Amplitude and Grafana Loki — proxied through the cloud backend, never called directly from your machine.
● tr_user_impact · 8.1% of sessions
Amplitude · Grafana Loki — proxied, not direct
funnel drop · checkout → receipt
affected users · 1,204 / 14,800
credentials · server-side only
never called from · your machine
Dev intelligence
Analyze a diff, score its risk, find coverage gaps, and suggest a stable locator — the inputs a PR gate actually needs.
● tr_analyze_diff · 12 files · 3 modules
● tr_risk_score · 0.78 · high
● tr_coverage_gaps · 2 uncovered journeys
● tr_suggest_locator · [data-test=pay-submit]
feeds · pr_impact_gate
Install in under a minute
One server. Every MCP client.
Hosted, over npx, or as a Cursor plugin — the same tools either way.
Hosted endpoint
Point any MCP client at the hosted server. Nothing to install, nothing to keep updated — authenticate with your personal access token.
https://mcp.testrelic.ai{
"mcpServers": {
"testrelic": {
"url": "https://mcp.testrelic.ai"
}
}
nothing to install · hosted endpoint
auth · TESTRELIC_MCP_TOKEN
npx
Run the server locally from npm with your TESTRELIC_MCP_TOKEN. The same config works in Claude Desktop, Codex and Gemini CLI.
npx -y @testrelic/mcp"testrelic": {
"command": "npx",
"args": ["-y", "@testrelic/mcp"],
"env": { "TESTRELIC_MCP_TOKEN": "tr_mcp_••••" }
}
✓ testrelic registered · 39 tools
binary · mcp-server-testrelic
Cursor plugin
Install from Cursor's plugin settings and sign in once. A --mock-mode sandbox is available for non-production experimentation.
MCP quickstartsearch · testrelic
▸ TestRelic MCP
install · one click
sign in · mcp-server-testrelic login
✓ 39 tools available
sandbox · --mock-mode · non-production
Eight capability groups · 35+ tools
Pick only the tools you need.
Every capability maps 1:1 to a tool group. Enable what the task requires — the agent only ever sees that slice of the schema.
Always on · repositories, runs, config, health.
tr_describe_repo()Returns a repo's integrations and capabilities. Sourced from the startup bootstrap — zero additional upstream calls.
tr_get_config()Returns the resolved configuration — capabilities, transport, timeouts, cache/output dirs.
tr_health()Reports upstream connectivity, cache state, and whether any circuit breakers are open.
tr_integration_status()Live health check for one integration type in the current org (e.g. 'jira', 'amplitude', 'grafana-loki').
tr_list_repos()Lists repos the authenticated user can see in cloud-platform-app. No upstream fetch per call.
tr_recent_runs()Paginated list of recent runs. Supports filters by repository, framework, status.
Legacy v1 testrelic_* aliases are registered for every tool to preserve backward compatibility.
Live `--caps` flag
Toggle capabilities above and the CLI command below updates in real time. `core` is always on.
$ npx -y @testrelic/mcp --caps core,coverage,creation,healing,impact
Enabled
Capability gating cuts the tool schema by ~4× for AI agents — only the tools you enable appear in the schema.
Ready-made prompts
Chain tools into complete workflows
Three first-party prompts ship with the server — exposed to every MCP client the moment it boots.
create_test_from_gap
From a coverage gap to a runnable test in one prompt. Picks a top uncovered journey, drafts a plan, synthesizes the code, and runs tsc plus --list before returning. Needs coverage + creation.
journey gap → plan → generate → dry-run
● tr_coverage_gaps · top uncovered: guest checkout
drafting plan · 4 steps
synthesized · +38 −0 · checkout.spec.ts
tsc · clean
--list · 1 test discovered
returned only after the dry-run passes
triage_and_heal
One chain to take a red run to a merged fix. Diagnoses the run, pulls platform RCA, proposes a unified-diff patch, and files (or dedupes) a Jira ticket. Needs triage + healing.
failing run → RCA → patch → Jira
● tr_diagnose_run · 3 failures
● tr_ai_rca · selector renamed in v2.4.1
unified diff · +9 −4
Jira · QA-482 · deduped
red run → merged fix, one chain
pr_impact_gate
Turns PR review into a disciplined gate. Parses the diff, computes the blast radius on real Amplitude users, and emits a MUST / SHOULD / OPTIONAL test selection. Needs impact.
PR diff → affected → risk → ranked
● tr_analyze_diff · 12 files · 3 modules
● tr_user_impact · 8.1% of sessions
MUST · checkout.spec.ts · cart.spec.ts
SHOULD · login.test.js
OPTIONAL · 11 specs
blast radius on real users, not guesses
Token-efficiency architecture
Built so the agent spends context on your problem
Capability gating
The LLM only sees tool schemas for the capabilities you enable — cutting the prompt surface by roughly 4×.
all capabilities · ~39 tool schemas
enabled: triage, healing
schemas sent to the LLM · 9
prompt surface · ≈ 4× smaller
3-state reads and token budgets
Every read tool supports full / unchanged / diff via SimHash, so repeat reads of large payloads cost almost nothing. Oversized results truncate automatically and hand back a cache_key pointing at the full blob.
● tr_diagnose_run · full · 8.2 KB
● tr_diagnose_run · unchanged · 40 B
● tr_diagnose_run · diff · 310 B
repeat reads · near-zero cost
per-tool budget truncates, cache_key points back
cache_key · opt in to the full blob
SimHash · per-payload fingerprint
Client-side sampling
Code synthesis runs on the client's model via MCP sampling — no server-side LLM key is ever required.
code synthesis requested
runs on · the client's model
server-side LLM key · never required
your Cursor / Claude subscription does the work
server cost · no inference
protocol · MCP sampling
server inference cost · zero
Security posture
One token in, no third-party keys on your machine
One credential
You authenticate with a single personal access token from TestRelic — through the CLI, your shell environment, or a local profile file. Never a stack of third-party keys on the machine.
TESTRELIC_MCP_TOKEN · tr_mcp_••••
CLI · shell env · local profile
not on this machine:
JIRA_API_TOKEN · absent
AMPLITUDE_KEY · absent
GITHUB_TOKEN · absent
LOKI_PASSWORD · absent
Bootstrap, don't store
Jira, Amplitude, Grafana Loki and GitHub are resolved server-side in the TestRelic cloud. Per-service credentials never live on your laptop or CI runner.
resolved in the TestRelic cloud
Jira · server-side
Amplitude · server-side
Grafana Loki · server-side
GitHub · server-side
per-service creds never reach your laptop or runner
stored in · the cloud backend only
Capability-scoped surface
The server ships as eight capability groups and dozens of tools. Enable only the slices your workflow needs — so agents see a smaller schema, less context noise, and a tighter operational footprint.
shipped · 8 groups · 39 tools
TESTRELIC_MCP_CAPS=triage,healing
agent sees · 9 tools
context noise · reduced
operational footprint · tighter
an invalid cap is rejected, not ignored
core · always on
Open source
The whole server, in the open
AGPL-3.0
Use it, modify it, redistribute it. The whole server is open — not a demo build with the interesting parts removed.
Read the licenseAGPL-3.0
use · yes
modify · yes
redistribute · yes
the whole server, not a demo build
read it · in the repo
scope · server + extension
@testrelic/mcp on npm
Ships as @testrelic/mcp with the mcp-server-testrelic binary, and vendors its own pre-built dist — nothing is fetched at run time.
$ npx -y @testrelic/mcp
package · @testrelic/mcp
binary · mcp-server-testrelic
dist/ · vendored · no remote fetch
nothing is downloaded at run time
login · mcp-server-testrelic login
registry · npmjs.com
Read the source
A TypeScript monorepo: packages/mcp is the server, and the extension package is the VSCode and Cursor host. Issues and PRs are open.
testrelic-mcp-servertestrelic-mcp-server
packages/mcp · the server
extension · VSCode / Cursor host
monorepo · npm workspaces
issues + PRs · open
host · VSCode · Cursor
Ship with context
Give your agent the testing context it needs.
Install via npx or your MCP client and explore every tool against the bundled fixtures. Create an MCP token when you're ready to connect real data — or talk to us first.
npx -y @testrelic/mcp · https://docs.testrelic.ai/mcp/quickstart