An MCP (Model Context Protocol) server that transforms Outlook email management with RAG-based semantic search and Vision AI for architectural document analysis - built specifically for Architecture, Engineering & Construction workflows.
Unlike generic email tools, this is designed for the unique challenges of architectural practice:
- ChromaDB vector database for intelligent email indexing
- Natural language queries: "Find emails about the BIM coordination meeting"
- Attachment content search: Search inside PDFs, Word docs, Excel files
- Claude Vision API for architectural drawing analysis
- Gemini Vision API for technical document processing
- Specialized prompts for floor plans, elevations, sections, details
- OCR fallback with Tesseract (Korean + English)
- Bilingual support: Korean + English for international projects
- Technical drawing analysis: Understands architectural documents
- RFI/Submittal parsing: Extract key information from construction docs
- 100% Local processing: Email data never leaves your machine
| Feature | Description |
|---|---|
| Semantic Search | Natural language email queries via RAG |
| Vision AI | Claude + Gemini for image/PDF analysis |
| Attachment Parsing | PDF, Word, Excel, Images |
| Date/Sender Filters | Metadata-based search |
| Folder Navigation | Access all Outlook folders |
| Local Processing | Complete privacy, no cloud upload |
git clone https://github.com/dongwoosuk/aec-outlook-mcp.git
cd aec-outlook-mcp
python -m venv .venv
.venv\Scripts\activate # Windows
pip install -e .For OCR support:
pip install -e ".[ocr]"For Vision AI:
pip install anthropic google-generativeai# For Vision AI features
set ANTHROPIC_API_KEY=your_claude_api_key
set GOOGLE_API_KEY=your_gemini_api_keyAdd to claude_desktop_config.json:
{
"mcpServers": {
"outlook": {
"command": "path/to/aec_outlook_mcp/.venv/Scripts/python.exe",
"args": ["-m", "aec_outlook_mcp"],
"env": {
"PYTHONPATH": "path/to/aec_outlook_mcp"
}
}
}
}| Tool | Description |
|---|---|
email_search |
Natural language semantic search |
email_search_by_sender |
Filter by sender |
email_search_by_date |
Filter by date range |
email_search_attachments |
Search attachment contents |
email_index_status |
Check indexing progress |
email_index_refresh |
Index new emails |
email_get_detail |
Get full email details |
email_list_folders |
List Outlook folders |
"Find emails from the structural engineer about beam calculations"
"Search for RFI responses from last week"
"Find all emails with PDF attachments about the facade design"
"What did the contractor say about the schedule delay?"
"Analyze the floor plan attached in John's email"
"What dimensions are shown in this elevation drawing?"
"Extract the specification details from the attached PDF"
aec_outlook_mcp/
βββ aec_outlook_mcp/
β βββ server.py # Main MCP server
β βββ outlook_reader.py # Win32com Outlook integration
β βββ email_indexer.py # ChromaDB RAG indexing
β βββ attachment_parser.py # PDF/Word/Excel/Vision AI
β βββ config.py # Configuration management
β βββ cli.py # Command-line interface
βββ pyproject.toml
| Component | Technology |
|---|---|
| Email Access | win32com (Outlook COM API) |
| Vector DB | ChromaDB |
| Embeddings | sentence-transformers (all-MiniLM-L6-v2) |
| PDF Parsing | PyMuPDF |
| Word Parsing | python-docx |
| Excel Parsing | openpyxl |
| OCR | Tesseract (kor+eng) |
| Vision AI | Anthropic Claude, Google Gemini |
- Quickly find client feedback across hundreds of emails
- Search RFI responses and submittal approvals
- Track consultant coordination threads
- Search contract and schedule discussions
- Find meeting notes and action items
- Track change order communications
- Find design review comments
- Search for reference images and inspiration
- Locate specification discussions
- Centralized email intelligence for entire teams
- Shared knowledge base across projects
- AI-powered email analytics and reporting
- Windows with Outlook Desktop app installed and logged in
- Python 3.10+
- Outlook must be running for email access
- 100% local processing: Emails are indexed locally in ChromaDB
- No cloud upload: Email content never leaves your machine
- API keys optional: Vision AI features require API keys, but core search works without them
- Data location:
C:\Users\{USERNAME}\Documents\OutlookMCP\
MIT License - see LICENSE file.
- Built on the Model Context Protocol by Anthropic
- ChromaDB for vector storage
- sentence-transformers for embeddings
Dongwoo Suk - Computational Design Specialist
- GitHub: dongwoosuk
- LinkedIn: dongwoosuk