项目简介

本项目是一个 Model Context Protocol (MCP) 服务器,它与 Datadog 集成,使得大型语言模型 (LLM) 如 Claude 能够检索和分析来自您 Datadog 中管理的 Kubernetes 集群和命名空间的日志。通过使用此服务器,您可以让 Claude 基于您的 Datadog 日志提供洞察和信息。

主要功能点

  • 日志检索:从 Datadog 中检索指定 Kubernetes 集群和命名空间的日志。
  • MCP 服务器:实现了 Model Context Protocol,允许 LLM 与 Datadog 数据交互。
  • 资源和工具定义:定义了一个 "logs" 资源和一个 "get_logs" 工具,用于访问 Datadog 日志。
  • 与 Claude 集成:设计用于与 Claude Desktop 应用程序协同工作,允许您通过 Claude 查询 Datadog 日志。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/sqr/datadog-mcp.git
    cd datadog-mcp
  2. 构建应用:
    npm install
    npm run build

服务器配置

要将此 MCP 服务器连接到您的 Claude Desktop 应用程序,您需要在 Claude 的配置文件中进行配置。找到并编辑 'claude_desktop_config.json' 文件。文件路径通常为:

  • macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%\Claude\claude_desktop_config.json'
  • Linux: '~/.config/Claude/claude_desktop_config.json'

在 '"mcpServers"' 部分添加以下 JSON 配置。 请务必将占位符替换为您的实际值。

{
  "mcpServers": {
     "datadog-mcp": {
        "command": "/path/to/your/node",  // Node.js 可执行文件的路径 (例如, /usr/bin/node,或者如果使用 nvm,则为完整路径)
        "args": [
          "/path/to/datadog-mcp/build/index.js" // 构建后的服务器 index.js 文件的路径
        ],
        "env": {
          "DD_API_KEY": "<YOUR_DATADOG_API_KEY>",  // 您的 Datadog API 密钥
          "DD_APP_KEY": "<YOUR_DATADOG_APP_KEY>"   // 您的 Datadog 应用程序密钥
        }
     }
  }
}

注意:

  • Node.js 路径: 确保 'command' 路径指向您的 Node.js 可执行文件。如果 'node' 在您的系统 PATH 中,您可以直接使用 '"command": "node"'。 如果您使用版本管理器(如 'nvm'),您可能需要提供完整路径,如 README 中的示例所示。
  • 仓库路径: 更新 'args' 路径为 'datadog-mcp' 仓库在您系统上的实际位置。
  • Datadog API 密钥: 您需要获取具有读取日志权限的 Datadog API 密钥和应用程序密钥,并将 '<YOUR_DATADOG_API_KEY>' 和 '<YOUR_DATADOG_APP_KEY>' 替换为您的实际密钥。

基本使用方法

  1. 启动 Claude Desktop: 打开 Claude Desktop 应用程序。
  2. 验证 MCP 服务器连接: 在 Claude 聊天窗口中,查看右下角是否有锤子图标 🔨。悬停在其上应显示 "1 MCP tool available",确认服务器已连接。
  3. 向 Claude 询问 Datadog 日志: 现在您可以向 Claude 询问关于 Datadog 日志的问题。例如:
    What insights can you give me about datadog logs in the cluster <cluster_name> and namespace <namespace_name>?
    将 '<cluster_name>' 和 '<namespace_name>' 替换为您感兴趣的特定集群和命名空间。Claude 将使用 'get_logs' 工具从 Datadog 获取日志并为您提供分析。

信息

分类

开发者工具