MCP ExplorerExplorer

Everything Mcp Server

@peterparker57on 19 days ago
1 MIT
FreeCommunity
AI Systems
MCP server that provides instant file search capabilities using Everything's native SDK. Integrates Everything's powerful search engine with AI tooling through the Model Context Protocol.

Overview

What is Everything Mcp Server

everything-mcp-server is a Model Context Protocol (MCP) server that offers instant file search capabilities by utilizing Everything’s native SDK. It integrates Everything’s powerful search engine with AI tools, enabling rapid file system searches through the MCP interface.

Use cases

Use cases include quickly locating files in large directories, managing duplicate files, searching for specific content within documents, and integrating file search capabilities into applications or services.

How to use

To use everything-mcp-server, you can interact with its API to perform file searches. You can utilize the provided tools such as search_files for basic searches and search_files_advanced for more complex queries with various filtering options.

Key features

Key features include instant file search, advanced filtering options (by path, extension, size, date modified), duplicate file detection, content search within files, high performance through direct API access, and read-only access to ensure safe file system interactions.

Where to use

everything-mcp-server can be used in various fields such as software development, data management, system administration, and any environment where efficient file searching is critical.

Content

Everything MCP Server

License: MIT
Node.js
TypeScript

A Model Context Protocol (MCP) server that provides instant file search capabilities using Everything’s native SDK. This server integrates Everything’s powerful search engine with AI tooling, enabling lightning-fast file system searches through the MCP interface.

Features

  • 🔍 Instant File Search: Leverage Everything’s instant indexing for near-instantaneous file searches
  • 🎯 Advanced Filtering: Search by path, extension, size, date modified, and more
  • 🔄 Duplicate Detection: Find duplicate files across your system
  • 📄 Content Search: Search within file contents (requires Everything content indexing)
  • High Performance: Direct API access through native SDK integration
  • 🛡️ Read-Only: Safe, non-destructive file system access

Tools Provided

1. search_files

Basic file search with regex and case sensitivity options.

Parameters:

  • query (string): Search query for file names
  • maxResults (number, optional): Maximum results to return (default: 100)
  • matchCase (boolean, optional): Enable case-sensitive search
  • matchWholeWord (boolean, optional): Match whole words only
  • regex (boolean, optional): Enable regular expression search

2. search_files_advanced

Advanced search with comprehensive filtering options.

Parameters:

  • query (string): Search query for file names
  • path (string, optional): Limit search to specific path
  • extension (string, optional): Filter by file extension (e.g., ‘txt’, ‘pdf’)
  • size (string, optional): Filter by file size (e.g., ‘>1mb’, ‘<100kb’, ‘1gb…2gb’)
  • dateModified (string, optional): Filter by date modified (e.g., ‘today’, ‘yesterday’, ‘thisweek’, ‘2024’)
  • maxResults (number, optional): Maximum results to return (default: 100)
  • matchCase (boolean, optional): Enable case-sensitive search
  • matchWholeWord (boolean, optional): Match whole words only
  • regex (boolean, optional): Enable regular expression search
  • sortBy (enum, optional): Sort results by field (name_asc, name_desc, path_asc, path_desc, size_asc, size_desc, date_asc, date_desc)

3. find_duplicates

Find duplicate files by filename.

Parameters:

  • filename (string): Filename to search for duplicates
  • path (string, optional): Limit search to specific path
  • maxResults (number, optional): Maximum results to return (default: 50)

4. search_content

Search for text content within files.

Parameters:

  • content (string): Text content to search for within files
  • fileTypes (string, optional): Limit to specific file types (e.g., ‘txt;doc;pdf’)
  • path (string, optional): Limit search to specific path
  • maxResults (number, optional): Maximum results to return (default: 50)

Prerequisites

  1. Everything Application: Must be installed and running

  2. Node.js: Version 18+ with ES module support

  3. Windows OS: Required for Everything SDK compatibility

Installation

  1. Clone the repository:
git clone https://github.com/peterparker57/everything-mcp-server.git
cd everything-mcp-server
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Configuration

Add the server to your MCP settings file:

{
  "mcpServers": {
    "everything": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": [
        "path/to/everything-mcp-server/build/index.js"
      ],
      "disabled": false,
      "env": {},
      "alwaysAllow": [
        "search_files",
        "search_files_advanced",
        "find_duplicates",
        "search_content"
      ]
    }
  }
}

Usage Examples

Basic File Search

Search for: "msbuild.exe"
Options: Case sensitive, max 50 results

Advanced Search with Filters

Query: "*.pdf"
Path: "C:\\Documents"
Size: ">1mb"
Date Modified: "thisweek"
Sort: "size_desc"

Find Duplicates

Filename: "config.json"
Path: "C:\\Projects" (optional)

Content Search

Content: "function main"
File Types: "js;ts;py"
Path: "C:\\Code" (optional)

Architecture

Technology Stack

  • Language: TypeScript
  • Framework: MCP SDK (@modelcontextprotocol/sdk)
  • FFI Library: koffi (for native DLL integration)
  • Module System: ES modules
  • Target: Everything SDK (Windows file search utility)

Key Components

  1. Main Server (src/index.ts): Core MCP server implementation
  2. Everything SDK: Native Windows DLLs for file search
  3. Build System: TypeScript compilation to ES modules
  4. Configuration: Package.json with ES module support

Development

Building

npm run build

Testing

Start the server directly to test:

node build/index.js

Project Structure

everything-mcp-server/
├── src/
│   └── index.ts          # Main server implementation
├── EverythingSDK/        # Everything native SDK files
│   └── dll/
│       ├── Everything32.dll
│       └── Everything64.dll
├── build/                # Compiled JavaScript output
├── package.json          # Project configuration
├── tsconfig.json         # TypeScript configuration
└── README.md            # This file

Troubleshooting

“Everything search client is not running”

  • Start Everything application
  • Ensure it’s not running in portable mode without service

“Connection closed” MCP error

  • Check that build directory exists and contains index.js
  • Verify Node.js path in MCP configuration
  • Ensure Everything application is running

ES Module errors

  • Verify package.json has "type": "module"
  • Check import statements use .js extensions
  • Ensure koffi is imported as default export

Performance Notes

  • Everything indexes files instantly, searches are near-instantaneous
  • Content search requires Everything to have content indexing enabled
  • Large result sets are automatically limited (configurable per tool)
  • Direct API access provides better performance than command-line interface

Security Considerations

  • Server provides read-only file system access through Everything
  • No file modification capabilities
  • Respects Everything’s own security and indexing settings
  • Content search limited to files Everything has indexed

Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Related Projects

  • MCP SDK - TypeScript SDK for Model Context Protocol
  • Everything - The file search utility this server integrates with

Note: This is a Windows-specific MCP server that requires the Everything application to be installed and running. For cross-platform file search solutions, consider other MCP servers or file search tools.

Tools

No tools

Comments