LeadMCP
by AlexCojescu
README.md
# LeadMCP
Agentic AI lead system for automotive dealership / rental demos. Multi-agent orchestration over MCP tools (CRM, inventory, calendar, communications) with mock adapters — no live Twilio/HubSpot required.
## Quickstart
```bash
cp .env.example .env
npm install
npm run seed
npm run build
npm run dev:api # terminal 1 — http://127.0.0.1:3100
npm run dev:ui # terminal 2 — http://127.0.0.1:5173
```
### Auth (required)
- Protected routes need `Authorization: Bearer $API_TOKEN` or `X-API-Key` (dev default `dev-leadmcp-token-change-me`).
- Demo UI sends this via `VITE_API_TOKEN`.
- Chat continues a lead via signed `sessionToken` (not bare `leadId` unless admin).
- Channel inbound needs `X-LeadMCP-Signature: sha256=<hmac>` **or** the API token.
- Bookings/handoffs require explicit confirm (`CONFIRM BOOK` / `CONFIRM HANDOFF` or UI buttons).
Docker: `docker compose up --build` (binds `127.0.0.1` only).
## Demo script
1. Open the demo UI → **Web chat**.
2. Qualify: `I want to buy an SUV under $35000 this month, I'm Maya, maya@example.com`
3. Recommend: `show me vehicle recommendations`
4. Book: ask to book, then click **Confirm booking** (or reply `CONFIRM BOOK`)
5. Handoff: click **Hand off to sales** (or reply `CONFIRM HANDOFF`)
6. Try **Channels / voice** for WhatsApp, email, and voice mocks
Works offline without `OPENAI_API_KEY` (deterministic agents). Set a key for LLM-assisted routing and replies. `OPENAI_BASE_URL` must be on the allowlist (HTTPS, no private hosts).
## Repo layout
- `packages/shared` — schemas, SQLite store, scoring, seed
- `packages/mcp-*` — MCP tool servers (stdio + in-process)
- `apps/orchestrator` — Fastify API + agents
- `apps/demo-ui` — React console
- `docs/` — architecture, MCP design, workflows, deployment
## Docs
- [Architecture](docs/ARCHITECTURE.md)
- [MCP design](docs/MCP_DESIGN.md)
- [Agents & workflows](docs/AGENTS_AND_WORKFLOWS.md)
- [Deployment](docs/DEPLOYMENT.md)
# Automotive-Lead-Vertical-
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues