Elasticsearch MCP 服务器
介绍
Elasticsearch 模型上下文协议 (MCP) 服务器是基于 Spring AI MCP 开发的服务器应用,旨在通过 MCP 轻松定义各种数据处理工作流,并在 Elasticsearch 集群中高效地索引和搜索结果。
主要特点
自动 MCP 工具注册和执行:在 Spring Boot 环境中使用
@Tool注解定义的功能会自动注册到 MCP 服务器。这允许外部客户端(例如 Claude、FastMCP CLI)通过基于 JSON-RPC 的标准通信方式调用这些函数。Elasticsearch 集群集成:使用官方 Elasticsearch Java 客户端轻松调用主要的 Elasticsearch API,例如集群健康检查、索引映射查找、文档索引和搜索,并以 MCP 工具的形式提供结果。
可扩展架构:模块化的包结构允许灵活地分离和管理不同 Elasticsearch 版本的客户端设置。它还可以轻松添加新工具或外部集成功能。
可用的 MCP 工具
get_cluster_health:返回有关 Elasticsearch 集群状态的基本信息。get_cluster_statistics:检索综合集群统计信息,包括集群名称、UUID、状态、节点角色、操作系统和 JVM 资源使用情况、索引计数和分片指标。get_cat_mappings:检索特定 Elasticsearch 索引的字段映射信息。get_cat_indices:检索 Elasticsearch 中所有索引的列表。get_cat_indices_by_name:检索与指定索引名称或通配符模式匹配的索引列表。get_cat_aliases:检索 Elasticsearch 中所有别名的列表。get_cat_aliases_by_name:检索与指定别名或通配符模式匹配的别名列表。get_document_search_by_index:使用 AI 生成的 queryDSL 在 Elasticsearch 索引中搜索文档。get_shard_allocation:返回有关 Elasticsearch 集群中的分片分配的信息。get_shard_allocation_for_node:返回有关 Elasticsearch 集群中特定节点的分片分配的信息。
技术堆栈
语言:Java 17
框架:Spring Boot 3.4.5,Spring AI MCP
搜索引擎:Elasticsearch 7.16 或更高版本
构建工具:Gradle 8.12
先决条件
构建和运行此项目需要以下软件:
JDK:版本 17 或更高版本
运行 Elasticsearch 实例:版本 7.16 或更高版本
MCP 客户端(例如 Claude Desktop)
安装和执行
以下是如何在本地环境中设置和运行项目:
1. 克隆源代码
2.配置mcp-server模块中的application.yml
打开位于mcp-server/src/main/resources/application.yml的application.yml文件来设置您的 Elasticsearch 集群信息。
3. 构建
使用以下命令构建项目:
构建的 JAR 文件可以在
mcp-server/build/libs/目录中找到。
4. 配置 MCP 客户端
启动您的 MCP 客户端。(您可以在 MCP客户端列表中找到 MCP 客户端列表。本指南以 Claude Desktop 为例。)
在您的 MCP 客户端的设置菜单中,导航至“开发人员”>“MCP 服务器”。
点击“编辑配置”按钮,添加新的 MCP 服务器配置,内容如下。(您必须使用之前构建的 JAR 文件的实际路径。)
{ "mcpServers": { "elasticsearch-server": { "command": "java", "args": [ "-Dusername=YOUR_USERNAME", "-Dpassword=YOUR_PASSWORD", "-jar", "/path/to/your/mcp-server.jar" ] } } }-Dusername(可选):指定访问 Elasticsearch 集群所需的用户 ID。(例如,-Dusername=elastic)-Dpassword(可选):指定访问 Elasticsearch 集群所需的密码。(例如,-Dpassword=yoursecurepassword)/path/to/your/mcp-server.jar:必须将其替换为您构建的mcp-server.jar文件的实际完整路径。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Elasticsearch MCP 服务器
Related MCP Servers
- MIT License
- MIT License
- MIT License