Kibana

Kibana

🚀 Kibana MCP 服务器

Kibana MCP 服务器允许任何 MCP 兼容客户端(如 Claude Desktop)通过自然语言或程序化请求访问您的 Kibana 实例,基于官方 Elastic Kibana API 文档,使用 Elastic Stack 8.x (ES8) 的 OpenAPI YAML 规范动态获取和管理所有 Kibana API 端点。

🚀 快速开始

构建项目

npm install

启动服务器

node dist/index.js

配置 MCP 服务器

claude_desktop_config.json 中添加以下内容:

{
"mcpServers": {
"kibana-mcp-server": {
"command": "node",
"args": ["./path/to/mcp-server-kibana/dist/index.js"],
"env": {
"KIBANA_URL": "http://your-kibana-server:5601",
"KIBANA_USERNAME": "your-username",
"KIBANA_PASSWORD": "your-password",
"NODE_TLS_REJECT_UNAUTHORIZED": "0"
}
}
}
}

✨ 主要特性

  • 动态 API 管理:使用 OpenAPI 规范动态获取和管理所有 Kibana API 端点。
  • 兼容性:支持与 Claude Desktop 等工具集成,提供基于工具和基于资源两种交互模式。
  • 安全性:支持身份验证和权限控制,确保安全访问 Kibana 实例。

📦 安装指南

安装依赖

npm install

构建服务器

npm run build

自动重建(开发模式)

npm run watch

💻 使用示例

基础用法

以下是一些示例查询:

  • "我的 Kibana 服务器状态如何?"
  • "列出所有可用的 Kibana API 端点。"
  • "显示 POST /api/saved_objects/_find 端点的详细信息。"
  • "执行自定义 API 请求以获取 /api/status 的内容。"
  • "获取所有 Kibana 仪表板的列表。"
  • "查询与端点事件相关的 API 端点。"
  • "列出所有与案例相关的 API 端点。"
  • "在 Kibana 中创建新案例。"
  • "在 Kibana 中创建新仪表板。"

高级用法

基于工具的提示模式

  • 工作原理:Claude Desktop 可以直接调用服务器工具(如 get_statusexecute_apisearch_kibana_api_paths 等)来回答问题或执行操作。
  • 适用场景:用户希望获得对话式、引导型体验。服务器将自动搜索、执行并解释 Kibana API。
  • 示例:"显示所有与已保存对象相关的 Kibana API 端点。"

基于资源的提示模式

  • 工作原理:Claude Desktop 通过资源 URI(如 kibana-api://pathskibana-api://path/GET/%2Fapi%2Fstatus)与服务器交互,服务器返回结构化数据供 Claude 解析。
  • 适用场景:高级用户、仅支持资源访问的 MCP 客户端或需要原始 API 元数据的编程场景。

📚 详细文档

API 规范

该项目基于官方 Elastic Kibana API 文档,并使用 Elastic Stack 8.x (ES8) 的 OpenAPI YAML 规范动态获取和管理所有 Kibana API 端点。有关最新细节,请参阅 Kibana API 文档

开发

依赖安装

npm install

项目构建

npm run build

自动重建(开发模式)

npm run watch

调试

由于 MCP 服务器通过标准输入输出进行通信,调试可能不太方便。推荐使用 MCP Inspector:

npm run inspector

启动后,Inspector 会提供一个可通过浏览器访问的调试工具 URL。

社区

该项目由社区维护。欢迎贡献和反馈!请在所有交流中保持尊重和包容,并遵守 Elastic Community Code of Conduct

故障排除

  • 检查 MCP 配置是否正确。
  • 确保 Kibana 地址可以访问。
  • 验证身份验证凭据是否有足够的权限。
  • 如果使用自定义 CA,确保证书路径正确且可读。
  • 如果使用 NODE_TLS_REJECT_UNAUTHORIZED=0,注意安全风险。
  • 检查终端输出的错误信息。

📄 许可证

该项目 licensed under the Apache License 2.0。请参阅 LICENSE 文件获取详细信息。

⚠️ 重要提示 该项目由社区维护,并非 Elastic 或 MCP 的官方产品。

💡 使用建议 在使用 NODE_TLS_REJECT_UNAUTHORIZED=0 时,要特别注意安全风险。

  • 0 关注
  • 0 收藏,26 浏览
  • system 提出于 2025-10-06 16:21

相似服务问题

相关AI产品