Skip to main content
Glama
Capithan

Tax Client Intake & Appointment Optimization MCP Server

by Capithan
README.md
# 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