Skip to main content
Glama
SuriyaKumar-HAIT

OpenSearch MCP Server

Open WebUI + OpenSearch MCP (Single Repo)

This repository starts everything with one Docker Compose command:

  • OpenSearch: http://localhost:9200

  • OpenSearch Dashboards: http://localhost:5601

  • MCP Server: http://localhost:3001/mcp

  • Open WebUI: http://localhost:3002

Security Notes (Important)

  • This stack is for local development/testing.

  • OpenSearch security plugins are disabled in docker-compose.yml.

  • Do not expose these ports directly to the public internet.

  • Never commit a real .env file with secrets.

Related MCP server: opensearch-mcp-server

1. Setup

copy .env.example .env

Edit .env and set:

  • WEBUI_SECRET_KEY to a long random value (required)

  • OPENAI_API_KEY (optional)

2. Start All Services

docker compose up -d --build

Check status:

docker compose ps

3. Configure MCP Tool Server in Open WebUI

  1. Open http://localhost:3002 and sign in as admin.

  2. Go to Admin Panel -> Settings -> Tools (or Tool Servers, depending on Open WebUI version).

  3. Add a new tool server with:

    • Type: MCP

    • Name: OpenSearch MCP

    • ID: opensearch_mcp

    • URL: http://opensearch-mcp:3001/mcp

    • Auth: None

  4. Save the server and run connection check/sync if the button is available.

  5. Confirm tools are visible (for example cluster_health, list_indices, search_indices).

If your environment cannot resolve Docker service names from Open WebUI, use:

  • http://host.docker.internal:3001/mcp

4. Attach MCP Tools to One Model (Example: GPT-4o mini)

  1. In Open WebUI, ensure your OpenAI provider is configured with your API key.

  2. Open Models and select gpt-4o-mini (or create a custom model entry mapped to gpt-4o-mini).

  3. Enable model capabilities for tools/function calling.

  4. In the model tool settings, allow/select only the opensearch_mcp tool server.

  5. Save the model configuration.

  6. Start a new chat and pick gpt-4o-mini.

  7. In chat tool controls, ensure tools are enabled and opensearch_mcp is active.

Note: exact menu labels differ slightly by Open WebUI version, but the flow is always: Tool Server setup -> Model tool enablement -> Enable tools in chat.

5. Verify

Use the configured model (gpt-4o-mini) and send:

Use MCP tools only.
Call cluster_health and return cluster_name, status, number_of_nodes, active_primary_shards.
Do not answer from memory.

Expected behavior:

  • The assistant performs a tool call to cluster_health.

  • The response includes live cluster fields from OpenSearch.

6. Stop

docker compose down

To remove volumes too:

docker compose down -v

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MCP server for OpenSearch that enables AI assistants to interact with OpenSearch clusters through a standardized interface for search, index management, and cluster operations.
    9
    77,891 PyPI
    151
    Apache 2.0
  • A
    license
    B
    quality
    F
    maintenance
    Enables interaction with OpenSearch clusters, providing tools to list indices, retrieve mappings, search using query DSL, and get shard information.
    4
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to interact with OpenSearch clusters for searching indices, retrieving mappings, and managing shards through the MCP protocol.
    Apache 2.0
  • A
    license
    A
    quality
    B
    maintenance
    A read-only MCP server that enables AI assistants to search, aggregate, and explore OpenSearch log data through 12 tools for connectivity, index discovery, search, and aggregations.
    17
    MIT