Utilizes Poppler Utils (pdfimages) from freedesktop.org for extracting images from PDF construction drawings.
Runs on Node.js 18+ as the foundation for the MCP server, handling document processing and vector search capabilities.
Leverages Ollama's local AI models (nomic-embed-text, phi4, clip) for document processing, metadata extraction, and vector embeddings of construction documents.
🏗️ ClaudeHopper - AI-Powered Construction Document Assistant
ClaudeHopper is a specialized Model Context Protocol (MCP) server that enables Claude and other LLMs to interact directly with construction documents, drawings, and specifications through advanced RAG (Retrieval-Augmented Generation) and hybrid search. Ask questions about your construction drawings, locate specific details, and analyze technical specifications with ease.
✨ Features
- 🔍 Vector-based search for construction document retrieval optimized for CAD drawings, plans, and specs
- 🖼️ Visual search to find similar drawings based on textual descriptions
- 🏢 Specialized metadata extraction for construction industry document formats
- 📊 Efficient token usage through intelligent document chunking and categorization
- 🔒 Security through local document storage and processing
- 📈 Support for various drawing types and construction disciplines (Structural, Civil, Architectural, etc.)
🚀 Quick Start
Prerequisites
- Node.js 18+
- Ollama for local AI models
- Required models:
nomic-embed-text
,phi4
,clip
- Required models:
- Claude Desktop App
- For image extraction: Poppler Utils (
pdfimages
command)
One-Click Setup
- Download ClaudeHopper
- Run the setup script:
This will:
- Create the necessary directory structure
- Install required AI models
- Process your construction documents
- Configure the Claude Desktop App to use ClaudeHopper
Adding Documents
Place your construction documents in these folders:
- Drawings:
~/Desktop/PDFdrawings-MCP/InputDocs/Drawings/
- Specifications:
~/Desktop/PDFdrawings-MCP/InputDocs/TextDocs/
After adding documents, run:
🏗️ Using ClaudeHopper with Claude
Try these example questions in the Claude Desktop App:
🛠️ Technical Architecture
ClaudeHopper uses a multi-stage pipeline for processing construction documents:
- Document Analysis: PDF documents are analyzed for structure and content type
- Metadata Extraction: AI-assisted extraction of project information, drawing types, disciplines
- Content Chunking: Intelligent splitting of documents to maintain context
- Image Extraction: Identification and extraction of drawing images from PDFs
- Vector Embedding: Creation of semantic representations for text and images
- Database Storage: Local LanceDB storage for vector search capabilities
👀 Testing the Image Search
To test the image search functionality, you can use the provided test script:
This will:
- Build the application
- Check for required dependencies (like
pdfimages
) - Seed the database with images from your drawings directory
- Run a series of test queries against the image search
You can also run individual test commands:
📝 Available Search Tools
ClaudeHopper provides several specialized search capabilities:
catalog_search
: Find documents by project, discipline, drawing type, etc.chunks_search
: Locate specific content within documentsall_chunks_search
: Search across the entire document collectionimage_search
: Find drawings based on visual similarity to textual descriptions
Examples of using the image search feature can be found in the image_search_examples.md file.
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
AI-powered MCP server that enables Claude and other LLMs to interact directly with construction documents, drawings, and specifications through advanced RAG and hybrid search capabilities.
Related MCP Servers
- -securityAlicense-qualityAn MCP server that implements Claude Code-like functionality, allowing the AI to analyze codebases, modify files, execute commands, and manage projects through direct file system interactions.Last updated -229PythonMIT License
- -securityFlicense-qualityAn MCP server that allows Claude to interact with local LLMs running in LM Studio, providing access to list models, generate text, and use chat completions through local models.Last updated -8Python
- -securityFlicense-qualityAn MCP server that integrates with Claude to provide smart documentation search capabilities across multiple AI/ML libraries, allowing users to retrieve and process technical information through natural language queries.Last updated -Python
- AsecurityAlicenseAqualityAn MCP server that allows Claude AI to search, explore, and compare arXiv papers efficiently through a custom-built local server.Last updated -45PythonMIT License