# Datadog MCP Server MCP server for the Datadog monitoring and observability platform, providing comprehensive tools for managing monitors, dashboards, metrics, events, logs, and incidents. ## Features - **Monitor Management** - Create, update, and manage alerts - **Dashboard Operations** - Build and manage visualizations - **Metrics** - Query and submit time-series data - **Event Tracking** - Record and search deployment/change events - **Log Management** - Search and aggregate logs - **Incident Management** - Track and manage incidents ## Installation ```bash npm install npm run build ``` ## Configuration Set your Datadog API credentials as environment variables: ```bash export DATADOG_API_KEY="your_api_key_here" export DATADOG_APP_KEY="your_app_key_here" ``` Optional: Set your Datadog site (default: datadoghq.com): ```bash export DATADOG_SITE="datadoghq.eu" # For EU ``` ## Usage Run the server: ```bash npm start # or node dist/index.js ``` ## Available Tools (20 total) ### Monitors (5 tools) - `list_monitors` - View all configured monitors - `get_monitor` - Get detailed monitor configuration - `create_monitor` - Create new alerts - `update_monitor` - Modify monitor settings - `delete_monitor` - Remove monitors ### Dashboards (5 tools) - `list_dashboards` - Browse all dashboards - `get_dashboard` - Get dashboard configuration - `create_dashboard` - Build new dashboards - `update_dashboard` - Modify dashboard layouts - `delete_dashboard` - Remove dashboards ### Metrics (3 tools) - `query_metrics` - Query time-series metrics - `submit_metrics` - Send custom metrics - `list_active_metrics` - Discover available metrics ### Events (2 tools) - `create_event` - Record deployment/change events - `search_events` - Find events by filters ### Logs (2 tools) - `search_logs` - Query logs with advanced filters - `aggregate_logs` - Perform log analytics ### Incidents (3 tools) - `list_incidents` - View incident history - `get_incident` - Get incident details - `create_incident` - Declare new incidents ## API Coverage Manifest **Total Datadog API Endpoints:** ~300+ **Implemented in this server:** 20 **Coverage:** ~7% ### Covered Areas: - ✅ Monitor CRUD operations - ✅ Dashboard management - ✅ Metric query and submission - ✅ Event creation and search - ✅ Log search and aggregation - ✅ Incident management basics ### Not Yet Implemented: - ⏳ Synthetic tests management - ⏳ SLO management - ⏳ Downtimes scheduling - ⏳ Service catalog - ⏳ APM traces - ⏳ RUM sessions - ⏳ Security monitoring - ⏳ CI Visibility - ⏳ Network monitoring - ⏳ Webhooks integration - ⏳ Roles and permissions - ⏳ Usage metering - ⏳ Notebooks - ⏳ Metrics metadata ## Architecture ``` datadog/ ├── src/ │ ├── index.ts # MCP server entry point │ ├── client/ │ │ └── datadog-client.ts # API client with rate limiting │ ├── tools/ │ │ ├── monitors.ts # Monitor tools │ │ ├── dashboards.ts # Dashboard tools │ │ ├── metrics.ts # Metric tools │ │ ├── events.ts # Event tools │ │ ├── logs.ts # Log tools │ │ └── incidents.ts # Incident tools │ └── types/ │ └── index.ts # TypeScript interfaces ├── package.json ├── tsconfig.json └── README.md ``` ## Rate Limiting The client implements automatic rate limiting: - Max 10 concurrent requests - Minimum 100ms between requests - Automatic backoff on 429 responses ## Error Handling The server provides detailed error messages for: - Authentication failures (401) - Permission issues (403) - Resource not found (404) - Bad request/validation (400) - Rate limit exceeded (429) - Server errors (500+) ## License MIT