EV

Everything Search MCP Server: Multi-OS File Search

Search files fast with the Everything Search MCP server across Windows (Everything SDK), macOS (mdfind) and Linux (locate/plocate).

Quick Install
npx -y @mamertofabian/mcp-everything-search

Overview

Everything Search MCP Server exposes a fast cross-platform file search backend to tools and language models through the Model Context Protocol (MCP). It connects to native indexers on each operating system — Everything (Windows), Spotlight/mdfind (macOS), and locate/plocate (Linux) — and exposes a consistent, JSON-driven interface for queries and results. That lets agents, assistants or developer tools ask for file lists, content-aware filters and metadata without needing OS-specific code.

This is useful when you need programmatic, low-latency file discovery across heterogeneous environments. Instead of implementing separate integrations for each platform, the MCP server normalizes results and provides common options (query, path/pattern filters, limits, and sort). It is well suited for LLM tool integrations, remote assistants and automation hooks that need to reference or attach files from a host filesystem.

Features

  • Native indexer integrations:
    • Windows: Everything SDK
    • macOS: Spotlight via mdfind
    • Linux: locate/plocate (with updatedb)
  • Single MCP-compatible API that normalizes results across OSes
  • Query filters: glob patterns, path filters, size and time ranges
  • Result paging and limit controls
  • Lightweight, low-latency responses suitable for agents and tools
  • Configurable per-OS backend enable/disable and settings
  • Works with local binaries and system indexers (no full-text reindex required)

Installation / Configuration

Prerequisites (per OS)

  • Windows: Install Everything and the Everything SDK so the server can call into the native indexer.
  • macOS: Spotlight is available by default; ensure the target paths are indexed.
  • Linux: Install locate or plocate and run updatedb to build or refresh the index.

Clone and run the server (example)

# clone the repository
git clone https://github.com/mamertofabian/mcp-everything-search.git
cd mcp-everything-search

# build/run using the toolchain described in the project README
# common examples:
# - run a pre-built binary (if provided)
./mcp-everything-search --config ./config.yml

# - or run from source (if the project uses Rust)
cargo build --release
./target/release/mcp-everything-search --config ./config.yml

Example configuration (config.yml)

server:
  host: 0.0.0.0
  port: 3000

backends:
  windows:
    enabled: true
    sdk_path: "C:\\Program Files\\Everything\\Everything64.dll"

  macos:
    enabled: true

  linux:
    enabled: true
    indexer: "plocate"

search:
  default_limit: 50
  case_sensitive: false

Platform tips

  • Windows: Point the config to the Everything SDK DLL or ensure the SDK is on PATH. Allow the server process to access the Everything service.
  • macOS: Spotlight must be enabled for indexed locations. Use mdls/mdfind as supported by the OS.
  • Linux: Use plocate for faster searches if available; run sudo updatedb periodically to refresh the locate database.

Available Resources

  • Native indexers:
    • Everything (Windows) — Everything SDK for programmatic access
    • mdfind / Spotlight (macOS)
    • locate / plocate and updatedb (Linux)
  • Configuration file (YAML) to enable/disable backends and tune limits
  • MCP-compatible tool contract (exposes a standardized search tool for LLM integrations)
  • Example clients: simple HTTP or MCP client snippets (see repo examples)

Platform command table

PlatformSystem indexerTypical command
WindowsEverything SDKEverything SDK DLL / Windows API
macOSSpotlightmdfind / mdls
Linuxplocate/locateupdatedb / locate

Use Cases

  • LLM-assisted codebase search: An agent can call the MCP search tool to list project files matching names or patterns (e.g., “find all Dockerfiles and .env files
Tags:search