Skip to main content
Glama
kavingas

newrelic-mcp

by kavingas

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 if NEW_RELIC_ACCOUNT_ID is set), timeout_seconds (optional, 1–70).

Related MCP server: New Relic MCP Server

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 SettingsFeaturesMCP → 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:
    "Execute SELECT average(duration) FROM Transaction FACET name SINCE 1 day ago for 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

F
license - not found
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kavingas/newrelic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server