Skip to content

One memory layer. Every agent on the frontier.

npx -y @testrelic/mcp

Every 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.

Used every day by teams shipping software with AI
Purple Plum FI
ClubQ
Virtu
Levich

Works with any MCP client

Cursor
Claude Desktop
VS Code Copilot Chat
OpenAI MCP bridge
Anthropic MCP
Any MCP client
Custom agent
Sampling-aware
Cursor
Claude Desktop
VS Code Copilot Chat
OpenAI MCP bridge
Anthropic MCP
Any MCP client
Custom agent
Sampling-aware
Cursor
Claude Desktop
VS Code Copilot Chat
OpenAI MCP bridge
Anthropic MCP
Any MCP client
Custom agent
Sampling-aware
Cursor
Claude Desktop
VS Code Copilot Chat
OpenAI MCP bridge
Anthropic MCP
Any MCP client
Custom agent
Sampling-aware

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.

core & connectivity

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.

run triage & RCA

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

triagehealing

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.

production signals

tr_user_impact · 8.1% of sessions

Amplitude · Grafana Loki — proxied, not direct

funnel drop · checkout → receipt

affected users · 1,204 / 14,800

signals

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.

dev intelligence

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]

impactcoveragecreationdevtools

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
mcp.json — hosted

{

"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
mcp.json — npx

"testrelic": {

"command": "npx",

"args": ["-y", "@testrelic/mcp"],

"env": { "TESTRELIC_MCP_TOKEN": "tr_mcp_••••" }

}

✓ testrelic registered · 39 tools

Claude DesktopCodexGemini CLI

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 quickstart
Cursor — Settings · Plugins

search · testrelic

▸ TestRelic MCP

install · one click

sign in · mcp-server-testrelic login

39 tools available

CursorVSCode

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.

Capabilitycore

Always on · repositories, runs, config, health.

tr_describe_repo()
read

Returns a repo's integrations and capabilities. Sourced from the startup bootstrap — zero additional upstream calls.

tr_get_config()
read

Returns the resolved configuration — capabilities, transport, timeouts, cache/output dirs.

tr_health()
read

Reports upstream connectivity, cache state, and whether any circuit breakers are open.

tr_integration_status()
read

Live health check for one integration type in the current org (e.g. 'jira', 'amplitude', 'grafana-loki').

tr_list_repos()
read

Lists repos the authenticated user can see in cloud-platform-app. No upstream fetch per call.

tr_recent_runs()
read

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.

shell
$ npx -y @testrelic/mcp --caps core,coverage,creation,healing,impact

Enabled

corecoveragecreationhealingimpacttriagesignalsdevtools

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.

/create_test_from_gap

journey gapplangeneratedry-run

tr_coverage_gaps · top uncovered: guest checkout

drafting plan · 4 steps

synthesized · +38 −0 · checkout.spec.ts

tsc · clean

--list · 1 test discovered

coveragecreation

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.

/triage_and_heal

failing runRCApatchJira

tr_diagnose_run · 3 failures

tr_ai_rca · selector renamed in v2.4.1

unified diff · +9 −4

Jira · QA-482 · deduped

triagehealing

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_impact_gate

PR diffaffectedriskranked

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

impact

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×.

schema surface

all capabilities · ~39 tool schemas

enabled: triage, healing

schemas sent to the LLM · 9

prompt surface · ≈ 4× smaller

corecoveragecreationhealingimpact
triagesignalsdevtoolsconfig

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.

3-state reads · SimHash

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.

MCP sampling

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.

auth — one token

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.

server-side resolution

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.

capability scope

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 license
LICENSE

AGPL-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.

npm — @testrelic/mcp

$ 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-server
github.com/testrelic-ai

testrelic-mcp-server

packages/mcp · the server

extension · VSCode / Cursor host

monorepo · npm workspaces

TypeScriptvitestAGPL-3.0

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