Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Elasticsearch tools: indices, mappings, query DSL search, ES|QL, and shards.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"indexsearch": {
"command": "npx",
"args": [
"-y",
"@reneturcios/indexsearch",
"mcp"
]
}
}
}在终端中运行这条命令
claude mcp add indexsearch -- npx -y @reneturcios/indexsearch mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"indexsearch": {
"command": "npx",
"args": [
"-y",
"@reneturcios/indexsearch",
"mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"indexsearch": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@reneturcios/indexsearch",
"mcp"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 CloudCorpRecords 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.0)于7天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js, Docker。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
indexsearch gives an agent — or you, at a terminal — the five core Elasticsearch tools: see which indices exist, read an index's field mappings, run a search in query DSL, run an ES|QL query, and inspect shard placement. Everything goes through the cluster's own HTTP API; there is no bundled client library and no second query language to learn.
Each tool call is first mapped to a plain HTTP request — method, path, and JSON body — and that mapping is the whole contract: GET /_cat/indices?format=json, GET /{index}/_mapping, POST /{index}/_search, POST /_query, GET /_cat/shards. Transport is an injectable fetch function, which is what the test suite drives; no live cluster is needed to verify behaviour, and no result is ever invented when a cluster is unreachable or answers with an error.
npx @reneturcios/indexsearch list-indices
Or run the container image:
docker run -i ghcr.io/cloudcorprecords/indexsearch
The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead, and pass the cluster settings as environment variables (-e ES_URL=...).
| Variable | Meaning | Default |
|---|---|---|
ES_URL | Cluster base URL | http://localhost:9200 |
INDEXSEARCH_URL | Fallback cluster base URL when ES_URL is unset | — |
ES_API_KEY | API key, sent as Authorization: ApiKey | unset (no auth) |
# List indices
indexsearch list-indices
indexsearch mappings products
indexsearch search products '{"match":{"name":"shoes"}}'
indexsearch esql 'FROM products | SORT price DESC | LIMIT 5'
indexsearch shards indexsearch shards products
indexsearch mcp
indexsearch --version
Exit codes: 0 on success, 1 when the request or the cluster fails (the error names the HTTP status or the unreachable URL), 2 for usage errors.
Index names are validated before any request is made: names carrying characters Elasticsearch forbids in index names (whitespace, /, *, ?, ", <, >, |, ,, #, :, \) are rejected locally.
One bin serves both faces. The mcp subcommand starts a stdio MCP server:
npx -y @reneturcios/indexsearch mcp
MCP client configuration:
{
"mcpServers": { "indexsearch": { "command": "npx", "args": ["-y", "@reneturcios/indexsearch", "mcp"], "env": { "ES_URL": "http://localhost:9200" } } } }
| Tool | Required | Optional | HTTP request | What it does | |
|---|---|---|---|---|---|
list_indices | — | — | GET /_cat/indices?format=json | List all available indices | |
get_mappings | index | — | GET /{index}/_mapping | Get field mappings for an index | |
search | index, query (object) | — | POST /{index}/_search with { "query": ... } | Search using query DSL | |
esql | query (string) | — | POST /_query with { "query": ... } | Run an ES | QL query |
get_shards | — | index | GET /_cat/shards[/{index}]?format=json | Get shard information for all or specific indices |
Replies are returned as the cluster's parsed JSON. A non-JSON reply is returned under a raw key rather than being dropped, and an empty reply reads as an empty object.
npm install
npm run build # tsc -> dist/ npm test # node test runner over test/*.test.ts, no network, no live cluster npm run dev # run the CLI from source via tsx
Request construction, validation, header and body assembly, error surfacing, and settings resolution are all covered by tests that drive the core through a fake fetch and assert the exact paths and bodies.
MIT — see LICENSE.