Skip to main content
Glama
Datadog MCP Server

Datadog MCP Server

by peterlozano

Datadog MCP Server

A read-only Model Context Protocol server that connects to the Datadog API, enabling natural-language investigation workflows through Claude Desktop, Claude Code, or any MCP client.

Scan logs for errors, identify problematic services, query metrics, explore monitors/dashboards/traces — all through conversation.

Setup

npm install
npm run build

Requires three environment variables:

Variable

Required

Default

Description

DD_API_KEY

Yes

—

API Key — identifies your Datadog organization. Found in Organization Settings → API Keys.

DD_APP_KEY

Yes

—

Application Key — tied to a specific user account and grants that user's read permissions. Create one in Organization Settings → Application Keys.

DD_SITE

No

datadoghq.com

Datadog site (e.g. datadoghq.eu, us5.datadoghq.com).

Related MCP server: Datadog MCP Server

MCP Client Configuration

Claude Code

claude mcp add datadog -- node /path/to/datadog/build/index.js

Then set DD_API_KEY and DD_APP_KEY in the environment where Claude Code runs.

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "datadog": {
      "command": "node",
      "args": ["/path/to/datadog/build/index.js"],
      "env": {
        "DD_API_KEY": "your-api-key",
        "DD_APP_KEY": "your-app-key"
      }
    }
  }
}

MCP Inspector (for testing)

DD_API_KEY=xxx DD_APP_KEY=yyy npx @modelcontextprotocol/inspector build/index.js

Tools

Logs

Tool

Description

search_logs

Search logs with structured filters (service, env, status, host) or raw Datadog query syntax. Supports cursor pagination.

Metrics

Tool

Description

query_metrics

Query timeseries data (e.g. avg:system.cpu.user{env:prod} by {host}). Returns summary stats per series.

list_metrics

Search available metric names by prefix.

Monitors

Tool

Description

list_monitors

List monitors filtered by name, tags, status, or type.

get_monitor

Get full monitor details including query, message, and thresholds.

search_monitors

Full-text search across monitor names, queries, and messages.

Traces / APM

Tool

Description

search_traces

Search APM spans by service, operation, environment, status, or duration.

Hosts

Tool

Description

list_hosts

List infrastructure hosts with CPU, load, and IOWait metrics.

get_host_totals

Get counts of active and up hosts.

Dashboards

Tool

Description

list_dashboards

List dashboards with optional title search.

get_dashboard

Get dashboard details including all widgets and their queries.

Events

Tool

Description

list_events

Search events (deploys, alerts, etc.) with cursor pagination.

Incidents

Tool

Description

list_incidents

List incidents with optional search.

get_incident

Get incident details including severity, status, and timeline.

Time Parameters

All time parameters accept relative strings or ISO 8601:

Format

Example

Meaning

Minutes

15m

15 minutes ago

Hours

4h

4 hours ago

Days

7d

7 days ago

Weeks

2w

2 weeks ago

Now

now

Current time

ISO 8601

2025-01-15T10:00:00Z

Exact timestamp

Example Prompts

  • "What errors have occurred in the last hour?"

  • "Show me CPU usage for production hosts over the past day"

  • "Which monitors are currently alerting?"

  • "Search for traces with errors in the checkout service"

  • "List recent deploy events"

Development

npm run dev    # watch mode — recompiles on change
npm run build  # one-time build
npm start      # run the server

This server is read-only — no write or mutate operations are exposed, making it safe for production investigation.

Available Tools

14 tools
get_dashboardA

Get full details of a Datadog dashboard including widgets, queries, and layout.

Inputs: dashboardId (required).

get_host_totalsB

Get total counts of active and up hosts in Datadog.

Inputs: from.

get_incidentA

Get full details of a specific Datadog incident by ID.

Inputs: incidentId (required).

get_monitorA

Get full details for a specific Datadog monitor by ID, including query, message, thresholds, and options.

Inputs: monitorId (required).

list_dashboardsC

List Datadog dashboards with optional search filtering.

Inputs: count, query, start.

list_eventsC

Search Datadog events (deploys, alerts, comments, etc.) with filtering.

Inputs: to, from, tags, limit, +4 more.

list_hostsC

List Datadog infrastructure hosts with status, CPU, load, and IOWait metrics.

Inputs: from, count, start, filter, +2 more.

list_incidentsC

List Datadog incidents with optional search filtering.

Inputs: query, pageSize, pageOffset.

list_metricsA

Search available Datadog metric names. Useful for discovering what metrics exist before querying.

Inputs: query (required).

list_monitorsB

List Datadog monitors with optional filtering by name, tags, status, or type.

Inputs: name, page, tags, type, +2 more.

query_metricsA

Query Datadog timeseries metrics. Returns summary statistics (avg, min, max, latest) per series.

Inputs: query (required), to, from.

search_logsA

Search Datadog logs with structured filters or raw query. Returns log entries with timestamp, service, status, host, and message.

Inputs: to, env, from, host, +8 more.

search_monitorsA

Full-text search across Datadog monitors. Searches name, query, tags, and message.

Inputs: query (required), page, perPage.

search_tracesA

Search Datadog APM traces/spans with structured filters or raw query. Returns span details with service, resource, duration, and status.

Inputs: to, env, from, sort, +6 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 14 tools

    Disambiguation4/5

    Tools target distinct Datadog resources (metrics, monitors, traces, logs, hosts, dashboards, events, incidents), so overlap is low. Minor ambiguity between list_monitors and search_monitors, since both can retrieve monitors with filtering.

    Naming Consistency4/5

    Mostly consistent verb_noun style: list_*, get_*, search_*, query_*. The deviation is get_host_totals, which is noun-first rather than get_host_total/host resource style, but overall naming is readable and predictable.

    Tool Count5/5

    14 tools is well-scoped for a Datadog observability surface. Each tool covers a distinct Datadog domain and earns its place without excessive redundancy.

    Completeness3/5

    The server provides strong read/search coverage across metrics, monitors, traces, logs, hosts, dashboards, events, and incidents. However, it is almost entirely read-only: there are no create, update, delete, mute, or incident management operations, leaving notable lifecycle gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to query and manage Datadog observability data including metrics, logs, traces, and monitors through natural language. Supports read-only operations by default for security.
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables interaction with Datadog APIs through natural language, supporting full CRUD operations on metrics, monitors, dashboards, logs, infrastructure, and more.
      4
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to interact with Datadog's observability platform via natural language, covering metrics, logs, APM, monitors, dashboards, incidents, and infrastructure.
      1,903 npm
      1
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Enables AI assistants to access full Datadog observability, including log search, APM trace filtering, smart sampling, and cross-correlation between logs, traces, and metrics.
      23
      1,903 npm
      6
      Apache 2.0