newrelic-mcp
Executes NRQL queries against New Relic via the NerdGraph API, enabling monitoring and observability data retrieval through natural language.
README
New Relic MCP Server
MCP server that executes NRQL queries against New Relic via the NerdGraph GraphQL API.
Tools
execute_nrql— Run an NRQL query against a single New Relic account. Parameters:query(required),account_id(optional ifNEW_RELIC_ACCOUNT_IDis set),timeout_seconds(optional, 1–70).
Requirements
- Python 3.10+
- uv (recommended) or pip
- A New Relic user API key with NerdGraph access
Environment variables
| Variable | Required | Description |
|---|---|---|
NEW_RELIC_API_KEY |
Yes | New Relic user API key for NerdGraph. Create at one.newrelic.com. |
NEW_RELIC_REGION |
No | us (default) or eu for NerdGraph endpoint. |
NEW_RELIC_ACCOUNT_ID |
No | Default account ID when not passed to execute_nrql. |
Copy .env.example to .env and set NEW_RELIC_API_KEY (and optionally the others).
Install
The recommended way is via uvx — no separate install step needed:
{
"mcpServers": {
"newrelic": {
"command": "uvx",
"args": ["newrelic-mcp"],
"env": {
"NEW_RELIC_API_KEY": "YOUR_API_KEY",
"NEW_RELIC_REGION": "us",
"NEW_RELIC_ACCOUNT_ID": "YOUR_ACCOUNT_ID"
}
}
}
}
uvx fetches and runs the package from PyPI automatically.
Or install explicitly with pip:
pip install newrelic-mcp
Claude Code setup
Run this command to register the server (one-time setup):
claude mcp add newrelic --env NEW_RELIC_API_KEY=YOUR_API_KEY --env NEW_RELIC_REGION=us -- uvx newrelic-mcp
Or add it manually to your Claude Code MCP config (~/.claude/settings.json or project .claude/settings.json):
{
"mcpServers": {
"newrelic": {
"command": "uvx",
"args": ["newrelic-mcp"],
"env": {
"NEW_RELIC_API_KEY": "YOUR_API_KEY",
"NEW_RELIC_REGION": "us"
}
}
}
}
Cursor setup
Edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (project-level) and add:
{
"mcpServers": {
"newrelic": {
"command": "uvx",
"args": ["newrelic-mcp"],
"env": {
"NEW_RELIC_API_KEY": "YOUR_API_KEY",
"NEW_RELIC_REGION": "us",
"NEW_RELIC_ACCOUNT_ID": "YOUR_ACCOUNT_ID"
}
}
}
}
Then restart Cursor. Alternatively, use the UI: Cursor Settings → Features → MCP → add a new server with command uvx, arg newrelic-mcp, and the env vars above.
Codex CLI setup
Edit ~/.codex/config.yaml and add:
mcpServers:
newrelic:
type: stdio
command: uvx
args:
- newrelic-mcp
env:
NEW_RELIC_API_KEY: "YOUR_API_KEY"
NEW_RELIC_REGION: "us"
NEW_RELIC_ACCOUNT_ID: "YOUR_ACCOUNT_ID"
Then restart Codex. For project-level config, add the same block to codex.yaml in your project root.
Local development
From the project root:
uv sync
uv run main.py
For debugging with HTTP transport:
MCP_TRANSPORT=http uv run main.py
Then connect to http://localhost:8000/mcp with the MCP Inspector.
Do not commit .env or any file containing your API key.
Example prompts
Use these in Cursor (or any MCP client) to run NRQL via the New Relic MCP server:
-
Run a simple query:
"Run this NRQL:SELECT count(*) FROM Transaction SINCE 1 HOUR AGO" -
Query by account:
"ExecuteSELECT average(duration) FROM Transaction FACET name SINCE 1 day agofor account ID 1234567" -
By Adobe Commerce project:
"Query New Relic for project abc123: show me transaction errors in the last 24 hours"
"Get the last 100 logs for project xyz789"
"List Redis samples for project my-project in the last hour" -
Explore an entity:
"What attributes are available on the Log entity? Run a discovery query."
"Show me one Transaction row so I can see the fields" -
Aggregations and facets:
"Count transactions per app name in the last 6 hours"
"Average response time by transaction name for the last day" -
Time range:
"Run: SELECT * FROM Log WHERE message IS NOT NULL SINCE 2 days ago LIMIT 50"
Set NEW_RELIC_ACCOUNT_ID in the MCP config (or pass it in the prompt) when you are not using an Adobe Commerce project ID; the agent can resolve project ID → account ID when needed.
NRQL and rate limits
- Queries must be valid NRQL (e.g.
SELECT count(*) FROM Transaction SINCE 1 HOUR AGO). - New Relic enforces NRQL rate limits. This server does not retry; failed requests surface as tool errors.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.