opensearch-mcp-server-py


Nameopensearch-mcp-server-py JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
SummaryAdd your description here
upload_time2025-07-24 18:31:55
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![OpenSearch logo](https://github.com/opensearch-project/opensearch-py/raw/main/OpenSearch.svg)

- [OpenSearch MCP Server](https://github.com/opensearch-project/opensearch-mcp-server-py#opensearch-mcp-server)
- [Installing opensearch-mcp-server-py](https://github.com/opensearch-project/opensearch-mcp-server-py#installing-opensearch-mcp-server-py)
- [Available tools](https://github.com/opensearch-project/opensearch-mcp-server-py#available-tools)
- [User Guide](https://github.com/opensearch-project/opensearch-mcp-server-py#user-guide)
- [Contributing](https://github.com/opensearch-project/opensearch-mcp-server-py#contributing)
- [Code of Conduct](https://github.com/opensearch-project/opensearch-mcp-server-py#code-of-conduct)
- [License](https://github.com/opensearch-project/opensearch-mcp-server-py#license)
- [Copyright](https://github.com/opensearch-project/opensearch-mcp-server-py#copyright)

## OpenSearch MCP Server
**opensearch-mcp-server-py** is a Model Context Protocol (MCP) server for OpenSearch that enables AI assistants to interact with OpenSearch clusters. It provides a standardized interface for AI models to perform operations like searching indices, retrieving mappings, and managing shards through both stdio and streaming (SSE/Streamable HTTP) protocols.

**Key features:**
- Seamless integration with AI assistants and LLMs through the MCP protocol
- Support for both stdio and streaming server transports (SSE and Streamable HTTP)
- Built-in tools for common OpenSearch operations
- Easy integration with Claude Desktop and LangChain
- Secure authentication using basic auth or IAM roles

## Installing opensearch-mcp-server-py
Opensearch-mcp-server-py can be installed from [PyPI](https://pypi.org/project/opensearch-mcp-server-py/) via pip:
```
pip install opensearch-mcp-server-py
```

## Available Tools
- [ListIndexTool](https://docs.opensearch.org/docs/latest/api-reference/cat/cat-indices/): Lists all indices in OpenSearch with full information including docs.count, docs.deleted, store.size, etc. If an index parameter is provided, returns detailed information about that specific index.
- [IndexMappingTool](https://docs.opensearch.org/docs/latest/ml-commons-plugin/agents-tools/tools/index-mapping-tool/): Retrieves index mapping and setting information for an index in OpenSearch.
- [SearchIndexTool](https://docs.opensearch.org/docs/latest/ml-commons-plugin/agents-tools/tools/search-index-tool/): Searches an index using a query written in query domain-specific language (DSL) in OpenSearch.
- [GetShardsTool](https://docs.opensearch.org/docs/latest/api-reference/cat/cat-shards/): Gets information about shards in OpenSearch.
- [ClusterHealthTool](https://docs.opensearch.org/docs/latest/api-reference/cluster-api/cluster-health/): Returns basic information about the health of the cluster.
- [CountTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/count/): Returns number of documents matching a query.
- [ExplainTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/explain/): Returns information about why a specific document matches (or doesn't match) a query.
- [MsearchTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/multi-search/): Allows to execute several search operations in one request.

### Tool Parameters
- **ListIndexTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (optional): The name of the index to get detailed information for. If provided, returns detailed information about this specific index instead of listing all indices.

- **IndexMappingTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (required): The name of the index to retrieve mappings for

- **SearchIndexTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (required): The name of the index to search in
    - `query` (required): The search query in OpenSearch Query DSL format

- **GetShardsTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (required): The name of the index to get shard information for
    
- **ClusterHealthTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (optional): Limit health reporting to a specific index

- **CountTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (optional): The name of the index to count documents in
    - `body` (optional): Query in JSON format to filter documents

- **ExplainTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (required): The name of the index to retrieve the document from
    - `id` (required): The document ID to explain
    - `body` (required): Query in JSON format to explain against the document

- **MsearchTool**
    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to
    - `index` (optional): Default index to search in
    - `body` (required): Multi-search request body in NDJSON format

> More tools coming soon. [Click here](DEVELOPER_GUIDE.md#contributing)

## User Guide
For detailed usage instructions, configuration options, and examples, please see the [User Guide](USER_GUIDE.md).

## Contributing
Interested in contributing? Check out our:
- [Development Guide](DEVELOPER_GUIDE.md#opensearch-mcp-server-py-developer-guide) - Setup your development environment
- [Contributing Guidelines](DEVELOPER_GUIDE.md#contributing) - Learn how to contribute

## Code of Conduct
This project has adopted the [Amazon Open Source Code of Conduct](CODE_OF_CONDUCT.md). For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq), or contact [opensource-codeofconduct@amazon.com](mailto:opensource-codeofconduct@amazon.com) with any additional questions or comments.

## License
This project is licensed under the [Apache v2.0 License](LICENSE.txt).

## Copyright
Copyright 2020-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "opensearch-mcp-server-py",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/c4/ae/9e6737c371025579aef2f50f17ff8f2fe4031245a293b5eedf391584edcc/opensearch_mcp_server_py-0.3.0.tar.gz",
    "platform": null,
    "description": "![OpenSearch logo](https://github.com/opensearch-project/opensearch-py/raw/main/OpenSearch.svg)\n\n- [OpenSearch MCP Server](https://github.com/opensearch-project/opensearch-mcp-server-py#opensearch-mcp-server)\n- [Installing opensearch-mcp-server-py](https://github.com/opensearch-project/opensearch-mcp-server-py#installing-opensearch-mcp-server-py)\n- [Available tools](https://github.com/opensearch-project/opensearch-mcp-server-py#available-tools)\n- [User Guide](https://github.com/opensearch-project/opensearch-mcp-server-py#user-guide)\n- [Contributing](https://github.com/opensearch-project/opensearch-mcp-server-py#contributing)\n- [Code of Conduct](https://github.com/opensearch-project/opensearch-mcp-server-py#code-of-conduct)\n- [License](https://github.com/opensearch-project/opensearch-mcp-server-py#license)\n- [Copyright](https://github.com/opensearch-project/opensearch-mcp-server-py#copyright)\n\n## OpenSearch MCP Server\n**opensearch-mcp-server-py** is a Model Context Protocol (MCP) server for OpenSearch that enables AI assistants to interact with OpenSearch clusters. It provides a standardized interface for AI models to perform operations like searching indices, retrieving mappings, and managing shards through both stdio and streaming (SSE/Streamable HTTP) protocols.\n\n**Key features:**\n- Seamless integration with AI assistants and LLMs through the MCP protocol\n- Support for both stdio and streaming server transports (SSE and Streamable HTTP)\n- Built-in tools for common OpenSearch operations\n- Easy integration with Claude Desktop and LangChain\n- Secure authentication using basic auth or IAM roles\n\n## Installing opensearch-mcp-server-py\nOpensearch-mcp-server-py can be installed from [PyPI](https://pypi.org/project/opensearch-mcp-server-py/) via pip:\n```\npip install opensearch-mcp-server-py\n```\n\n## Available Tools\n- [ListIndexTool](https://docs.opensearch.org/docs/latest/api-reference/cat/cat-indices/): Lists all indices in OpenSearch with full information including docs.count, docs.deleted, store.size, etc. If an index parameter is provided, returns detailed information about that specific index.\n- [IndexMappingTool](https://docs.opensearch.org/docs/latest/ml-commons-plugin/agents-tools/tools/index-mapping-tool/): Retrieves index mapping and setting information for an index in OpenSearch.\n- [SearchIndexTool](https://docs.opensearch.org/docs/latest/ml-commons-plugin/agents-tools/tools/search-index-tool/): Searches an index using a query written in query domain-specific language (DSL) in OpenSearch.\n- [GetShardsTool](https://docs.opensearch.org/docs/latest/api-reference/cat/cat-shards/): Gets information about shards in OpenSearch.\n- [ClusterHealthTool](https://docs.opensearch.org/docs/latest/api-reference/cluster-api/cluster-health/): Returns basic information about the health of the cluster.\n- [CountTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/count/): Returns number of documents matching a query.\n- [ExplainTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/explain/): Returns information about why a specific document matches (or doesn't match) a query.\n- [MsearchTool](https://docs.opensearch.org/docs/latest/api-reference/search-apis/multi-search/): Allows to execute several search operations in one request.\n\n### Tool Parameters\n- **ListIndexTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (optional): The name of the index to get detailed information for. If provided, returns detailed information about this specific index instead of listing all indices.\n\n- **IndexMappingTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (required): The name of the index to retrieve mappings for\n\n- **SearchIndexTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (required): The name of the index to search in\n    - `query` (required): The search query in OpenSearch Query DSL format\n\n- **GetShardsTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (required): The name of the index to get shard information for\n    \n- **ClusterHealthTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (optional): Limit health reporting to a specific index\n\n- **CountTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (optional): The name of the index to count documents in\n    - `body` (optional): Query in JSON format to filter documents\n\n- **ExplainTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (required): The name of the index to retrieve the document from\n    - `id` (required): The document ID to explain\n    - `body` (required): Query in JSON format to explain against the document\n\n- **MsearchTool**\n    - `opensearch_url` (optional): The OpenSearch cluster URL to connect to\n    - `index` (optional): Default index to search in\n    - `body` (required): Multi-search request body in NDJSON format\n\n> More tools coming soon. [Click here](DEVELOPER_GUIDE.md#contributing)\n\n## User Guide\nFor detailed usage instructions, configuration options, and examples, please see the [User Guide](USER_GUIDE.md).\n\n## Contributing\nInterested in contributing? Check out our:\n- [Development Guide](DEVELOPER_GUIDE.md#opensearch-mcp-server-py-developer-guide) - Setup your development environment\n- [Contributing Guidelines](DEVELOPER_GUIDE.md#contributing) - Learn how to contribute\n\n## Code of Conduct\nThis project has adopted the [Amazon Open Source Code of Conduct](CODE_OF_CONDUCT.md). For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq), or contact [opensource-codeofconduct@amazon.com](mailto:opensource-codeofconduct@amazon.com) with any additional questions or comments.\n\n## License\nThis project is licensed under the [Apache v2.0 License](LICENSE.txt).\n\n## Copyright\nCopyright 2020-2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Add your description here",
    "version": "0.3.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/opensearch-project/opensearch-mcp-server-py/issues",
        "Changelog": "https://github.com/opensearch-project/opensearch-mcp-server-py/blob/main/CHANGELOG.md",
        "Documentation": "https://github.com/opensearch-project/opensearch-mcp-server-py/blob/main/USER_GUIDE.md",
        "Homepage": "https://github.com/opensearch-project/opensearch-mcp-server-py",
        "Source": "https://github.com/opensearch-project/opensearch-mcp-server-py.git"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6442f53e37dc5cc944801e8c9762472fea21f63108b9974960aa2853d19bd770",
                "md5": "634adc25022e76120b042fe6ebbc5cf0",
                "sha256": "0ed509ce439c59f3d581719b797cf0cf9f481f83c887862379be05fcc2c829e3"
            },
            "downloads": -1,
            "filename": "opensearch_mcp_server_py-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "634adc25022e76120b042fe6ebbc5cf0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 27316,
            "upload_time": "2025-07-24T18:31:54",
            "upload_time_iso_8601": "2025-07-24T18:31:54.313134Z",
            "url": "https://files.pythonhosted.org/packages/64/42/f53e37dc5cc944801e8c9762472fea21f63108b9974960aa2853d19bd770/opensearch_mcp_server_py-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c4ae9e6737c371025579aef2f50f17ff8f2fe4031245a293b5eedf391584edcc",
                "md5": "d5e1e916c5c093788c88fbb69d9cafe5",
                "sha256": "bc750e8e671dcb8358f0e4b4fcc88b12a92c27725f3b63263b402404aa5e074e"
            },
            "downloads": -1,
            "filename": "opensearch_mcp_server_py-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d5e1e916c5c093788c88fbb69d9cafe5",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 23488,
            "upload_time": "2025-07-24T18:31:55",
            "upload_time_iso_8601": "2025-07-24T18:31:55.587540Z",
            "url": "https://files.pythonhosted.org/packages/c4/ae/9e6737c371025579aef2f50f17ff8f2fe4031245a293b5eedf391584edcc/opensearch_mcp_server_py-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-24 18:31:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "opensearch-project",
    "github_project": "opensearch-mcp-server-py",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "opensearch-mcp-server-py"
}
        
Elapsed time: 1.99473s