Scout Monitoring MCP

oficial

Los pipes MCP oficiales de Scout envían datos de errores, trazas y métricas desde producción a tu agente de IA.

¿Qué puedes hacer con Scout Monitoring MCP?

  • Listar aplicaciones monitoreadas — Enumera las aplicaciones disponibles de Scout APM, opcionalmente filtradas por fecha de última actividad.
  • Revisar métricas de la aplicación — Recupera datos de métricas individuales, como el tiempo de respuesta o el rendimiento, de una aplicación específica.
  • Inspeccionar endpoints — Obtén todos los endpoints de una aplicación con métricas de rendimiento agregadas, o métricas de series temporales de un endpoint.
  • Examinar trazas — Extrae las trazas recientes de un endpoint, o recupera una única traza con todos los spans y el detalle de ejecución.
  • Clasificar errores — Obtén los grupos de errores recientes de una aplicación, opcionalmente filtrados por endpoint.
  • Mostrar información de rendimiento — Recupera información como consultas N+1, consumo excesivo de memoria y consultas lentas.

Documentación

Scout Monitoring MCP

Scout Monitoring MCP server

MCP Badge

Este repositorio contiene el código para ejecutar localmente un servidor MCP que puede acceder a los datos de Scout Monitoring a través de la API de Scout. Proporcionamos una imagen de Docker que tu Asistente de IA puede descargar y ejecutar para acceder a los datos de Scout Monitoring.

Esto pone los datos de rendimiento y errores de Scout Monitoring directamente en manos de tu Asistente de IA. Para Rails, Django, FastAPI, Laravel y más. Úsalo para obtener trazas y errores con información de línea de código que la IA puede usar para dirigir las correcciones directamente en tu editor y base de código. Consultas N+1, endpoints lentos, consultas lentas, consumo excesivo de memoria, problemas de rendimiento: todos tus problemas de rendimiento favoritos aparecen y se explican justo donde estás trabajando.

Si esto hace tu vida un poquito mejor, ¿por qué no darle una :star:?

Asistente de configuración

La forma más sencilla de configurar y empezar a usar el MCP de Scout es con nuestro asistente de configuración interactivo. Se encarga de todos los requisitos previos y pasos de instalación por ti.

Ejecutar vía npx:

npx @scout_apm/wizard

Compilar y ejecutar desde el código fuente:

cd ./wizard
npm install
npm run build
node dist/wizard.js

El asistente te guiará a través de:

  • Seleccionar tu plataforma de codificación con IA (Cursor, Claude Code, Claude Desktop)
  • Introducir tu clave de API de Scout
  • Configurar automáticamente los ajustes del servidor MCP

Plataformas compatibles

Actualmente, el asistente admite la configuración para:

  • Cursor - Configura automáticamente los ajustes de MCP
  • Claude Code (CLI) - Proporciona el comando correcto para ejecutar
  • Claude Desktop - Actualiza el archivo de configuración para Windows/Mac

Para todas las demás, mostrará un JSON que puedes copiar y pegar en la configuración MCP de tu Asistente de IA.

Requisitos previos

El Asistente es una excelente manera de empezar, pero también puedes configurarlo manualmente. Necesitarás tener o crear una cuenta de Scout Monitoring y obtener una clave de API.

  1. https://scoutapm.com/users/sign_up?utm_source=github&utm_medium=github&utm_campaign=scout-mcp-local
  2. ¡Instala el Agente de Scout en tu aplicación y envía datos a Scout!
    • Ruby
    • Python
    • PHP
    • Si lo estás probando localmente, asegúrate de que monitor: true, errors_enabled: true estén configurados en tu configuración para obtener la mejor experiencia
  3. Visita ajustes para obtener o crear una clave de API
    • Esta no es tu "Agent Key"; es la "API Key" que se puede crear en la página de Ajustes
    • Esta es una clave de solo lectura que solo puede acceder a los datos de tu cuenta
  4. Instala Docker. Las instrucciones a continuación asumen que puedes iniciar un contenedor de Docker

