modelscope·@elastic/mcp-server-elasticsearch
将Claude和其他MCP客户端连接到Elasticsearch数据,允许用户通过自然语言对话与其Elasticsearch索引进行交互。
通过模型上下文协议 (MCP) 直接从任何 MCP 客户端(如 Claude Desktop)连接到您的 Elasticsearch 数据。
此服务器使用 Model Context Protocol 将代理连接到您的 Elasticsearch 数据。它允许您通过自然语言对话与您的 Elasticsearch 索引进行交互。
<a href="https://glama.ai/mcp/servers/@elastic/mcp-server-elasticsearch"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@elastic/mcp-server-elasticsearch/badge" alt="Elasticsearch Server MCP server" /> </a>list_indices: 列出所有可用的 Elasticsearch 索引get_mappings: 获取特定 Elasticsearch 索引的字段映射search: 使用提供的查询 DSL 执行 Elasticsearch 搜索get_shards: 获取所有或特定索引的分片信息https://github.com/user-attachments/assets/5dd292e1-a728-4ca7-8f01-1380d1bebe0c
[!TIP] 使用 Elasticsearch MCP 服务器最简单的方法是通过已发布的 npm 包。
配置 MCP 客户端
编辑配置 并添加一个新的 MCP 服务器,配置如下:{
"mcpServers": {
"elasticsearch-mcp-server": {
"command": "npx",
"args": [
"-y",
"@elastic/mcp-server-elasticsearch"
],
"env": {
"ES_URL": "your-elasticsearch-url",
"ES_API_KEY": "your-api-key"
}
}
}
}
开始对话
Elasticsearch MCP 服务器支持配置选项以连接到您的 Elasticsearch:
[!NOTE] 您必须提供 API 密钥或同时提供用户名和密码进行身份验证。
| 环境变量 | 描述 | 是否必需 |
|---|---|---|
ES_URL | 您的 Elasticsearch 实例 URL | 是 |
ES_API_KEY | 用于身份验证的 Elasticsearch API 密钥 | 否 |
ES_USERNAME | 用于基本身份验证的 Elasticsearch 用户名 | 否 |
ES_PASSWORD | 用于基本身份验证的 Elasticsearch 密码 | 否 |
ES_CA_CERT | 自定义 CA 证书路径,用于 Elasticsearch SSL/TLS | 否 |
[!NOTE] 如果您想要修改或扩展 MCP 服务器,请遵循以下本地开发步骤。
使用正确的 Node.js 版本
nvm use
安装依赖项
npm install
构建项目
npm run build
在 Claude Desktop App 中本地运行
编辑配置 并添加一个新的 MCP 服务器,配置如下:{
"mcpServers": {
"elasticsearch-mcp-server-local": {
"command": "node",
"args": [
"/path/to/your/project/dist/index.js"
],
"env": {
"ES_URL": "your-elasticsearch-url",
"ES_API_KEY": "your-api-key"
}
}
}
}
使用 MCP 检查器进行调试
ES_URL=your-elasticsearch-url ES_API_KEY=your-api-key npm run inspector
这将启动 MCP 检查器,允许您调试和分析请求。您应该会看到:
Starting MCP inspector...
Proxy server listening on port 3000
🔍 MCP Inspector is up and running at http://localhost:5173 🚀
我们欢迎社区的贡献!有关如何贡献的详细信息,请参阅 贡献指南。
[!TIP] 以下是一些您可以使用 MCP 客户端尝试的自然语言查询。
[!WARNING] 避免使用集群管理员权限。创建具有有限范围的专用 API 密钥,并在索引级别应用细粒度的访问控制,以防止未经授权的数据访问。
您可以创建一个具有最小权限的专用 Elasticsearch API 密钥来控制对数据的访问:
POST /_security/api_key
{
"name": "es-mcp-server-access",
"role_descriptors": {
"mcp_server_role": {
"cluster": [
"monitor"
],
"indices": [
{
"names": [
"index-1",
"index-2",
"index-pattern-*"
],
"privileges": [
"read",
"view_index_metadata"
]
}
]
}
}
}
该项目根据 Apache License 2.0 许可。
如果您遇到问题,请随时在 GitHub 仓库中打开一个 issue。
一个为大型语言模型(LLM)设计的、高可用的12306余票查询工具服务,现已搭载智能会话管理引擎。 12306-MCP-Server 将复杂的12306余票查询接口封装为符合 Model Context Protocol (MCP) 规范的工具集,允许AI Agent通过自然语言无缝查询实时火车票、中转换乘和经停站信息。 从 v1.0.0 版本开始,项目引入了全新的智能会话管理系统,通过会话池、动态User-Agent轮换和自动错误恢复机制,将服务的稳定性与反屏蔽能力提升至全新高度。
一个MCP服务器,它在本地git仓库上提供语义搜索功能,使用户能够克隆仓库、处理分支并通过矢量化代码块搜索代码。
一种模型上下文协议(MCP)服务器,可以帮助大型语言模型以最少的设置来索引、搜索和分析代码库。
通过向量嵌入技术,为项目提供记忆库和RAG上下文支持,以增强代码理解和管理,并与RooCode和Cline集成。
VariFlight航班信息服务的模型上下文协议(MCP)服务器实现方案。该服务器提供了多种工具,支持查询航班信息、天气数据及航班舒适度指标。
基于GTFS数据的Caltrain火车时刻查询服务,提供实时火车时刻表、站点查询和时间特定查询功能。