File Search MCP logo

File Search MCP

by Kurogoma4D

File Search MCP is a specialized Model Context Protocol (MCP) server built with Rust for full-text search within a filesystem. It leverages the Tantivy search engine to efficiently index and search text files.

View on GitHub

Last updated: N/A

File Search MCP

A specialized Model Context Protocol (MCP) server for full-text search within a filesystem, built with Rust.

🔍 Overview

File Search MCP is a tool that provides powerful full-text search capabilities for text files in a specified directory. It uses the Tantivy search engine to index and search through text content efficiently.

This project implements the Model Context Protocol (MCP), making it compatible with AI assistants and other systems that support the protocol.

✨ Features

  • Full-text search: Search for keywords in text files across a directory structure
  • File content reader: Read and display the content of specific text files
  • Smart file detection: Automatically identifies text files and skips binary files
  • MCP integration: Works with systems that support the Model Context Protocol
  • In-memory indexing: Creates fast, temporary indexes for search operations
  • Score-based results: Returns search hits with relevance scores

🛠️ Technology Stack

  • Rust: For performance, safety, and concurrency
  • Tantivy: A full-text search engine library in Rust
  • RMCP: Rust implementation of the Model Context Protocol
  • Tokio: Asynchronous runtime for Rust

📋 Usage

First, install Rust sdk from here.

Clone this repository.

git clone [email protected]:Kurogoma4D/file-search-mcp.git

And add this to your MCP settings (in Cursor, Claude, ...).

  • command: <path-to-repo>/target/release/file-search-mcp

Replace <path-to-repo> to your cloned repository path.

🔄 How It Works

  1. The server indexes text files in the specified directory, excluding binary files
  2. It processes the content of text files and adds them to an in-memory Tantivy index
  3. When a search is performed, it queries the index for matches and ranks them by relevance
  4. Results are returned with file paths and relevance scores
  5. The file content reader tool allows you to view the content of any text file by providing its path

🛠️ Available Tools

Search Tool

  • Description: Search for keywords in text files within a specified directory
  • Parameters:
    • directory: Path to the directory to search
    • keyword: Keyword to search for

File Content Reader Tool

  • Description: Read and display the content of a specific file
  • Parameters:
    • file_path: Path to the file to read

📄 License

MIT License

🙏 Acknowledgements

  • Tantivy for the full-text search engine
  • RMCP for the Model Context Protocol implementation