Actualmente, el servidor MCP no se iniciará sin una clave de API establecida, ya sea en el entorno o mediante un argumento de línea de comandos al iniciar.

Instalación

Recomendamos usar la imagen de Docker proporcionada para ejecutar el servidor MCP. Está pensada para ser iniciada por tu Asistente de IA y configurada con tu clave de API de Scout. Muchos clientes locales permiten especificar un comando para ejecutar el servidor MCP en alguna ubicación. A continuación se proporcionan algunos ejemplos.

La imagen de Docker está disponible en Docker Hub.

Por supuesto, siempre puedes clonar este repositorio y ejecutar el servidor MCP directamente; se recomiendan uv u otras herramientas de gestión de entornos.

Configurar un cliente local (p. ej., Claude/Cursor/VS Code Copilot)

Si deseas configurar el MCP manualmente, esto normalmente solo significa proporcionar un comando para ejecutar el servidor MCP con tu clave de API en el entorno en la configuración de tu Asistente de IA. Esta es la forma del JSON (la clave de nivel superior varía):

{
  "mcpServers": {
    "scout-apm": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "--env", "SCOUT_API_KEY", "scoutapp/scout-mcp-local"],
      "env": { "SCOUT_API_KEY": "your_scout_api_key_here"}
    }
  }
}
Claude Code
claude mcp add scoutmcp -e SCOUT_API_KEY=your_scout_api_key_here -- docker run --rm -i -e SCOUT_API_KEY scoutapp/scout-mcp-local
Cursor

Install MCP Server

ASEGÚRATE de actualizar el valor de SCOUT_API_KEY con tu clave de API real en Arguments en Cursor Settings > MCP

VS Code Copilot
Claude Desktop

Añade lo siguiente a tu archivo de configuración de claude:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "scout-apm": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "--env", "SCOUT_API_KEY", "scoutapp/scout-mcp-local"],
      "env": { "SCOUT_API_KEY": "your_scout_api_key_here"}
    }
  }
}

Usar el MCP de Scout Monitoring

El MCP de Scout está pensado para poner los datos de errores y rendimiento directamente en las... ¿manos? de tu Asistente de IA. Úsalo para obtener trazas y errores con información de línea de código que la IA puede usar para dirigir correcciones directamente en tu editor.

La mayoría de los asistentes te mostrarán tanto las llamadas a herramientas sin procesar como realizarán análisis. Los asistentes de escritorio pueden crear fácilmente aplicaciones JS personalizadas para explorar los datos que desees. Los asistentes integrados en editores de código pueden usar datos de trazas y backtraces de errores para hacer correcciones directamente en tu base de código.

Combina el MCP de Scout con las otras herramientas de tu Asistente de IA para:

  • Crear issues detallados en GitHub/GitLab basados en datos de errores y rendimiento
  • Hacer JIRA divertido: haz que tu Asistente de IA cree tickets con todos los detalles
  • Generar PRs que corrijan errores específicos y problemas de rendimiento

Herramientas

El MCP de Scout proporciona las siguientes herramientas para acceder a los datos de Scout APM:

  • list_apps - Lista las aplicaciones de Scout APM disponibles, con filtrado opcional por fecha de última actividad
  • get_app_metrics - Obtiene datos de una métrica individual (response_time, throughput, etc.) para una aplicación específica
  • get_app_endpoints - Obtiene todos los endpoints de una aplicación con métricas de rendimiento agregadas
  • get_endpoint_metrics - Obtiene métricas de series temporales para un endpoint específico en una aplicación
  • get_app_endpoint_traces - Obtiene trazas recientes de una aplicación filtradas a un endpoint específico
  • get_app_trace - Obtiene una traza individual con todos los spans e información detallada de ejecución
  • get_app_error_groups - Obtiene grupos de errores recientes de una aplicación, opcionalmente filtrados por endpoint
  • get_app_insights - Obtiene información de rendimiento, incluidas consultas N+1, consumo excesivo de memoria y consultas lentas

