
OpenSearch MCP Server

2025.04.28
0
PythonOpenSearch 交互数据库管理数据库
OpenSearch MCP Server 是一个通过自然语言与 OpenSearch 集群交互的服务,基于 Model Context Protocol (MCP) 协议。它提供了一系列工具,用于分析集群健康状态、批量操作文档、获取索引映射、搜索文档等功能。
View on GitHub
Overview
基本能力
产品定位
OpenSearch MCP Server 是一个用于与 OpenSearch 集群交互的中间服务,通过 MCP 协议提供自然语言操作能力。
核心功能
- 集群管理:
- 获取集群健康状态 (
opensearch_cluster_health
) - 获取集群统计信息 (
opensearch_cluster_stats
) - 文档操作:
- 批量写入文档 (
opensearch_bulk
) - 获取单个文档 (
opensearch_get_document
) - 索引管理:
- 列出集群中的索引 (
opensearch_list_indices
) - 创建索引 (
opensearch_create_index
) - 删除索引 (
opensearch_delete_index
) - 获取索引信息 (
opensearch_get_index
) - 搜索功能:
- 使用 DSL 查询索引 (
opensearch_search
)
适用场景
- 通过自然语言快速查询 OpenSearch 集群状态
- 批量导入或导出文档数据
- 动态管理索引(创建、删除、查询)
- 执行复杂的搜索查询
工具列表
- Cluster 工具:
opensearch_cluster_health
:获取集群健康状态opensearch_cluster_stats
:获取集群统计信息- Document 工具:
opensearch_bulk
:批量操作文档opensearch_get_document
:获取单个文档- Index 工具:
opensearch_list_indices
:列出集群中的索引opensearch_create_index
:创建索引opensearch_delete_index
:删除索引opensearch_get_index
:获取索引信息- Search 工具:
opensearch_search
:执行搜索查询
常见问题解答
- 如何启动本地 OpenSearch 集群?
使用
docker-compose up -d
命令启动本地集群。 - 如何停止集群?
使用
docker-compose down -v
命令停止集群。
使用教程
使用依赖
- 安装 Python 3.10+ 或更高版本
- 安装 uv
安装教程
从远程仓库运行
{
"mcpServers": {
"opensearch-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/loupipalien/opensearch-mcp-server",
"opensearch-mcp-server"
],
"env": {
"OPENSEARCH_HOSTS": "your_opensearch_cluster_hosts",
"OPENSEARCH_USERNAME": "your_opensearch_cluster_username",
"OPENSEARCH_PASSWORD": "your_opensearch_cluster_password"
}
}
}
}
从本地仓库运行
{
"mcpServers": {
"opensearch-mcp-server": {
"command": "uv",
"args": [
"--directory",
"path/to/repo/src/opensearch_mcp_server",
"run",
"server.py"
],
"env": {
"OPENSEARCH_HOSTS": "your_opensearch_cluster_hosts",
"OPENSEARCH_USERNAME": "your_opensearch_cluster_username",
"OPENSEARCH_PASSWORD": "your_opensearch_cluster_password"
}
}
}
}
调试方式
- 启动本地 OpenSearch 集群:
export OPENSEARCH_INITIAL_ADMIN_PASSWORD=your_opensearch_cluster_password
docker-compose up -d
- 停止集群:
docker-compose down -v