Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
KIBANA_URLNoKibana base URL the server connects to. Can also be set as KIBANA_MCP_KIBANA_URL.http://localhost:5601
KIBANA_API_KEYNostdio mode: the API key used for every request. HTTP mode: ignored unless KIBANA_MCP_ALLOW_ENV_KEY_HTTP=true — each caller sends their own key. Can also be set as KIBANA_MCP_KIBANA_API_KEY.
KIBANA_MCP_TIERNoMax tool tier to register: read, write, or destructive.write
KIBANA_PUBLIC_URLNoURL used to build human-clickable dashboard links, if different from the URL the server itself reaches Kibana on (e.g. behind a proxy). Defaults to KIBANA_URL. Can also be set as KIBANA_MCP_KIBANA_PUBLIC_URL.
KIBANA_MCP_TOOLBOXESNoComma-separated list of toolboxes to register.dashboards,data-management
KIBANA_MCP_EXPORT_DIRNo

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_dashboardsA

Search dashboards by title/description. Empty query lists all.

space targets a Kibana space by id (default: the default space).

get_dashboardA

Get a dashboard summary: title, description, and its panels.

space targets a Kibana space by id (default: the default space).

create_dashboardA

Create a dashboard from one or more visualization specs. Idempotent: creating with the same title (case-insensitive, whitespace/punctuation-normalized) updates that dashboard instead of duplicating it, replacing its panels (filters, query, tags and display options are preserved); the return's status is created or replaced. Call describe_data_view first to learn real field names.

space targets a Kibana space by id (default: the default space).

create_visualizationA

Create a reusable visualization in the library (not on a dashboard).

space targets a Kibana space by id (default: the default space).

add_panelA

Add a visualization panel to an existing dashboard.

space targets a Kibana space by id (default: the default space).

add_esql_metric_panelA

Add an ES|QL metric panel to an existing dashboard: run an ES|QL query and show one of its output columns as a single-number metric. esql is the query (e.g. 'FROM logs | STATS total = COUNT(*)') and column names the output column to display (e.g. 'total'). For field-based charts use add_panel with a VizSpec instead. The query is NOT validated server-side — a wrong query or column yields an empty panel, so write both carefully.

space targets a Kibana space by id (default: the default space).

add_esql_table_panelA

Add an ES|QL table panel to an existing dashboard: show a query's output columns as a table. columns are the grouping/dimension columns — one table row per distinct value (e.g. ["status"]); metric_columns are the numeric value columns shown per row (e.g. ["count"]). esql is the query. It is NOT validated server-side — a wrong query or column name yields an empty panel, so write them carefully. For field-based charts use add_panel with a VizSpec.

space targets a Kibana space by id (default: the default space).

add_esql_xy_panelA

Add an ES|QL bar/line/area panel to an existing dashboard: x_column on the x axis, each of y_columns a plotted series, and an optional breakdown_column to split each series. esql is the query. It is NOT validated server-side — a wrong query or column name yields an empty panel. For field-based charts use add_panel with a VizSpec.

space targets a Kibana space by id (default: the default space).

update_panelC

Replace the visualization at panel_index (see get_dashboard for indexes).

space targets a Kibana space by id (default: the default space).

list_data_viewsA

List Kibana data views (the datasets you can visualize).

space targets a Kibana space by id (default: the default space).

describe_data_viewA

Get a data view's fields and types. Call this before creating a visualization so you use real field names.

space targets a Kibana space by id (default: the default space).

resolve_short_urlA

Resolve a Kibana short-URL slug to its locator and target app path. (Short URLs are a Technical-Preview API.)

space targets a Kibana space by id (default: the default space).

export_saved_objectsA

Export saved objects (dashboards, data views, …) as an NDJSON file on the server, and return a summary + an opaque handle — NOT the content — that you pass to import_saved_objects. Select EITHER types (e.g. ["dashboard"], or ["*"] for the whole space) OR objects (a list of {"type":…, "id":…}), not both. This is a sensitive export surface; what can actually be read is bounded by the API key's privileges, not by this tool.

space targets a Kibana space by id (default: the default space).

import_saved_objectsA

Import a previously-exported set of saved objects, identified by the handle returned from export_saved_objects, as NEW copies (regenerated ids — a clone into the current space, not an in-place restore). Existing objects are never touched. Returns which objects were created (source id -> new destination id). A missing/expired handle errors. To restore in place instead, use overwrite_saved_objects (destructive). A handle carries no space — importing it with space="b" clones its content into b (new ids), regardless of which space it was exported from.

space targets a Kibana space by id (default: the default space).

create_data_viewA

Create a Kibana data view over an index pattern (e.g. 'logs-*'). Optionally set a display name and a time field (for time-series data).

space targets a Kibana space by id (default: the default space).

create_short_urlA

Create a Kibana short URL. Supports locator_id='LEGACY_SHORT_URL_LOCATOR' with params={'url': '/app/...'} (a Kibana app path). (Technical-Preview API.) A slug created in a space resolves under /s/<space>/goto/<slug> and via resolve_short_url(slug, space=…). When space is set, pass the app path WITHOUT a /s/<space> prefix — the space parameter chooses the space, not the path. A /s/<id>-prefixed path passed without space creates the slug in the default space.

space targets a Kibana space by id (default: the default space).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
user-guideFull getting-started guide: setup, first dashboard, safety rails.
toolsTool reference: tiers, inputs, return shapes, error behavior.
troubleshootingThe user guide's Troubleshooting section, extracted.