Recursos

El MCP de Scout proporciona plantillas de configuración como recursos que tu asistente de IA puede leer y aplicar:

  • scoutapm://config-resources/{framework} - Instrucciones de configuración para el framework o biblioteca compatible (rails, django, flask, fastapi)
  • scoutapm://config-resources/list - Lista todas las plantillas de configuración disponibles
  • scoutapm://metrics - Lista de todas las métricas disponibles para Scout APM

Prompts útiles

Configuración e instalación

  • "Ayúdame a configurar el monitoreo de Scout para mi aplicación Rails"
  • "Crea un archivo de configuración de Scout APM para mi proyecto Django con la clave ABC123"

Rendimiento y monitoreo

  • "Resume las herramientas disponibles en el MCP de Scout Monitoring."
  • "Encuentra los endpoints más lentos de la aplicación my-app-name en los últimos 7 días. Genera una tabla con los resultados, incluido el tiempo de respuesta promedio, el throughput y el tiempo de respuesta P95."
  • "Muéstrame los errores de mayor frecuencia de la aplicación Foo en las últimas 24 horas. Obtén el detalle del error más reciente, examina el backtrace y sugiere una corrección."
  • "Obtén cualquier información reciente sobre N+1 de la aplicación Bar. Extrae la traza específica por id y ayúdame a optimizarla según los datos del backtrace."

Uso de tokens

Actualmente estamos más interesados en ampliar la información disponible que en controlar estrictamente el tamaño de las respuestas de nuestras herramientas MCP. Si tu Asistente de IA tiene un límite de tokens configurable (p. ej., Claude Code export MAX_MCP_OUTPUT_TOKENS=50000), recomendamos establecerlo generosamente alto, p. ej., 50.000 tokens.

Desarrollo local

Usamos uv y taskipy para gestionar entornos y ejecutar tareas de este proyecto.

Ejecutar con Inspector

uv run task dev

Conéctate dentro de inspector para añadir la clave de API, configurada con transporte STDIO

Compilar la imagen de Docker

docker build -t scout-mcp-local .

Publicación

  1. Crea una rama y actualiza las versiones con uv run python bump_versions.py
  2. Haz que se fusione
  3. Crea una release de GitHub con la nueva versión (gh release create v2025.11.3 --generate-notes --draft)

Publicar la release envía la etiqueta v*, y CI publica la imagen de Docker, el paquete de PyPI y luego las entradas del MCP Registry:

  • server.json → com.scoutapm/scout-mcp-local (este servidor; su versión se actualiza mediante bump_versions.py)
  • server.remote.json → com.scoutapm/scout-monitoring (el servidor alojado en https://scoutapm.com/mcp). Actualiza su version manualmente cuando cambies sus metadatos; las versiones sin cambios se omiten.

Clave del MCP Registry

El registro verifica que somos propietarios del espacio de nombres com.scoutapm/* mediante un registro TXT de DNS en el ápice de scoutapm.com que contiene una clave pública Ed25519. CI inicia sesión con la clave privada correspondiente del secreto del repositorio MCP_REGISTRY_PRIVATE_KEY. Para rotarla:

openssl genpkey -algorithm Ed25519 -out key.pem
# Public key for the TXT record: replace the existing v=MCPv1 record, don't add a second one
echo "v=MCPv1; k=ed25519; p=$(openssl pkey -in key.pem -pubout -outform DER | tail -c 32 | base64)"
# Private key (hex) for the MCP_REGISTRY_PRIVATE_KEY secret
openssl pkey -in key.pem -noout -text | grep -A3 "priv:" | tail -n +2 | tr -d ' :\n'

Para los bots:

mcp-name: com.scoutapm/scout-mcp-local