The Kibana MCP Server enables MCP-compatible clients to interact with Kibana instances through natural language or programmatic requests, dynamically managing API endpoints based on official Elastic Stack 8.x OpenAPI specifications.
• Connect Securely: Connect to local or remote Kibana instances using username/password authentication with SSL/TLS and custom CA certificate support • Multi-Space Operations: Access and manage APIs across multiple Kibana spaces in enterprise environments • Dynamic API Management: List, search, and get detailed information about Kibana API endpoints using keyword searches or comprehensive listings • Execute Custom Requests: Perform API operations (GET, POST, PUT, DELETE) with custom parameters, bodies, and target spaces • Monitor Server Status: Check Kibana server status globally or for specific spaces • Manage Spaces: Retrieve and manage available Kibana spaces with detailed information • Flexible Integration: Seamlessly integrate with MCP clients like Claude Desktop, supporting both conversational (tool-based) and raw data access (resource-based) interaction modes
Connects to Elastic Stack services through Kibana, using the OpenAPI YAML specification from Elastic Stack 8.x (ES8) to dynamically retrieve and manage all Kibana API endpoints.
Provides access to Kibana instances through API endpoints, allowing users to search, view, and execute Kibana APIs. Supports operations like checking server status, managing saved objects, creating dashboards, handling cases, and accessing endpoint events through Kibana's API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Kibana MCP Servershow me the top 5 error logs from the last hour"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
From Source
Related MCP server: MISP-MCP-SERVER
🎯 Quick Start
Claude Desktop Integration (Recommended)
Add to your Claude Desktop configuration file:
MacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Direct CLI Usage
HTTP Mode (Remote Access)
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 server address |
|
Authentication (choose one method)
Variable | Description | Priority |
| API Key (base64 encoded) | 1st |
| Basic authentication | 2nd |
| Session cookies | 3rd |
Optional Variables
Variable | Description | Default |
| Default Kibana space |
|
| CA certificate path | - |
| Request timeout (ms) |
|
| Transport mode |
|
| HTTP server port |
|
| HTTP server host |
|
| Disable SSL validation |
|
🛠️ 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 |
| List all available API endpoints |
| Search endpoints by keyword |
| 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:
This provides a browser-accessible debugging interface.
📦 Package Information
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.