ClaudeHopper (Construction Document Analysis)

by arborist-ai

1 stars
206 downloads
Not rated
GitHub

About

Integrates with Claude Desktop to analyze construction documents, enabling semantic search across architectural drawings and specifications through LanceDB vector storage and Ollama local processing.

Details

Author
arborist-ai
Repository
Arborist-ai/ClaudeHopper
GitHub stars
1
Downloads
206
License
MIT License
Categories
Design, Workplace, File Management, AI, Media, Search, Knowledge Base, Frontend, Database, Project Management

- 🔍 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.)

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 ClaudeHopper (Construction Document Analysis)
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    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

1. Download ClaudeHopper
2. 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

catalog_search

Find documents by project, discipline, drawing type, etc.

chunks_search

Locate specific content within documents.

all_chunks_search

Search across the entire document collection.

image_search

Find drawings based on visual similarity to textual descriptions.

Claude Desktop / Cursor

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

{
    "mcpServers": {
        "claudehopper (construction document analysis)": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

🏗️ ClaudeHopper - AI-Powered Construction Document Assistant

Node.js 18+
License: MIT

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
- Claude Desktop App
- For image extraction: Poppler Utils (pdfimages command)

One-Click Setup

1. Download ClaudeHopper
2. 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:

1. Document Analysis: PDF documents are analyzed for structure and content type
2. Metadata Extraction: AI-assisted extraction of project information, drawing types, disciplines
3. Content Chunking: Intelligent splitting of documents to maintain context
4. Image Extraction: Identification and extraction of drawing images from PDFs
5. Vector Embedding: Creation of semantic representations for text and images
6. 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 documents
- all_chunks_search: Search across the entire document collection
- image_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.

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.