Tax Client Intake & Appointment Optimization MCP Server
An intelligent MCP (Model Context Protocol) server for tax professionals that streamlines client intake, automates document collection, and optimizes appointment scheduling.
🎯 Problem Solved
40% of clients arrive unprepared, wasting valuable tax professional time. This solution provides:
- Pre-appointment intelligent assistant - Conversational intake collects all info before appointment
- Auto-generated personalized document checklists - Based on client's specific tax situation
- Smart reminders - "Don't forget your 1099-NEC from Uber"
- Intelligent routing - Routes to right tax pro based on complexity
Impact: 30-min appointments → 15-min, 2x throughput
🚀 Features
1. Conversational Intake
- Step-by-step guided intake process
- Collects personal info, filing status, dependents, income types, deductions
- Identifies special situations (crypto, foreign accounts, rental properties)
- Progress tracking and session management
2. Smart Document Checklist
- Automatically generates personalized document lists
- Based on income types (W-2, 1099-NEC, investments, crypto)
- Tracks collected vs pending documents
- Includes specific sources (e.g., "Download from Uber driver dashboard")
3. Intelligent Reminders
- Personalized reminder messages
- Context-aware: "Don't forget your 1099-NEC from Uber"
- Multi-channel support (email/SMS)
- Appointment reminders at 24h and 1h before
4. Tax Professional Routing
- Complexity scoring (0-100 scale)
- Matches clients to specialists based on:
- Complexity level (simple, moderate, complex, expert)
- Required specializations (crypto, foreign income, real estate, etc.)
- Tax pro availability and ratings
- Alternative recommendations
5. Appointment Optimization
- Dynamic duration based on complexity and intake completion
- Time savings tracking (e.g., "Save 15 minutes with completed intake")
- Automatic reminder scheduling
📦 Installation
cd tax-intake-mcp
npm install
npm run build
🔧 Configuration
For Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"tax-intake": {
"command": "node",
"args": ["C:/Projects/ChatGPT APPS/tax-intake-mcp/dist/index.js"]
}
}
}
For Other MCP Clients
The server uses stdio transport. Run with:
node dist/index.js
🛠️ Available Tools
Intake Tools
| Tool | Description |
|---|---|
start_intake | Start a new client intake session |
process_intake_response | Process client's answer during intake |
get_intake_progress | Check intake completion status |
get_client_summary | Get complete client information |
Document Checklist Tools
| Tool | Description |
|---|---|
generate_document_checklist | Create personalized document list |
get_document_checklist | Retrieve current checklist |
mark_document_collected | Mark document as received |
get_pending_documents | List outstanding documents |
Reminder Tools
| Tool | Description |
|---|---|
create_document_reminders | Create personalized reminders |
get_client_reminders | View all reminders |
send_reminder | Send a specific reminder |
Routing Tools
| Tool | Description |
|---|---|
calculate_complexity | Get complexity score (0-100) |
route_to_tax_pro | Auto-assign best tax professional |
get_tax_pro_recommendations | Get recommended tax pros |
create_appointment | Schedule an appointment |
get_appointment_estimate | Get time estimate & savings |
Utility Tools
| Tool | Description |
|---|---|
list_tax_professionals | View all available tax pros |
get_client | Get client profile |
📝 Example Workflow
1. Start Client Intake
User: I need to prepare for my tax appointment
Assistant: [Calls start_intake]
Assistant: Welcome! I'll help you prepare for your tax appointment. Let's start with your name...
2. Complete Intake Questions
User: John Smith
Assistant: [Calls process_intake_response]
Assistant: Nice to meet you, John! What's your email address?
...
3. Generate Document Checklist
Assistant: [Calls generate_document_checklist]
Assistant: Based on your situation, here's your personalized document checklist:
- ✅ Government-issued Photo ID
- ⬜ W-2 Forms from employers
- ⬜ 1099-NEC from Uber
- ⬜ Cryptocurrency transaction records
...
4. Create Reminders
Assistant: [Calls create_document_reminders]
Assistant: I've created reminders for you:
- "Hi John! 👋 Don't forget your 1099-NEC from Uber..."
5. Route to Tax Professional
Assistant: [Calls route_to_tax_pro]
Assistant: Based on your complexity (moderate with crypto),
I've matched you with Michael Chen who specializes in
cryptocurrency and investments. ⭐⭐⭐⭐⭐
🏗️ Architecture
tax-intake-mcp/
├── src/
│ ├── index.ts # MCP Server entry point
│ ├── types/
│ │ └── client.ts # TypeScript interfaces
│ ├── database/
│ │ └── index.ts # In-memory database
│ └── services/
│ ├── intake.ts # Intake conversation logic
│ ├── checklist.ts # Document checklist generator
│ ├── reminders.ts # Reminder system
│ └── routing.ts # Tax pro matching & routing
├── package.json
├── tsconfig.json
└── README.md
🔮 Future Enhancements
- Persistent database (PostgreSQL/MongoDB)
- Email/SMS integration (SendGrid, Twilio)
- Calendar integration (Google Calendar, Outlook)
- Document upload and OCR
- Multi-language support
- Analytics dashboard
- Client portal
📊 Complexity Scoring
| Level | Score Range | Description |
|---|---|---|
| Simple | 0-20 | W-2 only, standard deductions |
| Moderate | 21-50 | Multiple income sources, itemized deductions |
| Complex | 51-80 | Business income, rental properties |
| Expert | 81-100 | Foreign accounts, crypto, audit representation |
🤝 Tax Professional Specializations
- Individual Returns
- Self-Employment
- Small Business
- Investments
- Real Estate
- Cryptocurrency
- Foreign Income
- Estate Planning
- Audit Representation
📄 License
MIT License
