FS-MCP: Universal File Reader & Intelligent Search MCP Server

by boleyn

7 387 downloads Not rated yet

About

FS-MCP: Universal File Reader & Intelligent Search MCP Server is a powerful MCP (Model Context Protocol) server that provides intelligent file reading and semantic search capabilities. It automatically detects text files, supports multiple document formats, and offers AI-powered…

Explore

- 🧠 Intelligent Text Detection: Automatically identifies text files without relying on file extensions
- 📄 Multi-Format Support: Handles text files and document formats (Word, Excel, PDF, etc.)
- 🔒 Security First: Restricted access to configured safe directories only
- 📏 Range Reading: Supports reading specific line ranges for large files
- 🔄 Document Conversion: Automatic conversion of documents to Markdown with caching
- 🔍 Vector Search: Semantic search powered by AI embeddings
- ⚡ High Performance: Batch processing and intelligent caching support
- 🌐 Multi-language: Supports both English and Chinese content

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name FS-MCP: Universal File Reader & Intelligent Search MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

git clone https://github.com/yourusername/fs-mcp.git
cd fs-mcp

Using uv (Recommended):

uv sync

Using pip:

pip install -r requirements.txt  # If you have a requirements.txt

pip install fastmcp>=2.0.0 langchain>=0.3.0 python-dotenv>=1.1.0

Create a .env file in the project root:


OPENAI_EMBEDDINGS_API_KEY=your-api-key
OPENAI_EMBEDDINGS_BASE_URL=http://your-embedding-service/v1
EMBEDDING_MODEL_NAME=BAAI/bge-m3    # Or your preferred model
EMBEDDING_CHUNK_SIZE=1000

| Variable | Default | Description |
|----------|---------|-------------|
| SAFE_DIRECTORY | . | Root directory for file access |
| MAX_FILE_SIZE_MB | 100 | Maximum file size limit |
| DEFAULT_ENCODING | utf-8 | Default file encoding |
| OPENAI_EMBEDDINGS_API_KEY | - | API key for embedding service |
| OPENAI_EMBEDDINGS_BASE_URL | - | Embedding service URL |
| EMBEDDING_MODEL_NAME | BAAI/bge-m3 | AI model for embeddings |
| EMBEDDING_CHUNK_SIZE | 1000 | Text chunk size for processing |

For production deployments, consider:
- Setting up rate limiting
- Configuring log rotation
- Using external vector databases
- Setting up monitoring


uv sync --group dev

bash

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "fs-mcp: universal file reader & intelligent search mcp server": {
            "fs-mcp-server": {
                "command": "uv",
                "args": [
                    "sync"
                ]
            }
        }
    }
}

McpServers

{
    "fs-mcp-server": {
        "command": "uv",
        "args": [
            "sync"
        ]
    }
}

<div align="center">

Python
FastMCP
License
PRs Welcome

A powerful MCP (Model Context Protocol) server that provides intelligent file reading and semantic search capabilities

English | 中文

</div>

---

English

🚀 Features

- 🧠 Intelligent Text Detection: Automatically identifies text files without relying on file extensions
- 📄 Multi-Format Support: Handles text files and document formats (Word, Excel, PDF, etc.)
- 🔒 Security First: Restricted access to configured safe directories only
- 📏 Range Reading: Supports reading specific line ranges for large files
- 🔄 Document Conversion: Automatic conversion of documents to Markdown with caching
- 🔍 Vector Search: Semantic search powered by AI embeddings
- ⚡ High Performance: Batch processing and intelligent caching support
- 🌐 Multi-language: Supports both English and Chinese content

📋 Table of Contents

- Quick Start
- Installation
- Configuration
- MCP Tools
- Vector Search
- Supported Formats
- Security Features
- Integration
- Development
- Contributing
- License

🚀 Quick Start

1. Clone and Install
git clone https://github.com/yourusername/fs-mcp.git
cd fs-mcp

Using uv (Recommended):

uv sync

Using pip:
```bash
pip install -r requirements.txt # If you have a requirements.txt

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.