Token导航 LogoToken导航TokenDH.com
Splunk MCP logo
搜索检索stdio官方级别未说明来源级核验

Splunk MCP

MCP Server

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

工具数

0

提示词数

0

GitHub Stars

104

资源数

0
PythonClaude自然语言处理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

livehybrid

提供方

livehybrid

最后核验

2026/5/17 20:29

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run python splunk_mcp.py

详细介绍

Splunk MCP(模型上下文协议)工具

基于FastMCP的工具,用于通过自然语言与Splunk Enterprise/Cloud进行交互。该工具提供了一组功能,用于搜索Splunk数据、管理KV存储和通过直观的界面访问Splunk资源。

操作模式

该工具在三种模式下运行:

  1. SSE模式 (默认)

- 基于服务器发送事件的通信 - 实时双向交互 - 适用于基于web的MCP客户端 - 未提供参数时的默认模式 - 通过以下方式访问 /sse 端点

  1. API模式

- RESTful API端点 - 通过以下方式访问 /api/v1 端点前缀 - 从开始 python splunk_mcp.py api

  1. STDIO模式

- 基于标准输入/输出的通信 - 与Claude Desktop和其他MCP客户端兼容 - 非常适合与AI助手直接集成 - 从开始 python splunk_mcp.py stdio

特性

  • Splunk搜索:使用自然语言查询执行Splunk搜索
  • 索引管理:列出并检查Splunk索引
  • 用户管理:查看和管理Splunk用户
  • KV门店运营:创建、列出和管理KV商店收藏
  • 异步支持:使用async/await模式构建,以获得更好的性能
  • 详细日志记录:使用表情符号指示器进行全面日志记录,以提高可见性
  • SSL配置:针对不同安全要求的灵活SSL验证选项
  • 增强调试:用于故障排除的详细连接和错误记录
  • 综合测试:涵盖所有主要功能的单元测试
  • 错误处理:具有适当状态代码的稳健错误处理
  • SSE合规性:完全符合MCP SSE规范

可用的MCP工具

以下工具可通过MCP接口使用:

工具管理

  • list_tools

- 列出所有可用的MCP工具及其描述和参数

健康检查

  • 健康检查

- 返回可用Splunk应用程序的列表以验证连接

- 验证MCP服务器是否活动的简单ping端点

用户管理

  • 当前用户

- 返回有关当前已验证用户的信息

  • list_users

- 返回所有用户及其角色的列表

索引管理

  • list_index

- 返回所有可访问的Splunk索引的列表

  • get_index_info

- 返回特定索引的详细信息 - 参数:index_name(字符串)

  • 索引和来源类型

- 返回索引及其源类型的完整列表

搜索

  • 搜索_插件

- 执行Splunk搜索查询 - 参数: - search_query(字符串):Splunk搜索字符串 - earliest_time(字符串,可选):搜索窗口的开始时间 - latest_time(字符串,可选):搜索窗口的结束时间 - max_results(整数,可选):返回的最大结果数

  • list_saved_search

- 返回Splunk实例中已保存的搜索列表

KV商店

  • list_kvstore_collections

- 列出所有KV商店收藏

  • create_kvstore_collection

- 创建新的KV商店集合 - 参数:collection_name(字符串)

  • 删除库集合

- 删除现有的KV存储集合 - 参数:collection_name(字符串)

SSE 端点

在SSE模式下运行时,以下端点可用:

  • /zh:以文本/事件流格式返回SSE连接信息

- 提供有关SSE连接的元数据 - 包括消息端点的URL - 提供协议和能力信息

  • /sse/消息:主SSE流端点

- 流式传输心跳等系统事件 - 保持持久连接 - 发送格式正确的SSE事件

  • /zh/健康:SSE模式的健康检查端点

- 以SSE格式返回状态和版本信息

错误处理

MCP实现包括一致的错误处理:

  • 无效的搜索命令或格式错误的请求
  • 权限不足
  • 资源未找到
  • 输入验证无效
  • 意外的服务器错误
  • Splunk服务器的连接问题

所有错误响应都包含解释错误的详细消息。

安装

使用紫外线(推荐)

UV是一个用Rust编写的快速Python包安装程序和解析器。它比pip快得多,并提供了更好的依赖性解决方案。

先决条件

UV快速入门

  1. 克隆存储库:
   git clone 
   cd splunk-mcp
  1. 使用UV安装依赖项:
   # Install main dependencies
   uv sync

   # Or install with development dependencies
   uv sync --extra dev
  1. 运行应用程序:
   # SSE mode (default)
   uv run python splunk_mcp.py

   # STDIO mode
   uv run python splunk_mcp.py stdio

   # API mode
   uv run python splunk_mcp.py api

UV命令参考

# Install dependencies
uv sync

# Install with development dependencies
uv sync --extra dev

# Run the application
uv run python splunk_mcp.py

# Run tests
uv run pytest

