- Built from scratch: apollo, chargebee, datadog, greenhouse, lever, loom, pandadoc, salesloft, sendgrid, supabase, typeform, webflow, zoho-crm, twilio, reonomy - TSC fixes: brevo, google-console, housecall-pro, meta-ads, rippling, bamboohr, close, fieldedge, freshdesk, helpscout, toast, touchbistro, hubspot, notion, quickbooks, airtable, gusto, intercom, linear, monday, salesforce, shopify, square, wave, xero - Entry points added: close, touchbistro - All 65 active servers compile with 0 TypeScript errors - 4 specialty servers skipped (competitor-research, compliance-grc, n8n-apps, product-analytics)
151 lines
3.8 KiB
Markdown
151 lines
3.8 KiB
Markdown
# 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
|