使用说明

项目简介

Elasticsearch MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在连接任何 MCP 客户端(如 Claude Desktop)与 Elasticsearch 数据。它允许用户通过自然语言对话与 Elasticsearch 索引进行交互,为大型语言模型 (LLM) 应用提供强大的数据访问能力。

主要功能点

  • 索引列表 (List Indices): 查看 Elasticsearch 集群中所有可用的索引。
  • 映射获取 (Get Mappings): 检查指定索引的字段映射,了解数据结构。
  • 搜索 (Search): 使用完整的 Elasticsearch Query DSL 功能执行搜索查询,并自动高亮显示关键词。

安装步骤

  1. 安装 Node.js: 确保已安装 Node.js (v22 或更高版本)。
  2. 安装 NPM 包: 使用 npm 安装 Elasticsearch MCP Server。
    npm install -g @elastic/mcp-server-elasticsearch
  3. 配置环境变量: 设置 Elasticsearch 连接 URL 和 API 密钥。可以通过环境变量或在 Claude Desktop 的 MCP 服务器配置中设置。
    • 'ES_URL': 您的 Elasticsearch 服务器 URL,例如 'http://localhost:9200'。
    • 'ES_API_KEY': 用于 Elasticsearch 身份验证的 API 密钥。

服务器配置

在 MCP 客户端(如 Claude Desktop App)中,您需要配置 Elasticsearch MCP Server 的启动信息。以下是 Claude Desktop App 的 'claude_desktop_config.json' 配置文件示例:

{
  "mcpServers": {
    "elasticsearch-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@elastic/mcp-server-elasticsearch"
      ],
      "env": {
        "ES_URL": "your-elasticsearch-url",  // 替换为您的 Elasticsearch 服务器 URL
        "ES_API_KEY": "your-api-key"      // 替换为您的 Elasticsearch API 密钥
      }
    }
  }
}

配置参数说明:

  • 'server name': 'elasticsearch-mcp-server' (服务器名称,可自定义)
  • 'command': 'npx' (Node.js 包执行器,用于运行 npm 包)
  • 'args':
    • '-y': (npx 参数,自动确认安装包)
    • '@elastic/mcp-server-elasticsearch': (要执行的 npm 包名称,即 Elasticsearch MCP Server)
  • 'env': 环境变量配置
    • 'ES_URL': Elasticsearch 服务器 URL
    • 'ES_API_KEY': Elasticsearch API 密钥

基本使用方法

  1. 启动 MCP 客户端: 打开配置了 Elasticsearch MCP Server 的 MCP 客户端应用(如 Claude Desktop App)。
  2. 发起对话: 在 MCP 客户端中发起新的对话。MCP 服务器应该会自动连接。
  3. 提问关于 Elasticsearch 数据的问题: 使用自然语言提问关于 Elasticsearch 数据的问题,例如:
    • "What indices do I have in my Elasticsearch cluster?" (我的 Elasticsearch 集群中有哪些索引?)
    • "Show me the field mappings for the 'products' index" (展示 'products' 索引的字段映射)
    • "Find all orders over $500 from last month" (查找上个月超过 500 美元的所有订单)

服务器会将您的自然语言问题转换为 Elasticsearch 查询,并将结果返回给 MCP 客户端,最终呈现给用户。

信息

分类

数据库与文件