Skip to main content
Glama
uwx

everything-mcp

by uwx

everything-mcp

MCP (Model Context Protocol) server for Everything — the lightning-fast Windows file search engine.

Uses ffi-rs to call the Everything SDK natively and @modelcontextprotocol/sdk for the MCP server protocol.

Prerequisites

  • Windows (the Everything SDK is Windows-only)

  • Everything 1.5+ installed and running (download)

  • Node.js 18+ and pnpm

Related MCP server: local-stdio-mcp

Installation

pnpm install
pnpm build

Usage

Running the MCP server

node dist/index.js

The server communicates via stdin/stdout (MCP stdio transport).

Configuring in Claude Desktop / VS Code Copilot

Add to your MCP client configuration:

{
  "mcpServers": {
    "everything": {
      "command": "node",
      "args": ["w:\\projects\\everything-mcp\\dist\\index.js"]
    }
  }
}

Environment Variables

Variable

Description

Default

EVERYTHING_SDK_DIR

Path to the Everything SDK directory

./Everything-SDK-3.0.0.9/dll

EVERYTHING_DLL_PATH

Full path to the Everything DLL

$SDK_DIR/Everything3_x64.dll

Tools

Search for files and folders using Everything search syntax.

Parameters:

  • query (required) — Search query using Everything syntax

  • maxResults — Max results (default: 50, max: 1000)

  • offset — Zero-based offset for pagination

  • matchCase — Case-sensitive search

  • matchWholeWord — Match whole words only

  • matchPath — Match against full path

  • regex — Treat query as regex

Everything search syntax examples:

  • *.txt — all .txt files

  • foo bar — files containing both "foo" AND "bar"

  • foo|bar — files containing "foo" OR "bar"

  • ext:jpg size:>1mb — JPEGs larger than 1 MB

  • folder:node_modules — folders named node_modules

  • content:TODO — files containing "TODO" in their content

  • datemodified:today — files modified today

  • parent:C:\Projects — files under C:\Projects

everything_version

Get the version information of the running Everything instance.

everything_status

Check if Everything is running and its database is loaded.

everything_file_info

Get Windows file attributes and run count for a specific file path.

Parameters:

  • path (required) — Full path to the file or folder

Architecture

src/
├── index.ts              # MCP server entry point (tools, request handlers)
├── everything-client.ts  # High-level Everything client wrapper
└── ffi-bindings.ts       # Low-level FFI bindings to Everything3_x64.dll

License

MIT

Available Tools

4 tools
everything_file_infoA

Get file attributes (Windows attributes, run count) for a specific file path using Everything.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesFull path to the file or folder.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It indicates the type of data returned (Windows attributes, run count) and the need for a path, but it does not disclose potential errors, permission requirements, whether the tool is a safe read-only operation, or dependencies like the Everything service running. This is a minimal but not fully transparent disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the action and key details (what it gets, for which path, using which tool). There is no wasted words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has low complexity (one parameter, no output schema, no annotations). The description explains the purpose and hints at the output content ('Windows attributes, run count') but does not specify the output format or behavior on invalid inputs. Given the lack of output schema, a slightly richer description would improve completeness, but it is adequate for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides a complete description for the single parameter 'path' ('Full path to the file or folder'), so the baseline is 3. The tool description adds no extra semantic detail about the parameter beyond what the schema contains.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Get file attributes' for 'a specific file path.' It also lists the types of information included ('Windows attributes, run count') and mentions the tool's context ('using Everything'), which clearly distinguishes it from sibling tools like everything_search (search for files) and everything_version (version info).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: when you need file attributes for a given path. It does not explicitly state when to prefer this tool over siblings, nor does it provide exclusions or alternative recommendations. The context is clear but not elaborated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

everything_statusA

Check if the Everything search engine is running and its database is loaded.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full behavioral burden. It states the core behavior (status check) but does not disclose whether the tool starts the engine, the return format, or side effects. Given the simplicity of a status check, some might expect a boolean or status object, but that is not explicitly conveyed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no fluff. It immediately states the action and subject, making it easy to parse. Every word carries meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (no parameters, no output schema). However, since no output schema exists, the description should explain what the return value is, but it does not. For a status check, knowing whether it returns a boolean, a status object, or a string is important for downstream use. The description is adequate for selection but not fully complete for invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description adds no parameter details because none exist. The empty schema is fully consistent, and the description does not need to compensate for undocumented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks whether the Everything search engine is running and its database is loaded. The verb 'Check' and specific resources ('running', 'database loaded') distinguish it from siblings like everything_search (searching) and everything_version (version info).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this is a pre-flight check before using other Everything tools, but it does not explicitly say when to use it or mention alternatives. There is no exclusion or comparison to siblings, so the usage context is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

everything_versionA

Get the version information of the running Everything search engine.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. The verb 'Get' and the resource clearly indicate a read-only retrieval operation with no side effects. For a simple version check, this is sufficiently transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no extraneous words. Every word earns its place, conveying the exact purpose without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no annotations, no output schema), the description fully specifies what it does. The lack of return format is acceptable because the tool's output is self-evident and the description is complete for its intended use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the empty schema is fully covered. Per the rule, a baseline of 4 is appropriate since there are no parameter details to describe.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Get') and identifies the exact resource ('version information of the running Everything search engine'). This distinguishes it from sibling tools like everything_search and everything_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies the tool is used when version information is needed. However, it does not explicitly mention alternatives or provide exclusions, though the sibling tools are clearly distinct in purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updatesv1.0.0
    • First observedeverything_file_info
    • First observedeverything_search
    • First observedeverything_status
    • First observedeverything_version

TDQS

A4.1/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: searching, retrieving file attributes, checking version, and checking service status. There is no overlap between them, so an agent can easily select the right one.

Naming Consistency4/5

All tools share the 'everything_' prefix and use snake_case, but the second part mixes nouns (file_info, version, status) and a verb (search). This is a minor deviation from a strict verb_noun pattern but remains predictable and readable.

Tool Count5/5

With 4 tools, the server is well-scoped for interacting with the Everything search engine. Each tool covers a necessary aspect without redundancy or bloat.

Completeness4/5

The tool surface covers the core functionality: searching, getting file metadata, and checking the engine's operational state. Minor gaps like advanced query analysis or database statistics exist but are not essential for basic usage.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Integrates with Everything Search Engine to provide lightning-fast file search capabilities across Windows systems using natural language queries and advanced filtering options through MCP-compatible applications.
    1
    ISC
  • F
    license
    Not graded
    quality
    D
    maintenance
    A minimal and extensible local MCP server that provides core utilities like ping and echo alongside a file search tool integrated with the Everything CLI. It enables fast local file searching and service testing through a standardized stdio transport layer.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables instant file searches on Windows using Everything's native SDK, supporting advanced filters, duplicate detection, and content search through MCP tools.
    5
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/uwx/everything-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server