使用说明

项目简介

Splunk MCP Server 是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在连接 Splunk Enterprise/Cloud 与大型语言模型 (LLM)。它允许 LLM 通过标准化的 MCP 协议,以自然语言的方式访问和操作 Splunk 中的数据和功能,例如执行搜索、管理索引和用户等。

主要功能点

  • Splunk 数据搜索: 使用自然语言查询执行 Splunk 搜索。
  • 索引管理: 列出和查看 Splunk 索引信息。
  • 用户管理: 查看和管理 Splunk 用户。
  • KV 存储操作: 管理 Splunk KV 存储集合。
  • 多种运行模式: 支持 SSE, API, STDIO 三种模式,适应不同的 LLM 客户端集成需求。

安装步骤

  1. 克隆仓库:将 GitHub 仓库 'splunk-mcp' 克隆到本地。
  2. 安装依赖:确保已安装 Poetry,然后在仓库根目录下运行 'poetry install' 安装项目依赖。
  3. 配置环境:复制 '.env.example' 文件为 '.env',并根据你的 Splunk 环境配置以下参数:
    • 'SPLUNK_HOST': Splunk 主机地址
    • 'SPLUNK_PORT': Splunk 管理端口 (默认为 8089)
    • 'SPLUNK_USERNAME': Splunk 用户名
    • 'SPLUNK_PASSWORD': Splunk 密码
    • 'SPLUNK_SCHEME': 连接协议 (默认为 https)
    • 'VERIFY_SSL': 是否验证 SSL 证书 (默认为 true)

服务器配置 (MCP 客户端)

以下是一个 MCP 客户端(例如 Claude Desktop)的配置示例,用于连接 Splunk MCP Server。你需要配置 MCP 服务器的启动命令和参数,以便客户端能够与之建立连接并使用其提供的 Splunk 功能。

{
  "splunk_mcp": {
    "command": "poetry",
    "args": ["run", "python", "splunk_mcp.py", "stdio"],
    "env": {
      "SPLUNK_HOST": "your_splunk_host", // 替换为你的 Splunk 主机地址
      "SPLUNK_PORT": "8089",             // Splunk 管理端口
      "SPLUNK_USERNAME": "your_splunk_username", // Splunk 用户名
      "SPLUNK_PASSWORD": "your_splunk_password", // Splunk 密码
      "SPLUNK_SCHEME": "https",           // 连接协议,http 或 https
      "VERIFY_SSL": "true"             // 是否验证 SSL 证书,true 或 false
    }
  }
}

配置说明:

  • '"splunk_mcp"': 服务器名称,可以自定义。
  • '"command": "poetry"': 启动服务器的命令,这里使用 poetry 运行 Python 脚本。
  • '"args": [...]': 传递给 'poetry run' 命令的参数,包括运行 Python 脚本和指定 STDIO 模式。
  • '"env": {...}': 可选的环境变量配置,用于设置 Splunk 连接信息。请根据你的 Splunk 环境填写 'SPLUNK_HOST', 'SPLUNK_PORT', 'SPLUNK_USERNAME', 'SPLUNK_PASSWORD', 'SPLUNK_SCHEME', 'VERIFY_SSL' 等参数。

基本使用方法

配置完成后,启动 MCP 客户端,客户端将通过 STDIO 模式与 Splunk MCP Server 建立连接。你可以在客户端中使用自然语言指令来查询和操作 Splunk 数据。例如,在 Claude 中,你可以提问:

  • "Splunk 中有哪些索引可用?"
  • "搜索 Splunk 最近 24 小时内的错误日志。"
  • "列出所有 Splunk 用户。"

客户端会将这些自然语言指令转换为 MCP 请求发送给 Splunk MCP Server,服务器执行相应的 Splunk 操作后,将结果返回给客户端。

信息

分类

数据库与文件