Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

Kibana

NPM · @TOCHARIANOU/MCP-SERVER-KIBANA · SCANNED AUG 3

Kibana MCP Server with dynamic API discovery and comprehensive Elastic Stack integration

+20 this week 62 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security87
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (139 of 140), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (139 of 140), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability39
  • 0% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Fail
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 2766 tokens (~153/item across 18 items; 16 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage98
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 93% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @tocharianou/mcp-server-kibana

# add to Claude Code
claude mcp add tocharianou-kibana -- npx -y @tocharianou/mcp-server-kibana
# add to Codex CLI
codex mcp add tocharianou-kibana -- npx -y @tocharianou/mcp-server-kibana
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "tocharianou-kibana": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@tocharianou/mcp-server-kibana"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add tocharianou-kibana --command npx --arg -y --arg @tocharianou/mcp-server-kibana
# ~/.hermes/config.yaml
mcp_servers:
  tocharianou-kibana:
    command: "npx"
    args: ["-y", "@tocharianou/mcp-server-kibana"]
// mcp.json
{
  "mcpServers": {
    "tocharianou-kibana": {
      "command": "npx",
      "args": [
        "-y",
        "@tocharianou/mcp-server-kibana"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 3 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Aug 26 +44
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • Dependency health: unverified → partial functional
    • Stability: unverified → 0.23 functional
    • Schema quality: unverified → good functional
    • License: unverified → pass functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Licence: Apache-2.0 functional
  • 31 Jul 26 −25
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 27 Jul 26 42

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/@tocharianou/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 139 packages

139 packages in the resolved dependency tree · 138 deprecated · 42 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 16 exposed · ~2,750 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
analyze_deletion_impact ~71

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

NameTypeReqDescription
idstringyesSaved object ID to analyze
spacestringKibana space (optional)
typestringyesSaved object type (e.g., visualization, lens, index-pattern)

No output schema declared.

No examples provided.

analyze_object_dependencies ~86

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

NameTypeReqDescription
idstringyesSaved object ID
max_depthnumberMaximum depth to traverse (default: 5)
spacestringKibana space (optional)
typestringyesSaved object type (e.g., dashboard, visualization, lens, index-pattern)

No output schema declared.

No examples provided.

check_dashboard_health ~68

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

NameTypeReqDescription
check_indicesbooleanAlso check if referenced Elasticsearch indices exist (requires additional permissions)
dashboard_idstringyesDashboard ID to check
spacestringKibana space (optional)

No output schema declared.

No examples provided.

execute_kb_api ~67

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

NameTypeReqDescription
body
methodstringyes
paramsobject
pathstringyes
spacestringTarget Kibana space (optional, defaults to configured space)

No output schema declared.

No examples provided.

get_available_spaces ~37

Get all available Kibana spaces with current context

NameTypeReqDescription
include_detailsbooleanInclude detailed space information (name, description, etc.)

No output schema declared.

No examples provided.

get_kibana_api_detail ~81

Get details for a specific Kibana API endpoint

NameTypeReqDescription
methodstringyesHTTP method, e.g. GET, POST, PUT, DELETE
pathstringyesAPI path, e.g. /api/actions/connector_types
rawbooleanIf true, return raw JSON schema instead of simplified TypeScript interface

No output schema declared.

No examples provided.

get_status ~36

Get Kibana server status with multi-space support

NameTypeReqDescription
spacestringTarget Kibana space (optional, defaults to configured space)

No output schema declared.

No examples provided.

list_all_kibana_api_paths ~24

List all Kibana API endpoints as a resource list

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

scan_all_dashboards_health ~58

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

NameTypeReqDescription
max_dashboardsnumberMaximum number of dashboards to scan (default: 50)
spacestringKibana space (optional)

No output schema declared.

No examples provided.

search_kibana_api_paths ~33

Search Kibana API endpoints by keyword

NameTypeReqDescription
searchstringyesSearch keyword for filtering API endpoints

No output schema declared.

No examples provided.

vl_bulk_delete_saved_objects ~193

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.

NameTypeReqDescription
forcebooleanForce deletion of objects that exist in multiple namespaces. Set to true if you get an error about objects existing in multiple namespaces. WARNING: This also deletes legacy URL aliases and can place…
objectsarrayyesREQUIRED: Array of objects to delete. Each object must have 'type' and 'id' fields. Minimum 1 object required.
spacestringTarget Kibana space (optional, defaults to configured space)

No output schema declared.

No examples provided.

vl_bulk_update_saved_objects ~143

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.

NameTypeReqDescription
objectsarrayyesREQUIRED: Array of objects to update. Each object must have 'type', 'id', and 'attributes' fields. Minimum 1 object required.
spacestringTarget Kibana space (optional, defaults to configured space)

No output schema declared.

No examples provided.

vl_create_saved_object ~412

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.

NameTypeReqDescription
attributesobjectyesREQUIRED: Object containing the saved object attributes. Structure varies by type. Common fields: 'title' (required for most types), 'description'. Dashboard: 'panelsJSON', 'timeRestore'. Visualizati…
idstringOPTIONAL: Specific ID for the saved object. If not provided, Kibana will auto-generate a unique ID. Use this when you need a predictable ID or when recreating objects.
initialNamespacesarrayOPTIONAL: Array of initial namespaces for the object. Used for multi-tenant setups. If not specified, object will be created in the default namespace.
overwritebooleanOPTIONAL: Whether to overwrite an existing object with the same ID. Only relevant when 'id' is specified. Default: false. Set to true to replace existing objects.
referencesarrayOPTIONAL: Array of references to other saved objects. Used to link objects together (e.g., dashboard panels referencing visualizations). Each reference needs id, type, and name.
spacestringTarget Kibana space (optional, defaults to configured space)
typeyesREQUIRED: The saved object type. Common types: 'dashboard', 'visualization', 'index-pattern', 'search', 'config', 'lens', 'map', 'tag', 'canvas-workpad', 'canvas-element'. Supports multiple formats b…

No output schema declared.

No examples provided.

vl_get_saved_object ~285

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.

NameTypeReqDescription
idstringyesREQUIRED: The saved object ID. This is the unique identifier for the specific object you want to retrieve.
spacestringTarget Kibana space (optional, defaults to configured space)
typeyesREQUIRED: The saved object type. Common types: 'dashboard', 'visualization', 'index-pattern', 'search', 'config', 'lens', 'map', 'tag', 'canvas-workpad', 'canvas-element'. Supports multiple formats:…
useResolvebooleanUse resolve API instead of get API. The resolve API can handle legacy URL aliases from object ID migrations. Use this if you're having trouble finding an object that may have had its ID changed durin…

No output schema declared.

No examples provided.

vl_search_saved_objects ~796

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.

NameTypeReqDescription
aggsstringAggregation structure, serialized as a string. Use for advanced analytics on saved objects.
defaultSearchOperatorstringDefault operator for simple_query_string (OR/AND, default: OR)
fieldsPERFORMANCE OPTIMIZATION: Specify which fields to return in the attributes key. Examples: ['title', 'description'] for basic info, ['title', 'description', 'updated_at'] for metadata. IMPORTANT: Usin…
filterstringKQL string filter (e.g., 'dashboard.attributes.title: "My Dashboard"')
hasNoReferenceFilter to objects that do not have a relationship with the type and identifier combination. Example: {type: 'index-pattern', id: 'my-pattern-id'}
hasNoReferenceOperatorstringOperator for has_no_reference parameter (OR/AND, default: OR)
hasReferenceFilter to objects that have a relationship with the type and ID combination. Example: {type: 'index-pattern', id: 'my-pattern-id'}
hasReferenceOperatorstringOperator for has_reference parameter (OR/AND, default: OR)
pagenumberPage number to return (starts from 1). Use with perPage for pagination. Example: page=1 gets first 20 results, page=2 gets results 21-40, etc. IMPORTANT: To get all results, you need to make multiple…
perPagenumberNumber of saved objects per page (default: 20). PERFORMANCE TIP: Use 5-20 for faster responses. Large values (>50) can be slow and may timeout. Always combine with 'fields' parameter to limit data wh…
searchstringSearch query to filter saved objects. Supports boolean operators (AND, OR), wildcards (*), and phrases in quotes. Example: 'nginx AND logs' or 'web*'.
sortFieldstringField to sort by (e.g., 'updated_at', 'created_at', 'type', 'dashboard.attributes.title')
sortOrderstringSort order: 'asc' for ascending, 'desc' for descending (default: 'desc')
spacestringTarget Kibana space (optional, defaults to configured space)
typesyesREQUIRED: Saved object types to include. Common types: 'dashboard', 'visualization', 'index-pattern', 'search', 'config', 'lens', 'map', 'tag', 'canvas-workpad', 'canvas-element'. Use ['dashboard', '…

No output schema declared.

No examples provided.

vl_update_saved_object ~360

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.

NameTypeReqDescription
attributesobjectyesREQUIRED: Object containing the attributes to update. Only specified attributes will be changed (partial update). Common fields: 'title', 'description'. Type-specific fields: Dashboard: 'panelsJSON',…
idstringyesREQUIRED: The saved object ID. This is the unique identifier for the object you want to update.
referencesarrayOPTIONAL: Array of references to other saved objects. Updates the object's references. Each reference needs id, type, and name.
spacestringTarget Kibana space (optional, defaults to configured space)
typeyesREQUIRED: The saved object type. Common types: 'dashboard', 'visualization', 'index-pattern', 'search', 'config', 'lens', 'map', 'tag', 'canvas-workpad', 'canvas-element'. Supports multiple formats b…
upsertobjectOPTIONAL: Attributes to use if the object doesn't exist (will create object if not found). Useful for create-or-update scenarios.
versionstringOPTIONAL: Version string for optimistic concurrency control. Use this to prevent conflicts when multiple processes update the same object. Get the version from a previous get/search operation.

No output schema declared.

No examples provided.