home / mcp / datadog mcp server

Datadog MCP Server

exposes Datadog APIs for incidents, monitors, logs, dashboards, metrics, traces, hosts, and RUM via MCP tools.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "winor30-mcp-server-datadog": {
      "command": "npx",
      "args": [
        "-y",
        "@winor30/mcp-server-datadog"
      ],
      "env": {
        "DATADOG_SITE": "datadoghq.com",
        "DATADOG_API_KEY": "YOUR_API_KEY",
        "DATADOG_APP_KEY": "YOUR_APP_KEY",
        "DATADOG_SUBDOMAIN": "<your-subdomain>",
        "DATADOG_STORAGE_TIER": "indexes"
      }
    }
  }
}

You can integrate and operate Datadog data through an MCP server that exposes Datadog API capabilities as MCP tools. This enables you to manage incidents, monitors, logs, dashboards, metrics, APM traces, RUM data, and more from a single, consistent interface you connect to with your MCP client.

How to use

To use the Datadog MCP Server, connect your MCP client to one or more configured MCP endpoints. You can execute each tool to perform specific Datadog actions, such as listing incidents, fetching dashboards, querying metrics, or retrieving logs. Each tool returns structured data that you can display or process within your workflow.

How to install

Prerequisites: ensure you have Node.js and npm installed on your system. You will also use a package manager such as npm or npx to run or install the MCP server.

Option A: Install and run the MCP server via the Smithery installer command.

npx -y @smithery/cli install @winor30/mcp-server-datadog --client claude

Option B: Run the MCP server locally from a repository clone or built package. Build and start the server using the standard development workflow.

pnpm install
pnpm build
pnpm watch

Option C: Run the MCP server with a local JavaScript entry point (recommended for Claude Desktop usage). You can configure Claude to load a local built server.

{
  "mcpServers": {
    "datadog": {
      "command": "/path/to/mcp-server-datadog/build/index.js",
      "env": {
        "DATADOG_API_KEY": "<YOUR_API_KEY>",
        "DATADOG_APP_KEY": "<YOUR_APP_KEY>",
        "DATADOG_SITE": "<YOUR_SITE>",
        "DATADOG_SUBDOMAIN": "<YOUR_SUBDOMAIN>",
        "DATADOG_STORAGE_TIER": "indexes" 
      }
    }
  }
}

Or, run the MCP server using npx with explicit packaging arguments.

{
  "mcpServers": {
    "datadog": {
      "command": "npx",
      "args": ["-y", "@winor30/mcp-server-datadog"],
      "env": {
        "DATADOG_API_KEY": "<YOUR_API_KEY>",
        "DATADOG_APP_KEY": "<YOUR_APP_KEY>",
        "DATADOG_SITE": "<YOUR_SITE>",
        "DATADOG_SUBDOMAIN": "<YOUR_SUBDOMAIN>",
        "DATADOG_STORAGE_TIER": "indexes"
      }
    }
  }
}

Setup

You need valid Datadog credentials to authorize the MCP server to access Datadog resources. Prepare these environment variables before starting the server.

Required credentials and optional settings:

  • DATADOG_API_KEY
  • DATADOG_APP_KEY
  • DATADOG_SITE
  • DATADOG_SUBDOMAIN
  • DATADOG_STORAGE_TIER

Security and credentials handling

Treat your API keys as secrets. Do not commit them to source control. Use environment configuration mechanisms provided by your deployment environment to inject these values at runtime.

Debugging

If you encounter issues, enable verbose logs and verify that the MCP server process can reach the Datadog APIs using the configured keys. You can run the MCP Inspector to monitor requests and responses between your MCP client and the server.

Notes

The MCP server exposes a set of tools that map to Datadog capabilities, including incidents, monitors, logs, dashboards, metrics, traces, hosts, and RUM data. Each tool accepts specified inputs and returns structured results suitable for downstream processing.

Available tools

list_incidents

Retrieve a list of incidents from Datadog. Supports optional filter and pagination inputs.

get_incident

Retrieve detailed information about a specific Datadog incident by ID.

get_monitors

Fetch the status of Datadog monitors with optional groupStates, name, and tags filters.

get_logs

Search and retrieve logs from Datadog using a query and time range.

list_dashboards

Get a list of Datadog dashboards with optional name and tag filters.

get_dashboard

Retrieve a specific Datadog dashboard by its ID.

query_metrics

Retrieve metrics data for a given Datadog query and time range.

list_traces

Retrieve a list of Datadog APM traces with optional filters and sorting.

list_hosts

Get a list of hosts from Datadog with multiple filtering and pagination options.

get_active_hosts_count

Get the total number of active hosts in Datadog over a time window.

mute_host

Mute a host in Datadog with optional end time and message.

unmute_host

Unmute a previously muted host in Datadog.

list_downtimes

List scheduled downtimes with optional currentOnly and monitorId filters.

schedule_downtime

Schedule a downtime for a scope with optional recurrence and metadata.

cancel_downtime

Cancel a scheduled Datadog downtime by its ID.

get_rum_applications

Get all RUM applications in the organization.

get_rum_events

Search and retrieve RUM events with a time range and limit.

get_rum_grouped_event_count

Group and count RUM events by a specified dimension.

get_rum_page_performance

Get RUM page performance metrics for specified views.

get_rum_page_waterfall

Retrieve RUM page waterfall data filtered by application name and session.