New Relic is Needs Work to agents.
Discry independently scored how well an AI agent can discover and understand the New Relic API from what’s public — not whether it’s usable. Below: every signal we checked, what’s costing the score, and what to change.
SCORED UNDER RUBRIC 1.2 · A full re-launch under Discry Score 2.5 — a new behavioral instrument, not comparable to these scores — is in progress.
Discovery
45% of score · 40/100Comprehension
55% of score · 85/100What we found
- An agent that already knows New Relic exists would understand its API quickly: the NerdGraph intro, API-keys, REST v2, and NRQL tutorial pages are task-oriented, clean-markdown-friendly, and include copy-pasteable curl, GraphQL, JavaScript, and Python examples with realistic values.
- An agent trying to DISCOVER the API programmatically would mostly struggle: there is no llms.txt, no llms-full.txt, no .well-known/mcp.json, and no AGENTS.md in the newrelic GitHub org. A valid OpenAPI 3.0.1 spec IS publicly reachable (api.newrelic.com/docs/swagger.yml) but only covers the legacy, minimally-maintained REST v2 API — the recommended NerdGraph GraphQL API has no downloadable spec (schema is reachable only via the interactive NerdGraph explorer or introspection).
- New Relic ships an OFFICIAL MCP server (github.com/newrelic/mcp-server) with dedicated docs at docs.newrelic.com/docs/agentic-ai/mcp/overview and is listed on Glama, PulseMCP, and Smithery — so an agent using an MCP registry as its discovery layer WOULD find a first-party integration path.
- Capability boundaries are unusually well documented for observability tooling: explicit NRQL rate limits, a 25-concurrent-request cap, query-duration limits, and a dedicated concurrency tutorial with working worker-pool/semaphore code for handling HTTP 429.
- robots.txt is fully permissive (User-agent: * / Allow: /) with no AI-crawler blocks, so an agent's crawler can freely read the docs — but the absence of any agent-native discovery file means it must already have a URL to start from.
What to change
Prioritized by impact on discoverability. You (or your docs platform) deploy these — Discry never touches your API.
- 01Publish an llms.txt (and ideally llms-full.txt) at docs.newrelic.com covering the core API surface — NerdGraph intro, API keys, NRQL querying, REST v2 — as this single quick win would lift the two llms.txt discovery checks and materially improve token efficiency for agents.
- 02Close the biggest contract gap: publish the NerdGraph GraphQL SDL/introspection artifact at a stable public URL (a REST v2 OpenAPI spec already exists at api.newrelic.com/docs/swagger.yml, but it only covers the legacy API), so agents can generate clients for the recommended API without scraping HTML tutorials.
- 03Add an AGENTS.md to the primary public repos (docs-website, newrelic-cli, mcp-server) so coding agents get first-party context on how to work with New Relic's APIs and tooling.
- 04Add a .well-known/mcp.json advertising the official New Relic MCP server and its tool declarations, turning the existing MCP investment into a discoverable, agent-native endpoint.
- 05Consolidate error-recovery guidance beyond the concurrency/429 case: give the top NerdGraph and REST v2 error scenarios explicit 'what to do next' fix steps so an agent can self-correct without trial-and-error.
Execution coverage · INFORMATIONAL, UNSCORED
Whether an agent can actually complete a call and recover from errors is the deeper Audit layer — documented here, but not part of the Discry Score.
New Relic documents authentication clearly (user/API key via the Api-Key header for both NerdGraph and REST v2; OAuth2.0 for the MCP server). NerdGraph returns GraphQL-style JSON errors and REST v2 returns JSON/XML; rate limits are explicit (3,000 NRQL queries/account/min, 25 concurrent NerdGraph requests/user returning HTTP 429, query-duration limits). NRQL cursor/async pagination is documented for large result sets. Idempotency keys are not documented (GraphQL mutations rely on explicit create/update/delete semantics rather than idempotency tokens). Live behavior can only be verified via a full Discry Audit.