kibana
Kibana MCP Server with dynamic API discovery and comprehensive Elastic Stack integration
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"@tocharianou/mcp-server-kibana": {
"args": [
"@tocharianou/mcp-server-kibana@0.7.3"
],
"command": "npx"
}
}
}
可用工具 (5 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
tavily_search 14 个参数 需填 1 项
Search the web for current information on any topic. Use for news, facts, or data beyond your knowledge cutoff. Returns snippets and source URLs.
必填参数:query
tavily_extract 6 个参数 需填 1 项
Extract content from URLs. Returns raw page content in markdown or text format.
必填参数:urls
tavily_crawl 11 个参数 需填 1 项
Crawl a website starting from a URL. Extracts content from pages with configurable depth and breadth.
必填参数:url
tavily_map 8 个参数 需填 1 项
Map a website's structure. Returns a list of URLs found starting from the base URL.
必填参数:url
tavily_research 2 个参数 需填 1 项
Perform comprehensive research on a given topic or question. Use this tool when you need to gather information from multiple sources to answer a question or complete a task. Returns a detailed response based on the research findings.
必填参数:input
服务介绍
Kibana MCP Server
A Kibana MCP server implementation that allows any MCP-compatible client (such as Claude Desktop) to access your Kibana instance via natural language or programmatic requests.
This project is based on the official Elastic Kibana API documentation and uses the OpenAPI YAML specification from Elastic Stack 8.x. For details, see the Kibana API documentation.
This project is community-maintained and is not an official product of Elastic or MCP.
💡 Companion Project: For complete Elastic Stack integration, pair this with Elasticsearch MCP Server for direct Elasticsearch data operations.
# 🚀 Installation
# Global installation (recommended)
npm install -g @tocharianou/mcp-server-kibana
# Or use directly with npx
npx @tocharianou/mcp-server-kibana
# # From Source
git clone https://github.com/TocharianOU/mcp-server-kibana.git
cd mcp-server-kibana
npm install && npm run build
# 🎯 Quick Start
# # Claude Desktop Integration (Recommended)
Add to your Claude Desktop configuration file:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"kibana": {
"command": "npx",
"args": ["@tocharianou/mcp-server-kibana"],
"env": {
"KIBANA_URL": "http://your-kibana-server:5601",
"KIBANA_API_KEY": "your-api-key",
"KIBANA_DEFAULT_SPACE": "default"
}
}
}
}
# # Direct CLI Usage
# Using API Key (recommended)
KIBANA_URL=http://localhost:5601 \
KIBANA_API_KEY=your-api-key \
npx @tocharianou/mcp-server-kibana
# Using Basic Auth
KIBANA_URL=http://localhost:5601 \
KIBANA_USERNAME=your-username \
KIBANA_PASSWORD=your-password \
npx @tocharianou/mcp-server-kibana
# Using Cookie Auth
KIBANA_URL=http://localhost:5601 \
KIBANA_COOKIES="sid=xxx; security-session=yyy" \
npx @tocharianou/mcp-server-kibana
# # HTTP Mode (Remote Access)
MCP_TRANSPORT=http \
MCP_HTTP_PORT=3000 \
KIBANA_URL=http://localhost:5601 \
KIBANA_API_KEY=your-api-key \
npx @tocharianou/mcp-server-kibana
Access at: http://localhost:3000/mcp
Health check: http://localhost:3000/health
# ✨ Features
# # Core Capabilities
- Dual transport modes: Stdio (local) and HTTP (remote access)
- Multiple authentication methods: API Key, Basic Auth, Cookie-based
- Multi-space support: Enterprise-ready Kibana space management
- SSL/TLS support: Custom CA certificate configuration
- Session management: Automatic UUID generation for HTTP mode
- Dynamic API discovery: Based on official Kibana OpenAPI specification
# # Saved Objects Management
- Complete CRUD operations for all Kibana saved object types
- Intelligent search with pagination support
- Bulk operations for efficient mass updates
- Version control with optimistic concurrency
- Reference management for object relationships
# 🔧 Configuration
# # Required Variables
| Variable | Description | Example |
|- -- -- -- -- -|- -- -- -- -- -- --|- -- -- -- --|
| KIBANA_URL | Kibana server address | http://localhost:5601 |
# # Authentication (choose one method)
| Variable | Description | Priority |
|- -- -- -- -- -|- -- -- -- -- -- --|- -- -- -- -- -|
| KIBANA_API_KEY | API Key (base64 encoded) | 1st |
| KIBANA_USERNAME + KIBANA_PASSWORD | Basic authentication | 2nd |
| KIBANA_COOKIES | Session cookies | 3rd |
# # Optional Variables
| Variable | Description | Default |
|- -- -- -- -- -|- -- -- -- -- -- --|- -- -- -- --|
| KIBANA_DEFAULT_SPACE | Default Kibana space | default |
| KIBANA_CA_CERT | CA certificate path | - |
| KIBANA_TIMEOUT | Request timeout (ms) | 30000 |
| MCP_TRANSPORT | Transport mode | stdio |
| MCP_HTTP_PORT | HTTP server port | 3000 |
| MCP_HTTP_HOST | HTTP server host | localhost |
| NODE_TLS_REJECT_UNAUTHORIZED | Disable SSL validation | 1 |
# 🛠️ Available Tools
# # Base Tools
get_status- Get Kibana server statusexecute_kb_api- Execute custom Kibana API requestsget_available_spaces- List available Kibana spacessearch_kibana_api_paths- Search API endpointslist_all_kibana_api_paths- List all API endpointsget_kibana_api_detail- Get API endpoint details
# # Saved Objects Tools
vl_search_saved_objects- Search saved objects (universal)vl_get_saved_object- Get single saved objectvl_create_saved_object- Create new saved objectvl_update_saved_object- Update single saved objectvl_bulk_update_saved_objects- Bulk update operationsvl_bulk_delete_saved_objects- Bulk delete operations
Supported Object Types: dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element
# # Analysis Tools (v0.6.0+)
analyze_object_dependencies- Analyze saved object dependenciesanalyze_deletion_impact- Check impact before deletioncheck_dashboard_health- Dashboard health checkscan_all_dashboards_health- Batch health scanning
# 📖 Resources
| Resource URI | Description |
|- -- -- -- -- -- -- -|- -- -- -- -- -- --|
| kibana-api://paths | List all available API endpoints |
| kibana-api://paths?search=<keyword> | Search endpoints by keyword |
| kibana-api://path/{method}/{encoded_path} | Get specific endpoint details |
# 💬 Example Queries
# # Basic Operations
- "What is the status of my Kibana server?"
- "List all available Kibana spaces"
- "Show me all API endpoints related to dashboards"
# # Saved Objects
- "Search for all dashboards"
- "Find visualizations containing 'nginx' in the title"
- "Create a new dashboard named 'Sales Overview'"
- "Update the description of dashboard 'my-dashboard-123'"
- "Delete multiple dashboards by their IDs"
# # Health & Analysis
- "Check health of dashboard 'overview'"
- "Analyze dependencies for visualization 'viz-123'"
- "Scan all dashboards for health issues"
# 🐛 Troubleshooting
# # Connection Issues
- Verify Kibana URL is accessible
- Check authentication credentials
- For SSL issues:
NODE_TLS_REJECT_UNAUTHORIZED=0(use with caution)
# # Claude Desktop Issues
- Restart Claude Desktop after config changes
- Validate JSON config syntax
- Check console logs for errors
# # Common Errors
- "import: command not found": Update to latest version
- Authentication failed: Verify credentials and permissions
- SSL errors: Check CA certificate or disable SSL validation
# 🔍 Debugging
Use MCP Inspector for debugging:
npm run inspector
This provides a browser-accessible debugging interface.
# 📦 Package Information
- NPM: @tocharianou/mcp-server-kibana
- GitHub: TocharianOU/mcp-server-kibana
- Node.js: >= 18.0.0
- License: Apache 2.0
# 🤝 Contributing
This project is community-maintained. Contributions and feedback are welcome!
Please follow the Elastic Community Code of Conduct in all communications.
# 📄 License
Apache License 2.0 - See LICENSE file for details.
