项目简介

mcp-server-opensearch 是一个 MCP (Model Context Protocol) 服务器,它允许大型语言模型(LLM)客户端通过工具访问和操作 OpenSearch 搜索引擎。该服务器实现了 MCP 协议,可以与支持 MCP 的客户端(如 Claude Desktop)集成,为 LLM 应用提供与 OpenSearch 交互的能力。

主要功能点

  • 工具 (Tools):
    • 'search': 在 OpenSearch 中执行搜索查询,并返回结果。允许用户根据 OpenSearch Query DSL 构建复杂的查询语句。
    • 'get_indices': 获取 OpenSearch 集群中索引的信息,方便用户了解和管理 OpenSearch 中的数据索引。
  • 资源 (Resources): 仓库的 README.md 提到实现了简单的笔记存储系统作为资源示例,但代码中未体现,实际主要关注 OpenSearch 的数据访问能力。
  • Prompt 模板 (Prompts): 仓库的 README.md 提到提供了一个 'summarize-notes' prompt,但代码中未体现,实际功能主要集中在工具上。

安装步骤

  1. 安装 Python 环境: 确保你的系统已安装 Python 和 'uv' 包管理器 (根据仓库 README.md 使用 'uv')。
  2. 克隆仓库: 'git clone https://github.com/gowtham3105/mcp_server_opensearch'
  3. 进入仓库目录: 'cd mcp_server_opensearch'
  4. 同步依赖: 'uv sync'
  5. 构建 (可选): 如果需要发布,可以执行 'uv build'。

服务器配置 (MCP 客户端配置)

要将 'mcp-server-opensearch' 配置为 MCP 客户端(例如 Claude Desktop)可用的服务器,您需要在客户端的配置文件中添加以下 JSON 配置。

对于开发环境 (Development/Unpublished Servers):

"mcpServers": {
  "mcp-server-opensearch": {
    "command": "uv",
    "args": [
      "--directory",
      "/path/to/mcp-server-opensearch",  // **请替换为 mcp-server-opensearch 仓库的实际路径**
      "run",
      "mcp-server-opensearch"
    ]
  }
}

对于发布环境 (Published Servers): (通常用于已打包发布的情况,对于本地开发测试,开发环境配置更常用)

"mcpServers": {
  "mcp-server-opensearch": {
    "command": "uvx",
    "args": [
      "mcp-server-opensearch"
    ]
  }
}

配置参数说明:

  • '"mcp-server-opensearch"': 服务器名称,在客户端配置中用于标识该服务器。
  • '"command"': 启动服务器的命令。 'uv' 和 'uvx' 是 'uv' 包管理器的命令,用于运行 Python 应用。
  • '"args"': 传递给命令的参数列表。
    • '--directory': (仅开发环境) 指定服务器代码所在的目录。 请务必将 '/path/to/mcp-server-opensearch' 替换为你的本地仓库路径。
    • 'run mcp-server-opensearch': 运行 'mcp_server_opensearch' 包的入口点 (在 'init.py' 中定义)。
    • 'uvx mcp-server-opensearch': (发布环境) 直接运行已安装的 'mcp-server-opensearch' 包。

重要: 请根据你的实际环境选择 "开发环境" 或 "发布环境" 配置,并 将 '/path/to/mcp-server-opensearch' 替换为你的本地仓库路径

基本使用方法

  1. 启动 MCP 服务器: 根据你选择的配置,MCP 客户端(如 Claude Desktop)将使用配置的命令和参数启动 'mcp-server-opensearch' 服务器。
  2. 在 MCP 客户端中使用工具: 在支持 MCP 协议的 LLM 客户端中,你可以调用 'search' 和 'get_indices' 工具来与 OpenSearch 交互。 例如,你可以指示 LLM 使用 'search' 工具查询 OpenSearch 中的信息,或使用 'get_indices' 工具获取索引列表。

注意: 'mcp-server-opensearch' 需要连接到 OpenSearch 数据库。 请确保你已配置 OpenSearch 连接信息,例如设置环境变量 'OPENSEARCH_URL', 'OPENSEARCH_USER', 'OPENSEARCH_PASSWORD'。

信息

分类

数据库与文件