# Run with specific Python version
uv run --python 3.11 python splunk_mcp.py

# Add a new dependency
uv add fastapi

# Add a development dependency
uv add --dev pytest

# Update dependencies
uv sync --upgrade

# Generate requirements.txt
uv pip compile pyproject.toml -o requirements.txt

使用诗歌(替代)

如果你喜欢诗歌,你仍然可以使用它:

# Install dependencies
poetry install

# Run the application
poetry run python splunk_mcp.py

使用pip(替代)

# Install dependencies
pip install -r requirements.txt

# Run the application
python splunk_mcp.py

操作模式

该工具在三种模式下运行:

  1. SSE模式 (默认)

- 基于服务器发送事件的通信 - 实时双向交互 - 适用于基于web的MCP客户端 - 未提供参数时的默认模式 - 通过以下方式访问 /sse 端点

  1. API模式

- RESTful API端点 - 通过以下方式访问 /api/v1 端点前缀 - 从开始 python splunk_mcp.py api

  1. STDIO模式

- 基于标准输入/输出的通信 - 与Claude Desktop和其他MCP客户端兼容 - 非常适合与AI助手直接集成 - 从开始 python splunk_mcp.py stdio

用法

本地使用

该工具可以在三种模式下运行:

  1. SSE模式(MCP客户端的默认模式):
# Start in SSE mode (default)
poetry run python splunk_mcp.py
# or explicitly:
poetry run python splunk_mcp.py sse

# Use uvicorn directly:
SERVER_MODE=api poetry run uvicorn splunk_mcp:app --host 0.0.0.0 --port 8000 --reload
  1. STDIO模式:
poetry run python splunk_mcp.py stdio

Docker使用

该项目同时支持新 docker compose (V2)和遗产 docker-compose (V1)命令。下面的示例使用V2语法,但两者都受支持。

  1. SSE模式(默认):
docker compose up -d mcp
  1. API模式:
docker compose run --rm mcp python splunk_mcp.py api
  1. STDIO模式:
docker compose run -i --rm mcp python splunk_mcp.py stdio

使用Docker进行测试

该项目包括Docker中的专用测试环境:

  1. 运行所有测试:
./run_tests.sh --docker
  1. 运行特定的测试组件:
# Run only the MCP server
docker compose up -d mcp

# Run only the test container
docker compose up test

# Run both with test results
docker compose up --abort-on-container-exit

测试结果将在 ./test-results 目录。

Docker开发技巧

  1. 建筑图片:
# Build both images
docker compose build

# Build specific service
docker compose build mcp
docker compose build test
  1. 查看日志:
# View all logs
docker compose logs

# Follow specific service logs
docker compose logs -f mcp
  1. 调试:
# Run with debug mode
DEBUG=true docker compose up mcp

# Access container shell
docker compose exec mcp /bin/bash

注意:如果您使用的是Docker Compose V1,请替换 docker compose 随着 docker-compose 在上述命令中。

安全说明

  1. 环境变量:
  • 永不承诺 .env 文件
  • 使用 .env.example 作为模板
  • 考虑在生产环境中使用Docker secrets
  1. SSL验证:
  • VERIFY_SSL=true 推荐用于生产
  • 可以禁用以进行开发/测试
  • 通过环境变量进行配置
  1. 港口暴露:
  • 仅暴露必要的端口
  • 尽可能使用内部Docker网络
  • 考虑生产中的网络安全

环境变量

配置以下环境变量:

  • SPLUNK_HOST:您的Splunk主机地址
  • SPLUNK_PORT:Splunk管理端口(默认值:8089)
  • SPLUNK_USERNAME:您的Splunk用户名
  • SPLUNK_PASSWORD:您的Splunk密码
  • SPLUNK_TOKEN:(可选)Splunk身份验证令牌。如果已设置,则将使用此选项而不是用户名/密码。
  • SPLUNK_SCHEME:连接方案(默认:https)
  • VERIFY_SSL:启用/禁用SSL验证(默认值:true)
  • FASTMCP_LOG_LEVEL:日志记录级别(默认值:INFO)
  • SERVER_MODE:使用uvicorn时的服务器模式(sse、api、stdio)

SSL配置

该工具提供灵活的SSL验证选项:

  1. 默认(安全)模式:
VERIFY_SSL=true
  • 完整SSL证书验证
  • 已启用主机名验证
  • 建议用于生产环境
  1. 放松模式:
VERIFY_SSL=false
  • SSL证书验证已禁用
  • 主机名验证已禁用
  • 适用于测试或自签名证书

测试

该项目包括使用pytest的全面测试覆盖和使用自定义MCP客户端的端到端测试:

运行测试

基本测试执行:

poetry run pytest

通过覆盖报告:

poetry run pytest --cov=splunk_mcp

目录标签

目录标签

PythonClaude自然语言处理Splunk交互本地部署数据搜索KV存储管理Splunk资源访问

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP