Datadog MCP Server
Proporciona capacidades completas de monitoreo de Datadog a través de clientes MCP. Requiere claves de API y de aplicación de Datadog.
Documentación
Servidor MCP de Datadog
[!IMPORTANT] Este repositorio está archivado y ya no se mantiene. Datadog ahora proporciona un servidor MCP oficial de Datadog. Utilice el servidor oficial para nuevas integraciones. Shelf no planea mantener ni actualizar esta implementación.
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona capacidades integrales de monitoreo de Datadog a través de Claude Desktop y otros clientes MCP.
Características
Este servidor MCP permite a Claude:
- Gestión de Pipelines CI/CD: Listar pipelines de CI, extraer huellas digitales
- Análisis de Registros de Servicios: Recuperar y analizar registros de servicios con filtrado por entorno y tiempo
- Monitoreo de Métricas: Consultar cualquier métrica de Datadog con filtrado flexible, agregación y descubrimiento de campos
- Monitoreo y Alertas: Listar y gestionar monitores de Datadog y Objetivos de Nivel de Servicio (SLOs)
- Definiciones de Servicios: Listar y recuperar definiciones detalladas de servicios con metadatos, propiedad y configuración
- Gestión de Equipos: Listar equipos, ver detalles de miembros y gestionar información de equipos
Inicio Rápido
Elija su método preferido para ejecutar el servidor MCP de Datadog:
🚀 Ejecución Directa con UVX (Recomendado)
export DD_API_KEY="your-datadog-api-key" DD_APP_KEY="your-datadog-application-key"
# Latest version (HEAD)
uvx --from git+https://github.com/shelfio/datadog-mcp.git datadog-mcp
# Specific version (recommended for production)
uvx --from git+https://github.com/shelfio/datadog-mcp.git@v0.0.5 datadog-mcp
# Specific branch
uvx --from git+https://github.com/shelfio/datadog-mcp.git@main datadog-mcp
🔧 Ejecución Rápida con UV (Desarrollo)
export DD_API_KEY="your-datadog-api-key" DD_APP_KEY="your-datadog-application-key"
git clone https://github.com/shelfio/datadog-mcp.git /tmp/datadog-mcp && cd /tmp/datadog-mcp && uv run ddmcp/server.py
🐳 Podman (Opcional)
podman run -e DD_API_KEY="your-datadog-api-key" -e DD_APP_KEY="your-datadog-application-key" -i $(podman build -q https://github.com/shelfio/datadog-mcp.git)
Comparación de Métodos:
| Método | Velocidad | Código Más Reciente | Configuración | Mejor Para |
|---|---|---|---|---|
| 🚀 Ejecución Directa con UVX | ⚡⚡⚡ | ✅ (versionado) | Mínima | Producción, Claude Desktop |
| 🔧 Ejecución Rápida con UV | ⚡⚡ | ✅ (última versión) | Requiere Clonación | Desarrollo, Pruebas |
| 🐳 Podman | ⚡ | ✅ (última versión) | Requiere Podman | Entornos Contenedorizados |
Requisitos
Para Métodos UVX/UV
- Python 3.13+
- Gestor de paquetes UV (incluye uvx)
- Clave de API de Datadog y Clave de Aplicación
Para Método Podman
- Podman
- Clave de API de Datadog y Clave de Aplicación
Gestión de Versiones
Al usar UVX, puede especificar versiones exactas para implementaciones reproducibles:
Formatos de Versión
- Última:
git+https://github.com/shelfio/datadog-mcp.git(HEAD) - Etiqueta Específica:
git+https://github.com/shelfio/datadog-mcp.git@v0.0.5 - Rama:
git+https://github.com/shelfio/datadog-mcp.git@main - Hash de Confirmación:
git+https://github.com/shelfio/datadog-mcp.git@59f0c15
Recomendaciones
- Producción: Use etiquetas específicas (por ejemplo,
@v0.0.5) para estabilidad - Desarrollo: Use la última versión o una rama específica para las funciones más recientes
- Pruebas: Use hashes de confirmación para reproducibilidad exacta
Consulte versiones de GitHub para todas las versiones disponibles.
Integración con Claude Desktop
Usando UVX (Recomendado)
Agregue a la configuración de Claude Desktop:
Última versión (última versión):
{
"mcpServers": {
"datadog": {
"command": "uvx",
"args": ["--from", "git+https://github.com/shelfio/datadog-mcp.git", "datadog-mcp"],
"env": {
"DD_API_KEY": "your-datadog-api-key",
"DD_APP_KEY": "your-datadog-application-key"
}
}
}
}
Versión específica (recomendada para producción):
{
"mcpServers": {
"datadog": {
"command": "uvx",
"args": ["--from", "git+https://github.com/shelfio/datadog-mcp.git@v0.0.5", "datadog-mcp"],
"env": {
"DD_API_KEY": "your-datadog-api-key",
"DD_APP_KEY": "your-datadog-application-key"
}
}
}
}
Para la región UE (consulte Soporte Multi-Región para otras regiones):
{
"mcpServers": {
"datadog": {
"command": "uvx",
"args": ["--from", "git+https://github.com/shelfio/datadog-mcp.git", "datadog-mcp"],
"env": {
"DD_API_KEY": "your-datadog-api-key",
"DD_APP_KEY": "your-datadog-application-key",
"DD_SITE": "datadoghq.eu"
}
}
}
}
Usando Configuración de Desarrollo Local
Para desarrollo con repositorio clonado local:
git clone https://github.com/shelfio/datadog-mcp.git
cd datadog-mcp
Agregue a la configuración de Claude Desktop:
{
"mcpServers": {
"datadog": {
"command": "uv",
"args": ["run", "ddmcp/server.py"],
"cwd": "/path/to/datadog-mcp",
"env": {
"DD_API_KEY": "your-datadog-api-key",
"DD_APP_KEY": "your-datadog-application-key"
}
}
}
}
Opciones de Instalación
Instalación con UVX (Recomendado)
Instale y ejecute directamente desde GitHub sin clonar:
export DD_API_KEY="your-datadog-api-key"
export DD_APP_KEY="your-datadog-application-key"
# Latest version
uvx --from git+https://github.com/shelfio/datadog-mcp.git datadog-mcp
# Specific version (recommended for production)
uvx --from git+https://github.com/shelfio/datadog-mcp.git@v0.0.5 datadog-mcp
Instalación de Desarrollo
Para desarrollo y pruebas locales:
-
Clone el repositorio:
git clone https://github.com/shelfio/datadog-mcp.git cd datadog-mcp -
Instale las dependencias:
uv sync -
Ejecute el servidor:
export DD_API_KEY="your-datadog-api-key" export DD_APP_KEY="your-datadog-application-key" uv run ddmcp/server.py
Instalación con Podman (Opcional)
Para entornos contenedorizados:
podman run -e DD_API_KEY="your-key" -e DD_APP_KEY="your-app-key" -i $(podman build -q https://github.com/shelfio/datadog-mcp.git)
Herramientas
El servidor proporciona estas herramientas a Claude:
list_ci_pipelines
Lista todos los pipelines de CI registrados en Datadog con opciones de filtrado.
Argumentos:
repository(opcional): Filtrar por nombre de repositoriopipeline_name(opcional): Filtrar por nombre de pipelineformat(opcional): Formato de salida - "table", "json" o "summary"
get_pipeline_fingerprints
Extrae huellas digitales de pipelines para usar en definiciones de servicios de Terraform.
Argumentos:
repository(opcional): Filtrar por nombre de repositoriopipeline_name(opcional): Filtrar por nombre de pipelineformat(opcional): Formato de salida - "table", "json" o "summary"
list_metrics
Lista todas las métricas disponibles de Datadog para descubrimiento de métricas.
Argumentos:
filter(opcional): Filtro para buscar métricas por etiquetas (por ejemplo, 'aws:', 'env:', 'service:web')limit(opcional): Número máximo de métricas a devolver (predeterminado: 100, máximo: 10000)
get_metrics
Consulta cualquier métrica de Datadog con filtrado y agregación flexibles.
Argumentos:
metric_name(requerido): El nombre de la métrica a consultar (por ejemplo, 'aws.apigateway.count', 'system.cpu.user')time_range(opcional): "1h", "4h", "8h", "1d", "7d", "14d", "30d"aggregation(opcional): "avg", "sum", "min", "max", "count"filters(opcional): Diccionario de filtros a aplicar (por ejemplo, {'service': 'web', 'env': 'prod'})aggregation_by(opcional): Lista de campos para agrupar resultadosformat(opcional): "table", "summary", "json", "timeseries"
get_metric_fields
Recupera todos los campos disponibles (etiquetas) para una métrica específica.
Argumentos:
metric_name(requerido): El nombre de la métrica para obtener campostime_range(opcional): "1h", "4h", "8h", "1d", "7d", "14d", "30d"
get_metric_field_values
Recupera todos los valores para un campo específico de una métrica.
Argumentos:
metric_name(requerido): El nombre de la métricafield_name(requerido): El nombre del campo para obtener valorestime_range(opcional): "1h", "4h", "8h", "1d", "7d", "14d", "30d"
list_service_definitions
Lista todas las definiciones de servicios de Datadog con paginación y filtrado.
Argumentos:
page_size(opcional): Número de definiciones de servicios por página (predeterminado: 10, máximo: 100)page_number(opcional): Número de página para paginación (indexado desde 0, predeterminado: 0)schema_version(opcional): Filtrar por versión de esquema (por ejemplo, 'v2', 'v2.1', 'v2.2')format(opcional): Formato de salida - "table", "json" o "summary"
get_service_definition
Recupera la definición de un servicio específico con metadatos detallados.
Argumentos:
service_name(requerido): Nombre del servicio a recuperarschema_version(opcional): Versión de esquema a recuperar (predeterminado: "v2.2", opciones: "v1", "v2", "v2.1", "v2.2")format(opcional): Formato de salida - "formatted", "json" o "yaml"
get_service_logs
Recupera registros de servicios con capacidades integrales de filtrado.
Argumentos:
service_name(requerido): Nombre del serviciotime_range(requerido): "1h", "4h", "8h", "1d", "7d", "14d", "30d"environment(opcional): "prod", "staging", "backoffice"log_level(opcional): "INFO", "ERROR", "WARN", "DEBUG"format(opcional): "table", "text", "json", "summary"
list_monitors
Lista todos los monitores de Datadog con opciones integrales de filtrado.
Argumentos:
name(opcional): Filtrar monitores por nombre (coincidencia de subcadena)tags(opcional): Filtrar monitores por etiquetas (por ejemplo, 'env:prod,service:web')monitor_tags(opcional): Filtrar monitores por etiquetas de monitor (por ejemplo, 'team:backend')page_size(opcional): Número de monitores por página (predeterminado: 50, máximo: 1000)page(opcional): Número de página (indexado desde 0, predeterminado: 0)format(opcional): Formato de salida - "table", "json" o "summary"
list_slos
Lista Objetivos de Nivel de Servicio (SLOs) de Datadog con capacidades de filtrado.
Argumentos:
query(opcional): Filtrar SLOs por nombre o descripción (coincidencia de subcadena)tags(opcional): Filtrar SLOs por etiquetas (por ejemplo, 'team:backend,env:prod')limit(opcional): Número máximo de SLOs a devolver (predeterminado: 50, máximo: 1000)offset(opcional): Número de SLOs a omitir (predeterminado: 0)format(opcional): Formato de salida - "table", "json" o "summary"
get_teams
Lista equipos y sus miembros.
Argumentos:
team_name(opcional): Filtrar por nombre de equipoinclude_members(opcional): Incluir detalles de miembros (predeterminado: false)format(opcional): "table", "json", "summary"
Ejemplos
Pídale a Claude que le ayude con:
"Show me all CI pipelines for the shelf-api repository"
"Get error logs for the content service in the last 4 hours"
"List all available AWS metrics"
"What are the latest metrics for aws.apigateway.count grouped by account?"
"Get all available fields for the system.cpu.user metric"
"List all service definitions in my organization"
"Get the definition for the user-api service"
"List all teams and their members"
"Show all monitors for the web service"
"List SLOs with less than 99% uptime"
"Extract pipeline fingerprints for Terraform configuration"
Configuración
Variables de Entorno
| Variable | Descripción | Requerida | Predeterminado |
|---|---|---|---|
DD_API_KEY | Clave de API de Datadog | Sí | - |
DD_APP_KEY | Clave de Aplicación de Datadog | Sí | - |
DD_SITE | Sitio/región de Datadog (consulte la tabla a continuación) | No | datadoghq.com |
Soporte Multi-Región
Datadog opera en múltiples regiones. Establezca la variable de entorno DD_SITE para conectarse a su región de Datadog:
| Región | Valor de DD_SITE | Descripción |
|---|---|---|
| US1 | datadoghq.com | EE. UU. (predeterminado) |
| US3 | us3.datadoghq.com | US3 |
| US5 | us5.datadoghq.com | US5 |
| EU1 | datadoghq.eu | Europa |
| AP1 | ap1.datadoghq.com | Asia Pacífico (Japón) |
| US1-FED | ddog-gov.com | Gobierno de EE. UU. |
Ejemplo para la región UE:
export DD_SITE="datadoghq.eu"
export DD_API_KEY="your-api-key"
export DD_APP_KEY="your-app-key"
uvx --from git+https://github.com/shelfio/datadog-mcp.git datadog-mcp
Consulte Cómo Empezar con los Sitios de Datadog para más información.
Obtención de Credenciales de Datadog
- Inicie sesión en su cuenta de Datadog
- Vaya a Configuración de la Organización → Claves de API
- Cree o copie su Clave de API (esta es su
DD_API_KEY) - Vaya a Configuración de la Organización → Claves de Aplicación
- Cree o copie su Clave de Aplicación (esta es su
DD_APP_KEY)
Nota: Estas son dos claves diferentes:
- Clave de API: Se utiliza para la autenticación con la API de Datadog
- Clave de Aplicación: Se utiliza para la autorización y está vinculada a una cuenta de usuario específica