๐๏ธ ClaudeHopper - AI-Powered Construction Document Assistant
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.
Arborist-ai
README
๐๏ธ 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:
cd ~/Desktop/claudehopper
chmod +x run_now_preserve.sh
./run_now_preserve.sh
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:
./process_pdfdrawings.sh
๐๏ธ Using ClaudeHopper with Claude
Try these example questions in the Claude Desktop App:
"What architectural drawings do we have for the project?"
"Show me the structural details for the foundation system"
"Find drawings that show a concrete foundation with dimensions"
"Search for lift station layout drawings"
"What are the specifications for interior paint?"
"Find all sections discussing fire protection systems"
๐ ๏ธ 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:
# Make the test script executable
chmod +x test_image_search.sh
# Run the test script
./test_image_search.sh
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:
# Run the test with the default database location
npm run test:image:verbose
# Run the test with a specific database location
node tools/test_image_search.js /path/to/your/database
๐ 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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
MCP Package Docs Server
Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.
Claude Code MCP
An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
@kazuph/mcp-taskmanager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Linear MCP Server
Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.
mermaid-mcp-server
A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.
Jira-Context-MCP
MCP server to provide Jira Tickets information to AI coding agents like Cursor

Linear MCP Server
A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Sequential Thinking MCP Server
This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.