MCP ExplorerExplorer

Newrelic Mcp

@neoai-agenton 4 days ago
7 MIT
FreeCommunity
AI Systems
A CLI tool for monitoring New Relic metrics using MCP.

Overview

What is Newrelic Mcp

New Relic MCP Server is a command-line tool designed for monitoring and analyzing application metrics collected from New Relic using the Model Control Protocol (MCP). It facilitates access to various performance metrics and insights about applications managed through New Relic.

Use cases

The tool can be utilized for a variety of purposes, including fetching transaction details for specific endpoints, analyzing overall application performance, identifying slow transactions, and retrieving database operation metrics. This makes it valuable for Site Reliability Engineers (SREs) and DevOps teams aiming to optimize application performance.

How to use

To use the New Relic MCP Server, users must first set up their environment variables by creating a .env file with necessary New Relic and OpenAI credentials. Then, they should create an agent.yaml configuration file specifying the New Relic settings. Finally, the server can be executed with the appropriate command to start analyzing metrics.

Key features

Key features of the server include the ability to get transaction details, overall application metrics, slow transaction information, and top database operations. Furthermore, it allows users to analyze transaction breakdown segments, enabling deep insights into application performance and potential bottlenecks.

Where to use

The New Relic MCP Server is suitable for use in development and production environments where New Relic is being utilized for application monitoring. It is specifically useful for teams that require real-time performance insights and metrics to ensure optimal application health and user experience.

Content

New Relic MCP Server

A command-line tool for monitoring and analyzing New Relic application metrics using MCP (Model Control Protocol).

Installation

Install directly from GitHub using pipx:

# Install
pipx install git+https://github.com/yourusername/newrelic-mcp.git

# Or run without installation
pipx run git+https://github.com/yourusername/newrelic-mcp.git

Quick Start

  1. Set up your environment variables:

    Method: Using .env file

    # Create a .env file in your project directory
    cat > .env << EOL
    # New Relic Credentials
    NEWRELIC_API_KEY=your-newrelic-api-key-here
    NEWRELIC_INSIGHTS_KEY=your-newrelic-insights-key-here
    NEWRELIC_ACCOUNT_ID=your-newrelic-account-id-here
    
    # OpenAI Credentials
    OPENAI_API_KEY=your-openai-api-key-here
    
    # Optional: Model Configuration
    MODEL=openai/gpt-4o-mini
    EOL
    
  2. Create agent.yaml:

- name: "New Relic Agent"
  description: "Agent to get all details of New Relic"
  mcp_servers: 
    - name: "New Relic MCP Server"
      args: ["--api-key=${NEWRELIC_API_KEY}", "--insights-key=${NEWRELIC_INSIGHTS_KEY}", "--account-id=${NEWRELIC_ACCOUNT_ID}", "--openai_api_key=${OPENAI_API_KEY}"]
      command: "newrelic-mcp"
  system_prompt: "You are a SRE devops engineer specialising in New Relic to get APM metrics at performance level. You can use the tools provided to you to get the details of the performnace of apm. Precisely use the tools to get the details of necessary metrics to get the valuable information."
  1. Run the server:
newrelic-mcp --api-key "YOUR_API_KEY" --insights-key "YOUR_INSIGHTS_KEY" --account-id "YOUR_ACCOUNT_ID" --openai_api_key "YOUR_OPENAI_API_KEY"

Available Tools

The server provides the following tools for New Relic APM analysis:

  1. Get transaction details for a specific endpoint:
await get_transaction_details_by_url_path(
    application_name="your-app-name",
    url_path="/api/v1/endpoint",
    time_range_minutes=30
)
  1. Get overall application metrics:
await get_application_metrics(
    application_name="your-app-name",
    time_range_minutes=30
)
  1. Get APM metrics for an application:
await get_newrelic_apm_metrics(
    application_name="your-app-name",
    time_range_minutes=30
)
  1. Get slow transaction details:
await get_application_slow_transactions_details(
    application_name="your-app-name",
    time_range_minutes=30
)
  1. Get top database operations:
await get_application_top_database_operations_details(
    application_name="your-app-name",
    time_range_minutes=30
)
  1. Get transaction breakdown segments:
await get_transaction_breakdown_segments(
    application_name="your-app-name",
    time_range_minutes=30
)

Development

For development setup:

git clone https://github.com/yourusername/newrelic-mcp.git
cd newrelic-mcp
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e ".[dev]"

License

MIT License - See LICENSE file for details

Tools

No tools

Comments