MCP server for local document indexing and search using LanceDB
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"iflow-mcp-yairwein-mcp-doc-indexer","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# MCP Document Indexer A Python-based MCP (Model Context Protocol) server for local document indexing and search using LanceDB vector database and local LLMs. ## Features - **Real-time Document Monitoring**: Automatically indexes new and modified documents in configured folders - **Multi-format Support**: Handles PDF, Word (docx/doc), text, Markdown, and RTF files - **Local LLM Integration**: Uses Ollama for document summarization and keyword extraction. Nothing ever leaves your computer - **Vector Search**: Semantic search using LanceDB and sentence transformers - **MCP Integration**: Exposes search and catalog tools via Model Context Protocol - **Incremental Indexing**: Only processes changed files to save resources - **Performance Optimized**: Designed for decent performance on standard laptops (e.g. M1/M2 MacBook) ## Installation ### Prerequisites 1. **Python 3.9+** installed 2. **uv** package manager: ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ``` 3. **Ollama** (for local LLM): ```bash # Install Ollama curl -fsSL https://ollama.com/install.sh | sh # Pull a model (e.g., llama3.2) ollama pull llama3.2:3b ``` ### Install MCP Document Indexer ```bash # Clone the repository git clone https://github.com/yairwein/mcp-doc-indexer.git cd mcp-doc-indexer # Install with uv uv sync # Or install as a package uv add mcp-doc-indexer ``` ## Configuration Configure the indexer using environment variables or a `.env` file: ```bash # Folders to monitor (comma-separated) WATCH_FOLDERS="/Users/me/Documents,/Users/me/Research" # LanceDB storage path LANCEDB_PATH="./vector_index" # Ollama model for summarization LLM_MODEL="llama3.2:3b" # Text chunking settings CHUNK_SIZE=1000 CHUNK_OVERLAP=200 # Embedding model (sentence-transformers) EMBEDDING_MODEL="all-MiniLM-L6-v2" # File types to index FILE_EXTENSIONS=".pdf,.docx,.doc,.txt,.md,.rtf" # Maximum file size in MB MAX_FILE_SIZE_MB=100 # Ollama API URL OLLAMA_BASE_URL="http://localhost:11434" ``` ##…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.