返回 MCP 目录
public公开dns本地运行

splunk-mcp

一个基于FastMCP的工具,通过自然语言与Splunk Enterprise/Cloud交互,提供搜索、KV存储管理和资源访问功能。

article

README

🚀 Splunk MCP框架使用指南

本指南将详细介绍如何使用Splunk MCP框架,该框架提供了灵活的配置选项和多种运行模式,可快速接入Splunk服务,还支持与Claude Desktop无缝集成。

🚀 快速开始

要使用Splunk MCP框架,您需要先完成安装和配置,然后根据需求选择合适的运行模式。

📦 安装指南

1. 安装依赖

运行以下命令安装所需依赖:

pip install python-splunk-sdk python-decouple starlette asyncstdlib

2. 配置文件

创建并编辑配置文件 config.ini,填写如下信息:

[SPLUNK]
host = 您的Splunk主机地址
port = 端口,默认为8089
username = Splunk用户名
password = Splunk密码
scheme = 协议,可选http或https,默认为https
verify_ssl = 是否验证SSL证书,值为truefalse

[MCP]
mode = 模式,可选sae或stdio,默认为sae
port = MCP服务监听的端口,默认为8001

✨ 主要特性

  • 多种运行模式:支持SSE模式(推荐生产环境)和STDIO模式(适合开发测试)。
  • 灵活配置:可通过配置文件轻松调整基本配置和日志配置。
  • 无缝集成:支持与Claude Desktop集成。

💻 使用示例

基础用法

列出可用索引

$ poetry run python splunk_mcp.py stdio
> |indices
{
    "result": [
        "default",
        "index_1",
        "search"
    ],
    "success": true,
    "message": ""
}

搜索事件

$ poetry run python splunk_mcp.py stdio
> search index=_internal | stats count
{
    "result": [
        {
            "count": 12345
        }
    ],
    "success": true,
    "message": ""
}

📚 详细文档

运行模式说明

1. SSE模式(推荐生产环境)

poetry run python splunk_mcp.py sae
  • 启动后可通过/sse接口连接,接收实时事件流。

2. STDIO模式(适合开发测试)

poetry run python splunk_mcp.py stdio
  • 输入查询命令,输出结果:
    $ poetry run python splunk_mcp.py stdio
    > |indices
    {
      "result": [
        "default",
        "index_1",
        "search"
      ],
      "success": true,
      "message": ""
    }
    

配置参数说明

基本配置

  • host: Splunk HEC地址,默认为localhost
  • port: 监听端口,默认8001
  • mode: 运行模式,可选sae或stdio

日志配置

  • log_level: 日志级别,默认为info
  • log_file: 日志文件路径,不设置则输出到控制台

🔧 技术细节

故障排除

连接问题

  • 检查网络连通性,确认Splunk服务已启动且端口开放
  • 查看日志文件,获取更多错误信息

认证问题

  • 确认用户名和密码正确无误
  • 检查用户权限是否足够

集成Claude Desktop

编辑Claude配置文件 claude_desktop_config.json,添加如下内容:

{
    "splunk": {
        "host": "localhost",
        "port": 8089,
        "username": "admin",
        "password": "password",
        "mode": "stdio"
    }
}

测试指南

单元测试

运行以下命令执行单元测试:

pytest tests/

集成测试

在集成环境中运行端到端测试,确保各模块协同工作正常。

📄 许可证

文档未提及许可证相关信息。

总结:该框架提供灵活的配置选项和多种运行模式,适用于不同的使用场景。通过简单的配置即可快速接入Splunk服务,并支持与Claude Desktop无缝集成。如需更多帮助,请参考官方文档或联系技术支持团队。

即贴即用配置

MCP 客户端配置生成器

选择客户端,补齐所需环境变量,再复制根据当前 MCP 公开配置生成的完整文件

terminal
环境变量lock填写内容仅保留在当前浏览器标签页,不会上传或保存
Claude Desktop
{
  "mcpServers": {
    "splunk": {
      "command": "poetry",
      "args": [
        "--directory",
        "/path/to/splunk-mcp",
        "run",
        "python",
        "splunk_mcp.py",
        "stdio"
      ],
      "env": {
        "SPLUNK_HOST": "your_splunk_host",
        "SPLUNK_PORT": "8089",
        "SPLUNK_USERNAME": "your_username",
        "SPLUNK_PASSWORD": "your_password",
        "SPLUNK_SCHEME": "https",
        "VERIFY_SSL": "false"
      }
    }
  }
}
建议保存到claude_desktop_config.json
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端