Skip to main content
Glama
dmayan-ss

mcp-opensearch

by dmayan-ss

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
OPENSEARCH_URLNoOpenSearch cluster URLhttp://localhost:9200
OPENSEARCH_PASSWORDNoBasic auth password
OPENSEARCH_USERNAMENoBasic auth username

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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
pingA

Check connectivity to the OpenSearch cluster. Returns cluster name and version.

cluster_healthA

Get the cluster health status including node count, shard info, and overall status (green/yellow/red).

list_indicesA

List indices in the cluster with their health, doc count, and size.

Args: pattern: Optional index name pattern to filter (e.g. 'filebeat-', 'logs-').

get_index_mappingA

Get the field mapping (schema) for an index, showing all fields and their types.

Args: index: Name of the index (e.g. 'filebeat-2024.01.15' or 'logs-*').

searchA

Execute a read-only search query against an index using OpenSearch Query DSL.

The query_body must be a valid JSON string representing the query portion. Example: {"query": {"match": {"message": "error"}}, "sort": [{"@timestamp": "desc"}]}

Args: index: Index name or pattern to search (e.g. 'filebeat-*'). query_body: JSON string with the OpenSearch Query DSL body. size: Maximum number of results to return (default 20, max 100).

countA

Count documents in an index, optionally filtered by a query.

Args: index: Index name or pattern (e.g. 'logs-*'). query_body: Optional JSON string with a query filter (e.g. '{"query": {"match": {"level": "ERROR"}}}').

list_aliasesA

List all index aliases in the cluster, showing which indices they point to.

get_documentB

Retrieve a specific document by its ID.

Args: index: Name of the index containing the document. doc_id: The document ID.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 8 tools

Disambiguation4/5

Tools target distinct resources/actions: cluster health, index listing, mappings, search, count, aliases, and document retrieval. Ping and cluster_health both relate to health but are clearly differentiated, as are search and count; no tools appear to duplicate each other.

Naming Consistency3/5

Names are consistently lowercase snake_case, but conventions vary: bare verbs (ping, search, count), list_* (list_indices, list_aliases), get_* (get_document, get_index_mapping), and one noun-phrase tool (cluster_health). This is readable but not a uniform verb_noun pattern.

Tool Count5/5

Eight tools fit a focused OpenSearch query and observability server well. There is no bloat or redundancy, and each tool covers a meaningful operation.

Completeness3/5

The set covers health, index listing/mapping, search, count, aliases, and document retrieval, but lacks write operations and common admin reads like index settings or cluster/node stats. For a read-only observability tool it is workable, but as a general OpenSearch surface it has notable gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues