analyze_deletion_impact
Analyze the impact of deleting or modifying a saved object (what will be affected)
Reach a Kibana instance from an assistant — search and edit saved objects across spaces, call any Kibana API, and run dependency and health checks on dashboards.
LABSCO SUMMARY
The analysis tools are the ones worth having: analyze_deletion_impact and analyze_object_dependencies map what a saved object connects to, so a cleanup does not quietly break a dashboard downstream — and scan_all_dashboards_health finds the ones already broken. Underneath, execute_kb_api plus the API-path search means anything Kibana's API can do is reachable, which is why the saved-object tools are described as universal across every object type.
A community-maintained server for Kibana, built from Elastic's OpenAPI spec for Stack 8.x: 16 tools covering saved-object CRUD across all types, the full Kibana API surface, multi-space support, and dashboard dependency and health analysis.
Your Kibana instance URL in KIBANA_URL, and authentication either as a KIBANA_API_KEY or as KIBANA_USERNAME and KIBANA_PASSWORD for basic auth. Node, run as npx @tocharianou/mcp-server-kibana over stdio, or over StreamableHTTP with MCP_TRANSPORT=http on MCP_HTTP_PORT (default 3000). It is community-maintained and not an official Elastic product.
One command — npm install -g @tocharianou/mcp-server-kibana
USE CASES
Search saved objects with Elasticsearch query syntax across the types you care about, list the spaces to scope it, and pull the exact object you found by type and ID.
Before deleting, analyze what depends on the object and what removing it would affect, then bulk-delete only once you know the blast radius.
Scan every dashboard in a space for broken references and performance issues, then health-check the specific ones that came back flagged.
Search the API paths for the endpoint you need, read its detail, and execute the request directly against the right space.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
analyze_deletion_impactAnalyze the impact of deleting or modifying a saved object (what will be affected)
analyze_object_dependenciesAnalyze dependency tree for a Kibana saved object (Dashboard, Visualization, etc.)
check_dashboard_healthPerform health check on a Dashboard to detect broken references, performance issues, etc.
execute_kb_apiExecute a custom API request for Kibana with multi-space support
get_available_spacesGet all available Kibana spaces with current context
get_kibana_api_detailGet details for a specific Kibana API endpoint
get_statusGet Kibana server status with multi-space support
list_all_kibana_api_pathsList all Kibana API endpoints as a resource list
scan_all_dashboards_healthScan health status of all Dashboards in a space (returns summary report)
search_kibana_api_pathsSearch Kibana API endpoints by keyword
vl_bulk_delete_saved_objectsBulk 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_bulk_update_saved_objectsUpdate 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.
vl_create_saved_objectCreate 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_get_saved_objectGet 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_search_saved_objectsSearch 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_update_saved_objectUpdate 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.
BEFORE YOU INSTALL
16 tools when we connected.
CONTEXT COST
Rated by the size of the 16 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npm install -g @tocharianou/mcp-server-kibana{
"mcpServers": {
"kibana": {
"command": "npx",
"args": [
"@tocharianou/mcp-server-kibana"
],
"env": {
"KIBANA_URL": "http://<YOUR_KIBANA_SERVER>:5601",
"KIBANA_API_KEY": "<YOUR_KIBANA_API_KEY>",
"KIBANA_DEFAULT_SPACE": "default"
}
}
}
}