Skip to main content

Add your description here

Project description

MseeP.ai Security Assessment Badge

New Relic MCP Server

A simple Model Context Protocol (MCP) server for querying New Relic logs using NRQL queries. This server enables Large Language Models (LLMs) like Claude to interact with your New Relic data.

Features

  • Query New Relic logs and metrics using NRQL
  • Detailed error logging
  • Easy integration with Claude Desktop
  • Human-readable output formatting
  • Configurable New Relic account ID

Setup Instructions

Prerequisites

  • Python 3.10 or higher
  • New Relic account and API key
  • Claude Desktop application

Installation Steps

  1. Install uv package manager:
# On macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# On Windows (PowerShell)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
  1. Create and setup project:
# Create directory
mkdir newrelic-mcp
cd newrelic-mcp

# Create virtual environment
uv venv

# Activate virtual environment
source .venv/bin/activate  # On Unix/macOS
.venv\Scripts\activate     # On Windows

# Install dependencies
uv pip install "mcp[cli]" httpx
  1. Create server file newrelic_logs_server.py with the provided code.

  2. Configure your environment variables:

# On Unix/macOS
export NEW_RELIC_API_KEY="your-api-key-here"
export NEW_RELIC_ACCOUNT_ID="your-account-id-here"

# On Windows (CMD)
set NEW_RELIC_API_KEY=your-api-key-here
set NEW_RELIC_ACCOUNT_ID=your-account-id-here

# On Windows (PowerShell)
$env:NEW_RELIC_API_KEY = "your-api-key-here"
$env:NEW_RELIC_ACCOUNT_ID = "your-account-id-here"

Claude Desktop Integration

Configure Claude Desktop by editing your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the following configuration:

{
    "mcpServers": {
        "newrelic": {
            "command": "uv",
            "args": [
                "--directory",
                "/absolute/path/to/newrelic-mcp",
                "run",
                "newrelic_logs_server.py"
            ],
            "env": {
                "NEW_RELIC_API_KEY": "your-api-key-here",
                "NEW_RELIC_ACCOUNT_ID": "your-account-id-here"
            }
        }
    }
}

Usage

Example NRQL Queries

  1. Basic Transaction Query:
SELECT * FROM Transaction SINCE 1 hour ago
  1. Error Analysis:
SELECT * FROM Transaction WHERE error IS TRUE SINCE 1 hour ago LIMIT 10
  1. Performance Analysis:
SELECT average(duration) FROM Transaction FACET name ORDER BY average(duration) DESC LIMIT 5

Example Claude Prompts

You can ask Claude questions like:

  • "Show me all transactions from the last hour"
  • "Are there any errors in our application?"
  • "What are our slowest endpoints?"

Debugging

Viewing Logs

# On macOS/Linux
tail -f ~/Library/Logs/Claude/mcp-server-newrelic.log

# On Windows
type %APPDATA%\Claude\logs\mcp-server-newrelic.log

Testing with MCP Inspector

Test your server functionality using:

npx @modelcontextprotocol/inspector uv run newrelic_logs_server.py

Common Issues

  1. Authentication Errors:
  • Check if NEW_RELIC_API_KEY is set correctly
  • Verify API key has correct permissions
  • Ensure API key is valid
  1. Query Errors:
  • Verify NRQL syntax
  • Check account ID in code matches your account
  • Ensure queried data exists in the time range
  1. Connection Issues:
  • Check network connectivity
  • Verify GraphQL endpoint is accessible
  • Ensure no firewalls are blocking connections

Security Notes

  • Never commit API keys to version control
  • Use environment variables for sensitive data
  • Keep dependencies updated
  • Monitor query patterns and access logs

Development

Local Testing

  1. Set environment variables:
export NEW_RELIC_API_KEY="your-api-key-here"
export NEW_RELIC_ACCOUNT_ID="your-account-id-here"
  1. Run the server:
uv run newrelic_logs_server.py

Code Structure

The server implements:

  • Single NRQL query tool
  • Configurable New Relic account ID
  • Comprehensive error handling
  • Detailed logging
  • Response formatting

Testing Changes

  1. Modify code as needed
  2. Test with MCP Inspector
  3. Restart Claude Desktop to apply changes

Troubleshooting Guide

  1. Server Not Starting:
  • Check Python version
  • Verify all dependencies are installed
  • Ensure virtual environment is activated
  1. Query Not Working:
  • Check logs for detailed error messages
  • Verify NRQL syntax
  • Ensure data exists in queried time range
  1. Claude Not Connecting:
  • Verify configuration file syntax
  • Check paths are absolute
  • Restart Claude Desktop

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request

License

This project is licensed under the MIT License.

Support

If you encounter issues:

  1. Check the logs
  2. Review common issues section
  3. Test with MCP Inspector
  4. File an issue on GitHub

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_ivlad003_mcp_newrelic-0.1.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_ivlad003_mcp_newrelic-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_ivlad003_mcp_newrelic-0.1.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_ivlad003_mcp_newrelic-0.1.0.tar.gz
Algorithm Hash digest
SHA256 430a49b4e314799dfa34c6edb5d8d77366da4ab68a420c2ba75499ce5a06c252
MD5 1c0320b34c458528d9c7db25867cd395
BLAKE2b-256 d9d6bbcd330e859b3c7fbbae8f3daf1defd9fa0d7edb45cf5d3bfb3056cbb06f

See more details on using hashes here.

File details

Details for the file iflow_mcp_ivlad003_mcp_newrelic-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_ivlad003_mcp_newrelic-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_ivlad003_mcp_newrelic-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f71b5cca91b94a3cde4bc555904d958e8d17a1b7a6d4e726c2485a6efddd9a56
MD5 ddd27a2122af32f6f7ded1afa7f4ed1e
BLAKE2b-256 f4a19a9508aae5e10b8780faa0d01b45bee0e881f37320cb8b85a6a524f67f8a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page