New Relic

Consulta registros de New Relic usando consultas NRQL.

Documentación

MseeP.ai Security Assessment Badge

Servidor MCP de New Relic

Un servidor de Protocolo de Contexto de Modelo (MCP) para consultar registros de New Relic mediante consultas NRQL. Este servidor permite que los Modelos de Lenguaje de Gran Tamaño (LLM), como Claude, interactúen con sus datos de New Relic.

Usuarios de Claude Code: También disponible como un plugin instalable con comandos de barra, habilidades y un agente de investigación — no se necesita un servidor MCP. Instale con: /plugin marketplace add Ivlad003/plugins y luego /plugin install newrelic-observability@ivlad-plugins Consulte Ivlad003/plugins para más detalles.

Características

  • Consulta registros y métricas de New Relic usando NRQL
  • Registro detallado de errores
  • Integración sencilla con Claude Desktop
  • Formato de salida legible para humanos
  • ID de cuenta de New Relic configurable

Instrucciones de Configuración

Requisitos Previos

  • Python 3.10 o superior
  • Cuenta de New Relic y clave de API
  • Aplicación Claude Desktop

Pasos de Instalación

  1. Instale el administrador de paquetes uv:
# 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. Cree y configure el proyecto:
# 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. Cree el archivo de servidor newrelic_logs_server.py con el código proporcionado.

  2. Configure sus variables de entorno:

# 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"

Integración con Claude Desktop

Configure Claude Desktop editando su archivo de configuración:

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

Agregue la siguiente configuración:

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

Uso

Ejemplos de Consultas NRQL

  1. Consulta Básica de Transacciones:
SELECT * FROM Transaction SINCE 1 hour ago
  1. Análisis de Errores:
SELECT * FROM Transaction WHERE error IS TRUE SINCE 1 hour ago LIMIT 10
  1. Análisis de Rendimiento:
SELECT average(duration) FROM Transaction FACET name ORDER BY average(duration) DESC LIMIT 5

Ejemplos de Indicaciones para Claude

Puede hacer preguntas a Claude como:

  • "Muéstrame todas las transacciones de la última hora"
  • "¿Hay algún error en nuestra aplicación?"
  • "¿Cuáles son nuestros endpoints más lentos?"

Depuración

Visualización de Registros

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

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

Pruebas con MCP Inspector

Pruebe la funcionalidad de su servidor usando:

npx @modelcontextprotocol/inspector uv run newrelic_logs_server.py

Problemas Comunes

  1. Errores de Autenticación:
  • Verifique que NEW_RELIC_API_KEY esté configurada correctamente
  • Verifique que la clave de API tenga los permisos correctos
  • Asegúrese de que la clave de API sea válida
  1. Errores de Consulta:
  • Verifique la sintaxis de NRQL
  • Compruebe que el ID de cuenta en el código coincida con su cuenta
  • Asegúrese de que los datos consultados existan en el rango de tiempo
  1. Problemas de Conexión:
  • Verifique la conectividad de red
  • Compruebe que el endpoint de GraphQL sea accesible
  • Asegúrese de que no haya firewalls bloqueando las conexiones

Notas de Seguridad

  • Nunca envíe claves de API al control de versiones
  • Use variables de entorno para datos sensibles
  • Mantenga las dependencias actualizadas
  • Supervise los patrones de consulta y los registros de acceso

Desarrollo

Pruebas Locales

  1. Configure las variables de entorno:
export NEW_RELIC_API_KEY="your-api-key-here"
export NEW_RELIC_ACCOUNT_ID="your-account-id-here"
  1. Ejecute el servidor:
uv run newrelic_logs_server.py

Estructura del Código

El servidor implementa:

  • Herramienta de consulta NRQL única
  • ID de cuenta de New Relic configurable
  • Manejo integral de errores
  • Registro detallado
  • Formato de respuestas

Pruebas de Cambios

  1. Modifique el código según sea necesario
  2. Pruebe con MCP Inspector
  3. Reinicie Claude Desktop para aplicar los cambios

Guía de Solución de Problemas

  1. El Servidor No Inicia:
  • Verifique la versión de Python
  • Confirme que todas las dependencias estén instaladas
  • Asegúrese de que el entorno virtual esté activado
  1. La Consulta No Funciona:
  • Revise los registros para ver mensajes de error detallados
  • Verifique la sintaxis de NRQL
  • Asegúrese de que los datos existan en el rango de tiempo consultado
  1. Claude No Se Conecta:
  • Verifique la sintaxis del archivo de configuración
  • Compruebe que las rutas sean absolutas
  • Reinicie Claude Desktop

Contribuciones

  1. Haga un fork del repositorio
  2. Cree una rama de características
  3. Envíe una solicitud de extracción (pull request)

Licencia

Este proyecto está licenciado bajo la Licencia MIT.

Soporte

Si encuentra problemas:

  1. Revise los registros
  2. Consulte la sección de problemas comunes
  3. Pruebe con MCP Inspector
  4. Reporte un problema en GitHub