Kibana MCP Server

by TocharianOU

72 stars
290 downloads
Not rated
GitHub

About

Access and interact with your Kibana instance using natural language or programmatic requests.

Details

Author
TocharianOU
GitHub stars
72
Downloads
290
Categories
Developer Tools, Other, Infrastructure

- Dual transport modes: Stdio and HTTP
- Multiple authentication methods: API Key, Basic Auth, Cookie
- Multi-space support for enterprise Kibana environments
- SSL/TLS support with custom CA certificates
- Complete saved objects CRUD operations and bulk actions
- Analysis tools for object dependencies and dashboard health

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Kibana MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install globally (npm install -g @tocharianou/mcp-server-kibana) or run with npx. Configure environment variables: KIBANA_URL (required) plus one of KIBANA_API_KEY, KIBANA_USERNAME+KIBANA_PASSWORD, or KIBANA_COOKIES. Integrate with Claude Desktop by adding the server configuration to the desktop config file, or run directly from the CLI. Optional variables include KIBANA_DEFAULT_SPACE, KIBANA_CA_CERT, KIBANA_TIMEOUT, MCP_TRANSPORT, MCP_HTTP_PORT, MCP_HTTP_HOST, and NODE_TLS_REJECT_UNAUTHORIZED.

get_status

Get Kibana server status with multi-space support

execute_kb_api

Execute a custom API request for Kibana with multi-space support

search_kibana_api_paths

Search Kibana API endpoints by keyword

list_all_kibana_api_paths

List all Kibana API endpoints as a resource list

get_kibana_api_detail

Get details for a specific Kibana API endpoint

get_available_spaces

Get all available Kibana spaces with current context

vl_search_saved_objects

Search for Kibana saved objects using Elasticsearch query syntax. This is a universal tool that can search across all saved object types (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.). IMPORTANT: You must specify the 'types' parameter - it is required by the Kibana API. PERFORMANCE TIPS: Always use 'fields' parameter to specify only needed fields (e.g., ['title', 'description']) for faster responses. Use 'perPage' 5-20 for optimal speed. PAGINATION: To get all results, make multiple requests with incrementing 'page' numbers (page=1, page=2, etc.) until you receive fewer results than 'perPage'. Don't stop at the first page - iterate through all pages for complete data. Returns formatted saved object information including type, title, description, and timestamps.

vl_get_saved_object

Get a single Kibana saved object by type and ID. This is a universal tool that can retrieve any type of saved object (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.) by its exact type and ID. Use this when you know the specific object you want to retrieve. PERFORMANCE: This is much faster than searching when you have the exact type and ID.

vl_bulk_delete_saved_objects

Bulk delete multiple Kibana saved objects by type and ID. This is a destructive operation that permanently removes saved objects (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.). WARNING: Deleted objects cannot be recovered. Use with caution. IMPORTANT: Objects that exist in multiple namespaces require the 'force' parameter to be deleted.

vl_create_saved_object

Create a new Kibana saved object (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.). This is a universal tool that can create any type of saved object by specifying the type and attributes. Each object type has specific attribute requirements. IMPORTANT: The 'title' field is required for most object types. Complex fields like panelsJSON, visState should be JSON strings.

vl_update_saved_object

Update a single Kibana saved object by type and ID. This performs a partial update - only the specified attributes will be changed, other attributes remain unchanged. Supports all saved object types (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.). IMPORTANT: Use version parameter for optimistic concurrency control to prevent conflicts.

vl_bulk_update_saved_objects

Update multiple Kibana saved objects in a single operation. Each object can be of different types and will be partially updated (only specified attributes changed). Supports all saved object types (dashboard, visualization, index-pattern, search, config, lens, map, tag, canvas-workpad, canvas-element, etc.). PERFORMANCE: More efficient than multiple single updates. Each object can have individual version control.

analyze_object_dependencies

Analyze dependency tree for a Kibana saved object (Dashboard, Visualization, etc.)

analyze_deletion_impact

Analyze the impact of deleting or modifying a saved object (what will be affected)

check_dashboard_health

Perform health check on a Dashboard to detect broken references, performance issues, etc.

scan_all_dashboards_health

Scan health status of all Dashboards in a space (returns summary report)

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "kibana mcp server": {
            "mcp-server-kibana": {
                "command": "npx",
                "args": [
                    "@tocharianou/mcp-server-kibana"
                ]
            }
        }
    }
}

McpServers

{
    "mcp-server-kibana": {
        "command": "npx",
        "args": [
            "@tocharianou/mcp-server-kibana"
        ]
    }
}

Kibana MCP Server

npm version Downloads Ask DeepWiki

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

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.