Skip to main content
Glama
didlawowo
by didlawowo

Datadog Model Context Protocol (MCP) 🔍

Schmiedeabzeichen

Ein Python-basiertes Tool zur Interaktion mit der Datadog-API und zum Abrufen von Überwachungsdaten aus Ihrer Infrastruktur. Dieses MCP bietet einfachen Zugriff auf Monitorzustände und Kubernetes-Protokolle über eine einfache Schnittstelle.

Datadog-Funktionen 🌟

  • Überwachungsstatusverfolgung : Abrufen und Analysieren bestimmter Monitorzustände

  • Kubernetes-Protokollanalyse : Extrahieren und formatieren Sie Fehlerprotokolle aus Kubernetes-Clustern

Related MCP server: MongoDB MCP Server

Voraussetzungen 📋

  • Python 3.11+

  • Datadog-API- und Anwendungsschlüssel (mit den richtigen Berechtigungen)

  • Zugriff auf die Datadog-Site

Installation 🔧

Installation über Smithery

So installieren Sie Datadog für Claude Desktop automatisch über Smithery :

npx -y @smithery/cli install @didlawowo/mcp-collection --client claude

Benötigte Pakete:

datadog-api-client
fastmcp
loguru
icecream
python-dotenv
uv

Umgebungseinrichtung 🔑

Erstellen Sie eine .env Datei mit Ihren Datadog-Anmeldeinformationen:

DD_API_KEY=your_api_key
DD_APP_KEY=your_app_key

Claude Desktop Setup für MCP einrichten 🖥️

  1. Installieren Sie Claude Desktop

# Assuming you're on macOS
brew install claude-desktop

# Or download from official website
https://claude.ai/desktop
  1. Richten Sie die Datadog MCP-Konfiguration ein:

# on mac is 
~/Library/Application\ Support/Claude/claude_desktop_config.json


# Add this to your claude config json
```json
    "Datadog-MCP-Server": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "datadog-api-client",
        "--with",
        "fastmcp",
        "--with",
        "icecream",
        "--with",
        "loguru",
        "--with",
        "python-dotenv",
        "fastmcp",
        "run",
        "/your-path/mcp-collection/datadog/main.py"
      ],
      "env": {
        "DD_API_KEY": "xxxx",
        "DD_APP_KEY": "xxx"
      }
    },

Verwendung 💻

Protokolle abrufen

Monitor erhalten

Architektur 🏗

  • FastMCP Base : Nutzt das FastMCP-Framework für die Werkzeugverwaltung

  • Modulares Design : Separate Funktionen für Monitore und Protokolle

  • Typsicherheit : Vollständige Typisierungsunterstützung mit Python-Typhinweisen

  • API-Abstraktion : Umschlossene Datadog-API-Aufrufe mit Fehlerbehandlung

Ich werde einen Abschnitt über die Einrichtung von MCP und Claude Desktop hinzufügen:

Einführung in das Model Context Protocol (MCP) 🤖

Was ist MCP?

Das Model Context Protocol (MCP) ist ein Framework, das KI-Modellen die standardisierte Interaktion mit externen Tools und APIs ermöglicht. Es ermöglicht Modellen wie Claude:

  • Zugriff auf externe Daten

  • Befehle ausführen

  • Interagieren Sie mit APIs

  • Behalten Sie den Kontext über Gespräche hinweg bei

einige Beispiele für MCP-Server

https://github.com/punkpeye/awesome-mcp-servers?tab=readme-ov-file

Tutorial zur Einrichtung von MCP

https://medium.com/@pedro.aquino.se/how-to-use-mcp-tools-on-claude-desktop-app-and-automate-your-daily-tasks-1c38e22bc4b0

So funktioniert es - Verfügbare Funktionen 🛠️

Das LLM verwendet die bereitgestellte Funktion, um die Daten abzurufen und zu verwenden

1. Monitorzustände abrufen

get_monitor_states(
    name: str,           # Monitor name to search
    timeframe: int = 1   # Hours to look back
)

Beispiel:


response = get_monitor_states(name="traefik")

# Sample Output
{
    "id": "12345678",
    "name": "traefik",
    "status": "OK",
    "query": "avg(last_5m):avg:traefik.response_time{*} > 1000",
    "message": "Response time is too high",
    "type": "metric alert",
    "created": "2024-01-14T10:00:00Z",
    "modified": "2024-01-14T15:30:00Z"
}

2. Kubernetes-Protokolle abrufen

get_k8s_logs(
    cluster: str,            # Kubernetes cluster name
    timeframe: int = 5,      # Hours to look back
    namespace: str = None    # Optional namespace filter
)

Beispiel:

logs = get_k8s_logs(
    cluster="prod-cluster",
    timeframe=3,
    namespace="default"
)

# Sample Output
{
    "timestamp": "2024-01-14T22:00:00Z",
    "host": "worker-1",
    "service": "nginx-ingress",
    "pod_name": "nginx-ingress-controller-abc123",
    "namespace": "default",
    "container_name": "controller",
    "message": "Connection refused",
    "status": "error"
}
# Install as MCP extension
cd datadog
task install-mcp

4. Installation überprüfen

Im Claude-Chat-Desktop

Überprüfen Sie die Datadog-Verbindung in Claude

Setup-Claude

5. Verwenden Sie Datadog MCP Tools

Sicherheitsüberlegungen 🔒

  • Speichern Sie API-Schlüssel in .env

  • MCP läuft in isolierter Umgebung

  • Jedes Tool verfügt über definierte Berechtigungen

  • Ratenbegrenzung ist implementiert

Fehlerbehebung 🔧

Verwenden des MCP Inspector

# Launch MCP Inspector for debugging
task run-mcp-inspector

Der MCP Inspector bietet:

  • Echtzeitansicht des MCP-Serverstatus

  • Funktionsaufrufprotokolle

  • Fehlerverfolgung

  • API-Antwortüberwachung

Häufige Probleme und Lösungen

  1. API-Authentifizierungsfehler

    Error: (403) Forbidden

    ➡️ Überprüfen Sie Ihren DD_API_KEY und DD_APP_KEY in .env

  2. MCP-Verbindungsprobleme

    Error: Failed to connect to MCP server

    ➡️ Überprüfen Sie den Pfad und Inhalt Ihrer claude_desktop_config.json

  3. Monitor nicht gefunden

    Error: No monitor found with name 'xxx'

    ➡️ Überprüfen Sie die Rechtschreibung und Groß-/Kleinschreibung des Monitornamens

  4. Protokolle finden Sie hier

Alternativtext

Mitwirken 🤝

Fühlen Sie sich frei:

  1. Offene Probleme aufgrund von Fehlern

  2. Senden Sie PRs für Verbesserungen

  3. Neue Funktionen hinzufügen

Notizen 📝

  • API-Aufrufe erfolgen an die EU-Site von Datadog

  • Der Standardzeitrahmen für Monitorzustände beträgt 1 Stunde

  • Die Seitengrößenbeschränkungen sind so eingestellt, dass sie die meisten Anwendungsfälle abdecken

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/didlawowo/mcp-collection'

If you have feedback or need assistance with the MCP directory API, please join our Discord server