The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the New Relic MCP Server listing page.
Connect your AI assistant to New Relic — safely.
A production-oriented, self-hostable Model Context Protocol (MCP) server that gives Claude, Cursor, Codex, and other MCP clients typed, read-only-by-default access to NRQL, logs, metrics, traces, errors, entities, alerts, incidents, dashboards, synthetics, workloads, service levels, and selected administration APIs — all over New Relic's NerdGraph.
It deliberately does not expose arbitrary GraphQL, forward client credentials to New Relic, or accept New Relic keys as tool arguments. Mutations are absent unless their feature gates are explicitly enabled, and every write uses a dry-run, confirmation phrase, and post-write readback workflow.
/metrics endpoint with per-tool call counts, durations, and outcomes, plus upstream NerdGraph, queue-depth, retry, rate-limit, and cache metrics.Once connected, ask your MCP client in plain language — it selects and calls the right read-only tools for you:
See the tool catalog for the complete set of capabilities.
New Relic offers an official, New Relic-hosted MCP server (New Relic AI MCP, currently in preview). This project is a complementary, self-hostable and open-source alternative. Choose it when you want:
If you'd rather have a zero-operations, New Relic-managed experience integrated with New Relic AI, the official server may be the better fit. This project trades that convenience for self-hosting, control, and auditability.
Project status: 1.0.0. Review the supported operation matrix and validate permissions against a non-production New Relic account before enabling writes. The MCP Registry, npm, container, and MCPB metadata are prepared, but this repository does not publish artifacts without maintainer credentials.
New Relic applies a limit of 25 concurrent NerdGraph requests per user across all keys owned by that user. This server defaults to 20 total requests and five complex NRQL queries. See performance and scaling before adding replicas. Ordinary HTTP calls are sessionless; prompt SDK cancellation across multiple replicas additionally requires deterministic load-balancer affinity.
Install the package globally:
Or let the MCP client invoke the pinned package through npx:
Stdio reserves stdout for MCP frames. Runtime diagnostics and logs go to stderr.
Create two files readable only by the service account:
Start a loopback-only container:
The MCP endpoint is http://127.0.0.1:3000/mcp; health probes are at /healthz
and /readyz. Docker Compose deliberately enables static bearer authentication.
Read the token from ./secrets/mcp_bearer_token and send it in
Authorization: Bearer <token>.
For a native process:
Non-loopback HTTP must use bearer or OIDC auth, an explicit Host allowlist, TLS at the reverse proxy, and an Origin allowlist for browser clients. See deployment and security.
These short examples use the read-only stdio server. The full guide includes remote bearer and OAuth setups plus client-specific caveats.
Use /mcp inside Claude Code to verify the connection.
For the safest local installation, build or download the .mcpb bundle and use
Settings → Extensions → Advanced settings → Install Extension. Claude Desktop
stores fields marked sensitive in OS secure storage. A manual local stdio JSON
example is in client configuration. Remote servers
must be added through Settings → Connectors, not claude_desktop_config.json.
Copy examples/cursor.mcp.json to .cursor/mcp.json
for one project or ~/.cursor/mcp.json globally. Launch Cursor from an environment
where NEW_RELIC_API_KEY is available, then enable the server under MCP settings.
Codex CLI, the Codex IDE extension, and the ChatGPT desktop app on the same Codex
host share config.toml. See the Codex examples
for Streamable HTTP bearer and OAuth modes.
stdio (or no subcommand) starts the local transport.http serves sessionless Streamable HTTP at /mcp plus health endpoints; its
bounded cancellation registry is process-local.doctor validates configuration, credentials, region, accessible accounts, and
one bounded fixed-query schema selection for every effectively enabled toolset;
it never issues mutations or prints secrets.tools reports enabled toolsets and safety gates without contacting New Relic.| Capability | Default | Required setting |
|---|---|---|
| Read tools | enabled by selected toolsets | NEW_RELIC_TOOLSETS |
| Ordinary writes | off | NEW_RELIC_ENABLE_WRITES=true |
| Delete, cancel, revoke, replacement update, public exposure, suppression | off | writes plus NEW_RELIC_ENABLE_DESTRUCTIVE=true |
| Organization administration | off | NEW_RELIC_ENABLE_ADMIN=true and appropriate auth scope |
| Preview data-management APIs | off | NEW_RELIC_ENABLE_PREVIEW_APIS=true |
| Experimental AI issue actions | off | NEW_RELIC_ENABLE_EXPERIMENTAL_AI_ISSUES=true |
Enabling a gate registers the corresponding tool; it does not bypass New Relic permissions or HTTP authorization scopes. Writes still default to dry-run. Apply the exact confirmation phrase returned by the dry-run using otherwise identical arguments. Confirmation phrases bind to the normalized change and the pre-read state; another state change requires a fresh dry-run.
The project deliberately excludes API-key creation, synthetic secure-credential mutation, live-dashboard passwords and resets, historical-export URLs, Slack destination creation, arbitrary entity deletion, telemetry ingest, and raw GraphQL.
The default read surface is split into independently selectable toolsets:
corenrqlentitiesalertsdashboardssyntheticsworkloadsservice-levelslogsmetricsadmin (never enabled implicitly)Use newrelic-mcp tools --json for the exact runtime catalog and
tool-catalog.md for descriptions. Resources include server
capabilities, accounts, and typed entity/configuration templates. Static prompts
cover incident triage, service health, alert policy review, SLO review, dashboard
design, and synthetic failure analysis. Tools remain the authoritative universal
interface because prompt and resource support varies between MCP clients.
Configuration is validated at startup. The most important settings are:
File-based secrets are preferred for services and take the same value as their environment equivalents. Do not set both forms. Review configuration.md for precedence, every setting, validation rules, and examples.
Run locally with a workspace-specific HTTP port:
Opt-in live tests require an explicit account and are read-only unless the separate disposable-account write flag is set. See development.md and CONTRIBUTING.md.
Contributions are welcome — bug reports, features backed by official New Relic documentation, docs, and tests. Start with CONTRIBUTING.md and the good first issues. All participation follows the Code of Conduct.
If this project is useful to you or your team, a ⭐ helps others discover it.
Need help? See SUPPORT.md. Use GitHub Issues for reproducible bugs and feature requests, and never include New Relic keys, bearer tokens, NRQL, account data, entity details, raw responses, or presigned URLs.
Report vulnerabilities privately according to SECURITY.md.
Apache License 2.0. See LICENSE.