# 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
```bash
cd tax-intake-mcp
npm install
npm run build
```
## ๐ง Configuration
### For Claude Desktop
Add to your `claude_desktop_config.json`:
```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:
```bash
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