Datadog MCP Server
Fornece capacidades abrangentes de monitoramento Datadog por meio de clientes MCP. Requer chaves de API e Aplicação Datadog.
Documentação
Servidor MCP da Datadog
[!IMPORTANT] Este repositório está arquivado e não é mais mantido. A Datadog agora fornece um servidor MCP oficial da Datadog. Use o servidor oficial para novas integrações. A Shelf não planeja manter ou atualizar esta implementação.
Um servidor Model Context Protocol (MCP) que fornece recursos abrangentes de monitoramento da Datadog por meio do Claude Desktop e outros clientes MCP.
Recursos
Este servidor MCP permite que o Claude:
- Gerenciamento de Pipelines CI/CD: Liste pipelines de CI, extraia impressões digitais
- Análise de Logs de Serviços: Recupere e analise logs de serviços com filtros de ambiente e tempo
- Monitoramento de Métricas: Consulte qualquer métrica da Datadog com filtragem flexível, agregação e descoberta de campos
- Monitoramento e Alertas: Liste e gerencie monitores da Datadog e Objetivos de Nível de Serviço (SLOs)
- Definições de Serviços: Liste e recupere definições detalhadas de serviços com metadados, propriedade e configuração
- Gerenciamento de Equipes: Liste equipes, visualize detalhes de membros e gerencie informações da equipe
Início Rápido
Escolha seu método preferido para executar o servidor MCP da Datadog:
🚀 Execução Direta com 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
🔧 Execução Rápida com UV (Desenvolvimento)
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)
Comparação de Métodos:
| Método | Velocidade | Código Mais Recente | Configuração | Melhor Para |
|---|---|---|---|---|
| 🚀 Execução Direta com UVX | ⚡⚡⚡ | ✅ (versionado) | Mínima | Produção, Claude Desktop |
| 🔧 Execução Rápida com UV | ⚡⚡ | ✅ (última versão) | Requer Clone | Desenvolvimento, Testes |
| 🐳 Podman | ⚡ | ✅ (última versão) | Requer Podman | Ambientes Containerizados |
Requisitos
Para Métodos UVX/UV
- Python 3.13+
- Gerenciador de pacotes UV (inclui uvx)
- Chave de API da Datadog e Chave de Aplicação
Para Método Podman
- Podman
- Chave de API da Datadog e Chave de Aplicação
Gerenciamento de Versões
Ao usar UVX, você pode especificar versões exatas para implantações reproduzíveis:
Formatos de Versão
- Mais Recente:
git+https://github.com/shelfio/datadog-mcp.git(HEAD) - Tag Específica:
git+https://github.com/shelfio/datadog-mcp.git@v0.0.5 - Branch:
git+https://github.com/shelfio/datadog-mcp.git@main - Hash de Commit:
git+https://github.com/shelfio/datadog-mcp.git@59f0c15
Recomendações
- Produção: Use tags específicas (ex.:
@v0.0.5) para estabilidade - Desenvolvimento: Use a versão mais recente ou branch específica para novos recursos
- Testes: Use hashes de commit para reprodutibilidade exata
Consulte lançamentos do GitHub para todas as versões disponíveis.
Integração com Claude Desktop
Usando UVX (Recomendado)
Adicione à configuração do Claude Desktop:
Versão mais recente (última versão):
{
"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"
}
}
}
}
Versão específica (recomendado para produção):
{
"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 região da UE (consulte Suporte Multi-Região para outras regiões):
{
"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 Configuração de Desenvolvimento Local
Para desenvolvimento com repositório clonado localmente:
git clone https://github.com/shelfio/datadog-mcp.git
cd datadog-mcp
Adicione à configuração do 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"
}
}
}
}
Opções de Instalação
Instalação com UVX (Recomendado)
Instale e execute diretamente do GitHub sem 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
Instalação para Desenvolvimento
Para desenvolvimento e testes locais:
-
Clone o repositório:
git clone https://github.com/shelfio/datadog-mcp.git cd datadog-mcp -
Instale as dependências:
uv sync -
Execute o servidor:
export DD_API_KEY="your-datadog-api-key" export DD_APP_KEY="your-datadog-application-key" uv run ddmcp/server.py
Instalação com Podman (Opcional)
Para ambientes containerizados:
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)
Ferramentas
O servidor fornece estas ferramentas ao Claude:
list_ci_pipelines
Lista todos os pipelines de CI registrados na Datadog com opções de filtragem.
Argumentos:
repository(opcional): Filtrar por nome do repositóriopipeline_name(opcional): Filtrar por nome do pipelineformat(opcional): Formato de saída - "table", "json" ou "summary"
get_pipeline_fingerprints
Extrai impressões digitais de pipelines para uso em definições de serviços do Terraform.
Argumentos:
repository(opcional): Filtrar por nome do repositóriopipeline_name(opcional): Filtrar por nome do pipelineformat(opcional): Formato de saída - "table", "json" ou "summary"
list_metrics
Lista todas as métricas disponíveis da Datadog para descoberta de métricas.
Argumentos:
filter(opcional): Filtro para pesquisar métricas por tags (ex.: 'aws:', 'env:', 'service:web')limit(opcional): Número máximo de métricas a retornar (padrão: 100, máximo: 10000)
get_metrics
Consulta qualquer métrica da Datadog com filtragem e agregação flexíveis.
Argumentos:
metric_name(obrigatório): O nome da métrica a consultar (ex.: '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): Dicionário de filtros a aplicar (ex.: {'service': 'web', 'env': 'prod'})aggregation_by(opcional): Lista de campos para agrupar resultadosformat(opcional): "table", "summary", "json", "timeseries"
get_metric_fields
Recupera todos os campos disponíveis (tags) para uma métrica específica.
Argumentos:
metric_name(obrigatório): O nome da métrica para obter campostime_range(opcional): "1h", "4h", "8h", "1d", "7d", "14d", "30d"
get_metric_field_values
Recupera todos os valores para um campo específico de uma métrica.
Argumentos:
metric_name(obrigatório): O nome da métricafield_name(obrigatório): O nome do campo para obter valorestime_range(opcional): "1h", "4h", "8h", "1d", "7d", "14d", "30d"
list_service_definitions
Lista todas as definições de serviços da Datadog com paginação e filtragem.
Argumentos:
page_size(opcional): Número de definições de serviços por página (padrão: 10, máximo: 100)page_number(opcional): Número da página para paginação (baseado em 0, padrão: 0)schema_version(opcional): Filtrar por versão do esquema (ex.: 'v2', 'v2.1', 'v2.2')format(opcional): Formato de saída - "table", "json" ou "summary"
get_service_definition
Recupera a definição de um serviço específico com metadados detalhados.
Argumentos:
service_name(obrigatório): Nome do serviço a recuperarschema_version(opcional): Versão do esquema a recuperar (padrão: "v2.2", opções: "v1", "v2", "v2.1", "v2.2")format(opcional): Formato de saída - "formatted", "json" ou "yaml"
get_service_logs
Recupera logs de serviços com recursos abrangentes de filtragem.
Argumentos:
service_name(obrigatório): Nome do serviçotime_range(obrigatório): "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 os monitores da Datadog com opções abrangentes de filtragem.
Argumentos:
name(opcional): Filtrar monitores por nome (correspondência de substring)tags(opcional): Filtrar monitores por tags (ex.: 'env:prod,service:web')monitor_tags(opcional): Filtrar monitores por tags de monitor (ex.: 'team:backend')page_size(opcional): Número de monitores por página (padrão: 50, máximo: 1000)page(opcional): Número da página (baseado em 0, padrão: 0)format(opcional): Formato de saída - "table", "json" ou "summary"
list_slos
Lista Objetivos de Nível de Serviço (SLOs) da Datadog com recursos de filtragem.
Argumentos:
query(opcional): Filtrar SLOs por nome ou descrição (correspondência de substring)tags(opcional): Filtrar SLOs por tags (ex.: 'team:backend,env:prod')limit(opcional): Número máximo de SLOs a retornar (padrão: 50, máximo: 1000)offset(opcional): Número de SLOs a pular (padrão: 0)format(opcional): Formato de saída - "table", "json" ou "summary"
get_teams
Lista equipes e seus membros.
Argumentos:
team_name(opcional): Filtrar por nome da equipeinclude_members(opcional): Incluir detalhes dos membros (padrão: false)format(opcional): "table", "json", "summary"
Exemplos
Peça ao Claude para ajudar com:
"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"
Configuração
Variáveis de Ambiente
| Variável | Descrição | Obrigatória | Padrão |
|---|---|---|---|
DD_API_KEY | Chave de API da Datadog | Sim | - |
DD_APP_KEY | Chave de Aplicação da Datadog | Sim | - |
DD_SITE | Site/região da Datadog (consulte tabela abaixo) | Não | datadoghq.com |
Suporte Multi-Região
A Datadog opera em múltiplas regiões. Defina a variável de ambiente DD_SITE para conectar à sua região da Datadog:
| Região | Valor DD_SITE | Descrição |
|---|---|---|
| US1 | datadoghq.com | EUA (padrão) |
| US3 | us3.datadoghq.com | US3 |
| US5 | us5.datadoghq.com | US5 |
| EU1 | datadoghq.eu | Europa |
| AP1 | ap1.datadoghq.com | Ásia-Pacífico (Japão) |
| US1-FED | ddog-gov.com | Governo dos EUA |
Exemplo para região da 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 Introdução aos Sites da Datadog para mais informações.
Obtendo Credenciais da Datadog
- Faça login na sua conta Datadog
- Vá para Configurações da Organização → Chaves de API
- Crie ou copie sua Chave de API (esta é sua
DD_API_KEY) - Vá para Configurações da Organização → Chaves de Aplicação
- Crie ou copie sua Chave de Aplicação (esta é sua
DD_APP_KEY)
Observação: Estas são duas chaves diferentes:
- Chave de API: Usada para autenticação com a API da Datadog
- Chave de Aplicação: Usada para autorização e está vinculada a uma conta de usuário específica