Splunk的MCP服务器
  ](https://docker.com)    
使AI代理能够通过模型上下文协议(MCP)与Splunk环境无缝交互
将您的Splunk实例转换为AI原生平台。我们的社区驱动的MCP服务器通过20多种工具、16种资源(包括CIM数据模型)和生产就绪安全性,将大型语言模型和Splunk企业/云连接起来,所有这些都是通过一个单一的标准化协议实现的。
🌟 为何这很重要
- 🔌 通用AI连接:一个协议将任何AI连接到Splunk数据
- ⚡ 零定制集成:不再进行数月的自定义API开发
- 🛡️ 生产就绪安全:客户端范围的访问,没有凭据暴露
- 🤖 AI驱动的工作流程:像专家一样工作的智能故障排除代理
- 🤝 社区驱动:带有贡献示例的可扩展框架
🚀 新 AI驱动的故障排除工作流程 -通过专业的人工智能工作流程,将反应式消防转化为智能、系统的问题解决。
📋 目录
- 🤖 人工智能工作流程和专家 - 🔍 搜索和分析 - 📊 数据发现 - 👥 行政 - 🏥 健康监测 - 🛡️ Splunk IT服务智能
- 🛠️ 创建自己的工具和扩展 - 贡献类别
- 发展(地方) - - 企业级(Kubernetes)
🚀 快速开始
先决条件
- Python 3.10+和UV包管理器
- Nodejs(可选用于mcp检查器)
- Docker(可选,但建议用于全栈)
- 具有API访问权限的Splunk实例(或使用附带的Docker Splunk)
📖 完整安装指南: 安装指南
配置
在运行安装程序之前,请配置您的Splunk连接:
# Copy the example configuration
cp env.example .env
# Edit .env with your Splunk credentials
# - Use your existing Splunk instance (local, cloud, or Splunk Cloud)
# - OR use the included Docker Splunk (requires Docker)
# Optional HTTP transport defaults (local runs)
# - Stateless HTTP avoids sticky-session requirements
# - JSON responses improve compatibility with some clients
# These are already the defaults for local runs via `mcp-server --local`
echo "MCP_STATELESS_HTTP=true" >> .env
echo "MCP_JSON_RESPONSE=true" >> .env一个命令设置
窗户:
git clone https://github.com/deslicer/mcp-for-splunk.git
cd mcp-for-splunk
Start the MCP Server (project script)
uv run mcp-server --local --detached
Verify the server
uv run mcp-server --test
Optional: show detailed tools/resources and health output
uv run mcp-server --test --detailed
**macOS/Linux:**
git clone https://github.com/deslicer/mcp-for-splunk.git cd mcp-for-splunk
(Recommended) Preview what would be installed
./scripts/smart-install.sh --dry-run
Install missing prerequisites (base: Python, uv, Git, Node)
./scripts/smart-install.sh
Start the MCP Server (project script)
Local runs default to HTTP stateless mode + JSON response
uv run mcp-server --local --detached
Verify the server
uv run mcp-server --test
Optional: show detailed tools/resources and health output
uv run mcp-server --test --detailed
> **💡 部署选项**:The `mcp-server` 命令将提示您选择:
>
> - **码头工人** (选项1):使用Splunk、Traefik、MCP Inspector的全栈-如果安装了Docker,建议使用
> - **本地** (选项2):仅限轻量级FastMCP服务器-适用于没有Docker的用户
> 停止服务:
>
> - `uv run mcp-server --stop` 仅停止此项目的组合服务(dev/prod/splunk)。它不会停止Docker引擎。
> Splunk许可说明:使用时 `so1` 如果需要,您必须提供自己的Splunk Enterprise许可证。compose文件包括一个带注释的示例挂载:
> `# - ./lic/splunk.lic:/tmp/license/splunk.lic:ro`.创建一个 `lic/` 目录并挂载许可证文件,或在启动后通过Splunk Web UI添加许可证。
## 🎯 你能做什么
### 🤖 **人工智能故障排除** 新
使用MCP服务器端点将Splunk故障排除从手动程序转换为智能、自动化的工作流程:
Discover and execute intelligent troubleshooting workflows
result = await list_workflows.execute(ctx, format_type="summary")
Returns: missing_data_troubleshooting, performance_analysis, custom_workflows...
Run AI-powered troubleshooting with a single command
result = await workflow_runner.execute( ctx=ctx, workflow_id="missing_data_troubleshooting", earliest_time="-24h", latest_time="now", focus_index="main" )
→ Parallel execution, expert analysis, actionable recommendations
**🚀 主要优势:**
- **🧠 自然语言接口**:“排除缺失数据”→ 自动化工作流执行
- **⚡ 并行处理**:多个诊断任务同时运行,以获得更快的解决方案
- **🔧 自定义工作流**:建立特定于组织的故障排除程序
- **📊 智能分析**:AI代理遵循经过验证的Splunk最佳实践
**[📖 阅读完整的AI工作流程指南→](docs/guides/workflows/README.md)** 有关详细示例、工作流创建和高级故障排除技术。
### 🛡️ **ITSI MCP服务器** 新
一个专用的模型上下文协议服务器 **Splunk IT服务智能** 本回购中的船舶 [`mcp_itsi/`](mcp_itsi/README.md),作为PyPI独立发布 **[`mcp-itsi-server`](https://pypi.org/project/mcp-itsi-server/)**。它针对ITSI 4.21,并增加了 **70个工具、9个文档资源和3个工作流提示** 用于管理服务、实体、KPI、剧集、玻璃表、深度挖掘、相关性搜索和聚合策略。
Standalone install
pip install mcp-itsi-server
Together with the parent server
pip install "mcp-server-for-splunk[itsi]"
您可以通过以下两种方式部署它 **相同的能力**:
- **插件** 的 `mcp-for-splunk` --通过自动注册 `mcp_splunk.plugins` Python入口点。一个进程,一个URL,一个凭据集。
- **独立** --它自己的FastMCP HTTP/stdio进程,位于Traefik后面 `/itsi/mcp` (Docker),通过 `mcp-itsi-server` (本地Python),或作为 `mcp_itsi` Docker镜像(任何地方)。
两种模式共享 **根据请求相同 `X-Splunk-*` 标头** 作为父服务器(基本身份验证、承载令牌、splunkd会话令牌),以及可选 `X-ITSI-*` app/user命名空间的覆盖。
**[🚀 ITSI入门→](docs/guides/itsi/getting-started.md)** | **[🏗️ ITSI部署指南→](docs/guides/itsi/deployment.md)** | **[📦 软件包README→](mcp_itsi/README.md)**
## 📚 文档中心
|文档|目的|受众|时间|
|----------|---------|----------|------|
| **[🤖 人工智能故障排除](docs/guides/workflows/README.md)** | **由工作流工具驱动的智能工作流** | **所有用户** | **5分钟** |
| **[入门指南](docs/getting-started/)** |包含先决条件的完整设置指南|新用户|15分钟|
| **[集成指南](docs/guides/integration/)** |连接AI客户端|开发人员|30分钟|
| **[部署指导](docs/guides/deployment/)** |生产部署| DevOps | 45分钟|
| **[工作流程指南](docs/guides/workflows/README.md)** |创建和运行工作流(OpenAI环境变量)|开发人员| 10分钟|
| **[API 参考](docs/reference/tools.md)** |工具文档|集成商|参考|
| **[资源参考](docs/reference/resources.md)** | **访问CIM数据模型和Splunk文档** | **所有用户** | **参考** |
| **[贡献](docs/contrib/contributing.md)** |添加您自己的工具|贡献者| 60分钟|
| **[📖 竞赛指南](contrib/README.md)** | **完整的贡献框架** | **贡献者** | **15分钟** |
| **[建筑](docs/architecture/)** |技术深度挖掘|建筑师|参考|
| **[测试快速开始](docs/tests.md)** |首次成功测试步骤|开发人员| 2分钟|
| **[插件](docs/guides/plugins.md)** |使用入口点插件(单独包)进行扩展|集成器| 5分钟|
| **[ITSI MCP服务器(入门)](docs/guides/itsi/getting-started.md)** |15分钟内从零到工作ITSI MCP服务器| ITSI用户|15分钟|
| **[ITSI MCP服务器(部署)](docs/guides/itsi/deployment.md)** |独立与插件、Docker、扩展、安全|DevOps/Splunk管理员|20分钟|
## 🔧 可用工具和功能
### 🤖 **人工智能工作流程和专家** 新
- **`list_workflows`**:发现可用的故障排除工作流程(核心+控制)
- **`workflow_runner`**:执行任何具有完整参数控制和进度跟踪的工作流
- **`workflow_builder`**:为您的组织创建自定义故障排除程序
- **内置工作流**:缺失数据故障排除、性能分析等
- **[📖 完整的工作流程指南→](docs/guides/workflows/README.md)**
### 🔍 搜索和分析
- **智能搜索**:自然语言到SPL的转换
- **实时搜索**:后台作业管理和进度跟踪
- **保存的搜索**:创建、执行和管理搜索自动化
### 📊 数据发现
- **元数据探索**:发现索引、源和源类型
- **模式分析**:了解您的数据结构
- **使用模式**:确定数据量和访问模式
### 👥 行政
- **应用程序管理**:列出、启用、禁用Splunk应用程序
- **用户管理**:全面的用户和角色管理
- **配置访问**:阅读并分析Splunk配置
### 🏥 健康监测
- **系统健康**:监控Splunk基础架构状态
- **劣化特征检测**:主动发现问题
- **警报管理**:跟踪和分析触发的警报
### 🛡️ Splunk IT服务智能(ITSI)——新增功能!
同伴 `mcp_itsi` 服务器(独立或插件-请参阅 [🛡️ ITSI MCP服务器](#itsi-mcp-server-new))添加 **70个ITSI专用工具**:
- **服务洞察**:服务、服务模板、KPI基础搜索、KPI阈值模板、玻璃表、深入挖掘、主页视图——完整的CRUD+ `itsi_count_services` 和 `itsi_templatize_service`.
- **实体集成**:实体、实体类型、别名库存;带有记录的模式怪癖的完整CRUD(别名字段也必须位于文档根)。
- **事件分析**:值得注意的事件 `itsi_acknowledge_notable_event` / `itsi_close_notable_event` 快捷方式,以及聚合策略和相关性搜索的完整CRUD。
- **团队、维护窗口、支持的对象类型和捆绑文档** 作为 `itsi_*` 工具和 `itsi://docs/` 资源。
**[📦 浏览ITSI工具目录→](mcp_itsi/README.md#capabilities-at-a-glance)**
## 🌐 客户端集成示例
**💪 多客户端配置强度**:这款用于Splunk的MCP服务器的关键优势之一是它能够同时支持多个客户端配置。您可以运行单个服务器实例,并使用不同的Splunk环境、凭据和配置连接多个客户端,而无需重新启动服务器或管理单独的进程。
### 🔄 多客户利益
**基于会话的隔离**:每个客户端连接都通过独立的身份验证维护自己的Splunk会话,防止不同用户或环境之间的凭据冲突。
**动态配置**:只需更改标头,即可在Splunk实例(本地、云、开发、生产)之间切换,无需重新启动服务器。
**可扩展体系结构**:单个服务器可以处理多个并发客户端,每个客户端都有自己的Splunk上下文,这使其成为团队环境、CI/CD管道和多租户部署的理想选择。
**资源效率**:无需为每个Splunk环境运行单独的MCP服务器实例,从而减少了资源消耗和管理开销。
### 光标IDE
## 单身租户
{ "mcpServers": { "splunk": { "command": "fastmcp", "args": ["run", "/path/to/src/server.py"], "env": { "MCP_SPLUNK_HOST": "your-splunk.com", "MCP_SPLUNK_USERNAME": "your-user" } } } }
## 客户指定租户
{ "mcpServers": { "splunk-in-docker": { "url": "http://localhost:8002/mcp/", "headers": { "X-Splunk-Host": "so1", "X-Splunk-Port": "8089", "X-Splunk-Username": "admin", "X-Splunk-Password": "Chang3d!", "X-Splunk-Scheme": "http", "X-Splunk-Verify-SSL": "false", "X-Session-ID": "splunk-in-docker-session" } }, "splunk-cloud-instance": { "url": "http://localhost:8002/mcp/", "headers": { "X-Splunk-Host": "myorg.splunkcloud.com", "X-Splunk-Port": "8089", "X-Splunk-Username": "admin@myorg.com", "X-Splunk-Password": "Chang3d!Cloud", "X-Splunk-Scheme": "https", "X-Splunk-Verify-SSL": "true", "X-Session-ID": "splunk-cloud-session" } } } }
### 谷歌代理开发工具包
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
splunk_agent = LlmAgent( model='gemini-2.0-flash', tools=[MCPToolset(connection_params=StdioServerParameters( command='fastmcp', args=['run', '/path/to/src/server.py'] ))] )
## 🤝 社区与贡献
快速链接: [贡献](CONTRIBUTING.md) · [行为准则](CODE_OF_CONDUCT.md) · [安全策略](SECURITY.md) · [治理](GOVERNANCE.md) · [许可证](LICENSE)
### 🛠️ **创建自己的工具和扩展**
**🚀 贡献者快速入门:**
Interactive tool generator (project script)
uv run generate-tool
Browse existing tools for inspiration
./contrib/scripts/list_tools.py
Validate your tool implementation (project script)
uv run validate-tools
Test your contribution
./contrib/scripts/test_contrib.py
**[📖 完整贡献指南→](contrib/README.md)** -关于为Splunk的MCP服务器创建工具、资源和工作流,您需要知道的一切。
### **贡献类别**
- **🛡️ 安全工具**:威胁搜寻、事件响应、安全分析
- **⚙️ DevOps工具**:监控、警报、操作、SRE工作流程
- **📈 分析工具**:商业智能、报告、数据分析
- **💡 示例工具**:新贡献者的学习模板和模式
- **🔧 自定义工作流**:为您的组织提供AI驱动的故障排除程序
## 🚀 部署选项
### 发展(地方)
- **启动时间**:约10秒
- **资源使用**:最小(单个Python进程)
- **最适合**:开发、测试、基于stdio的AI客户端
- **HTTP默认值**:启用本地运行 `MCP_STATELESS_HTTP=true` 和 `MCP_JSON_RESPONSE=true` 默认情况下,为了与官方MCP客户端兼容(没有粘性会话;JSON over SSE)。
- 端点: `http://localhost:8003/mcp/`
- 所需的客户端标头:
- `Accept: application/json, text/event-stream`
- `MCP-Session-ID: ` (首选; `X-Session-ID` 可选)
- `X-Splunk-*` 标头(主机、端口、用户名、密码、方案、验证ssl)或通过设置 `.env`
### 生产(Docker)
- **特性**:负载平衡、健康检查、监控
- **包含**:Traefik、MCP检查器、可选Splunk
- **最适合**:多客户端访问,基于网络的人工智能代理
- **会话路由**:Traefik配置了可流式传输HTTP的粘性会话;或者,为开发场景启用无状态HTTP。
### 企业级(Kubernetes)
- **可扩展性**:横向扩展,高可用性
- **安全**:Pod级隔离,秘密管理
- **监控**:全面的可观察性堆栈
### ITSI MCP服务器
- **插件模式**:自动加载到 `mcp-for-splunk` 通过 `mcp_splunk.plugins` 入口点——单个进程,单个URL。
- **单机模式**:Traefik后面的专用FastMCP容器 `/itsi/mcp`,或 `mcp-itsi-server` 本地Python的控制台脚本,或 `mcp_itsi` 适用于任何编排器的Docker镜像。
- **身份验证奇偶校验**:相同 `X-Splunk-*` headers作为父服务器;可选的 `X-ITSI-App` / `X-ITSI-User-NS` / `X-ITSI-API-Version` 用于ITSI特定的命名空间。
- **验证**: `uv run python scripts/test_itsi_mcp_both_modes.py` 对任何实时ITSI集群进行端到端的两种模式练习。
**[📖 完整的ITSI部署指南→](docs/guides/itsi/deployment.md)**
## 🆘 支持与社区
- **🐛 问题**:
- **💬 讨论**:
- **📖 文档**:完整的指南和参考资料
- **🔧 交互式测试**:用于实时测试的MCP检查器
### Windows支持
Windows用户通过PowerShell脚本和全面的故障排除指南获得一流的支持。查看我们的 [Windows安装指南](docs/WINDOWS_GUIDE.md).
## 📈 项目统计
- ✅ **20+生产工具** -Splunk全面运营
- ✅ **16丰富的资源** -系统信息、文档和CIM数据模型
- ✅ **综合测试套件** -170多项本地测试通过
- ✅ **多平台** -Windows、macOS、Linux支持
- ✅ **社区准备就绪** -结构化贡献框架
- ✅ **企业认证** -生产部署模式
______________________________________________________________________
## 🎯 准备好开始了吗?
选择你的冒险:
- **🚀 [快速开始](docs/getting-started/)** -15分钟后开始跑步
- **💻 [集成示例](docs/guides/integration/)** -连接您的AI工具
- **🏗️ [架构指南](docs/architecture/)** -了解系统
- **🤝 [贡献](docs/contrib/contributing.md)** -添加您自己的工具
**了解更多**: [模型上下文协议](https://modelcontextprotocol.io/) | [FastMCP框架](https://gofastmcp.com/)