everything-mcp

everything-mcp

A small, dependency-light MCP server that gives AI agents instant Windows file and folder discovery through Voidtools Everything.

Category
访问服务器

README

Everything Search MCP for AI Agents

简体中文 · Agent roadmap / 智能体路线

A small, dependency-light MCP server that gives AI agents instant Windows file and folder discovery through Voidtools Everything.

Instead of recursively scanning drives, an agent can ask Everything's existing NTFS filename index for candidate paths, then open only the files that matter.

Where is it?  → Everything MCP
What is it?   → file reader / OCR / code tools
What next?    → agent reasoning and explicit actions

Why this fits agents

Humans often want a search UI with previews. An agent usually needs a reliable absolute path first. Once it has the path, it can select the right reader for Markdown, PDF, Office documents, images, source trees, or archives.

This creates a cheap progressive-disclosure flow:

  1. Search names and paths.
  2. Reduce candidates by type and location.
  3. Verify existence, size, and identity when needed.
  4. Read only selected files.
  5. Perform mutations through separate, auditable tools.

Features

  • MCP stdio server with both newline and Content-Length framing.
  • everything_search: return matching absolute paths.
  • everything_count: count broad queries before fetching results.
  • everything_status: report ES discovery and live IPC health.
  • Files-only and folders-only filters.
  • UTF-8 MCP input and GB18030 decoding for ES output on Chinese Windows.
  • Automatic Everything startup attempt when IPC is unavailable.
  • ES CLI first, optional local Everything HTTP JSON fallback for search.
  • No npm dependencies; Node.js built-ins only.
  • Bundled unmodified Windows x64 Everything and ES binaries, upstream archives, license, and checksums.
  • Optional agent skill under skills/everything-search/.

Requirements

  • Windows 10 or Windows 11 x64.
  • Node.js 18 or newer.
  • Everything IPC access.

The repository already contains Everything 1.4.1.1032 portable and ES 1.1.0.30 x64 under vendor/voidtools/. You may also use a normal system installation of Everything.

NTFS indexing requires the Everything service or an elevated Everything process. The recommended setup is to install/enable the official Everything service once, then let this MCP server connect through local IPC.

Quick start

git clone https://github.com/NingCiQiu/everything-mcp.git
cd everything-mcp

# Optional diagnostics
powershell -ExecutionPolicy Bypass -File .\bin\doctor.ps1

# Start the bundled portable Everything UI if no system instance is running
.\bin\start-bundled-everything.cmd

# Protocol and checksum tests
npm test

# Real IPC search/count smoke test
npm run smoke

If portable Everything cannot index NTFS as a standard user, install the official service from Everything's options or run Everything elevated. The MCP server itself does not need administrator rights once IPC is available.

Connect to an MCP client

Use a standard stdio MCP configuration and replace the repository path:

{
  "mcpServers": {
    "everything-search": {
      "command": "node",
      "args": [
        "C:/tools/everything-mcp/src/everything-mcp.mjs"
      ]
    }
  }
}

A generic example is available at examples/mcp.json.

Hermes Agent

Hermes uses mcp_servers in its config.yaml:

mcp_servers:
  everything-search:
    command: "node"
    args:
      - "C:/tools/everything-mcp/src/everything-mcp.mjs"
    connect_timeout: 60
    timeout: 120

Then restart Hermes and verify:

hermes mcp list
hermes mcp test everything-search

See examples/hermes-config.yaml. The tools are exposed with a client-specific prefix such as mcp_everything_search_everything_search.

Tools

everything_search

{
  "query": "*.pdf architecture",
  "max_results": 20,
  "files_only": true
}

Returns matching full paths. max_results is clamped to 1–500.

everything_count

{
  "query": "*.zip",
  "files_only": true
}

Returns the number of matches. Use it before broad searches.

everything_status

Takes no arguments. Reports the selected es.exe, whether Everything IPC is live, the discovered Everything executable, and checked backend candidates.

Backend discovery

The server checks ES in this order:

  1. EVERYTHING_ES environment variable.
  2. es.exe next to the server source.
  3. Bundled vendor/voidtools/es.exe.
  4. es.exe on PATH.
  5. Standard Everything installation directories.

If ES search fails, search can fall back to the local HTTP JSON endpoint configured by EVERYTHING_HTTP_URL (default http://127.0.0.1/). Count requires ES and live IPC.

Limitations

  • Everything is optimized for names and paths. content: searches are not pre-indexed and may be slow.
  • Local NTFS volumes are the fast path. Network shares, non-NTFS volumes, offline disks, and cloud placeholders may need different indexing settings.
  • A result is a candidate, not proof of identity. Verify the direct path, byte size, and SHA-256 before archival or destructive work.
  • Filenames are not unique. Agents must handle duplicate names explicitly.
  • Complex Everything query syntax can be fragile through wrappers. If a combined query returns nothing, retry with an exact basename or split keywords before concluding that a file does not exist.
  • Paths can expose sensitive metadata. Keep IPC/HTTP local and apply higher-level allow/deny policies on sensitive systems.

Agent-oriented roadmap

The next useful layer is not content crawling. It is safer, structured discovery:

  • JSON metadata results with size, timestamps, type, and volume state.
  • First-class root, extension, exact-basename, pagination, and sorting parameters.
  • Automatic false-negative retries for complex queries.
  • Optional existence/size/SHA-256 verification.
  • Allow/deny roots and sensitive path redaction.
  • Routing from discovered paths to specialized document readers.
  • Reversible archive manifests: original_path → staged_path → remote_path.

See docs/AGENT_ROADMAP.md.

Privacy model

This server is read-only and exposes no copy, move, delete, or content-reading tools. It returns file and folder paths, which are still sensitive metadata. See SECURITY.md.

Third-party software

Bundled Everything and ES binaries belong to Voidtools and are redistributed under their upstream license. See THIRD_PARTY_NOTICES.md and vendor/voidtools/LICENSE.txt.

License

The MCP server source and repository documentation are MIT licensed. Third-party files retain their upstream licenses.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选