I built an open-source, self-hostable AI customer support platform with an 81-tool MCP server (Intercom & Zendesk alternative)
Traditional customer support platforms like Intercom and Zendesk have a pricing problem that hurts modern engineering and product teams in two ways: Per-Seat Taxes ($55โ$165/seat/month): Want your engineers, product m

Traditional customer support platforms like Intercom and Zendesk have a pricing problem that hurts modern engineering and product teams in two ways:
- Per-Seat Taxes ($55โ$165/seat/month): Want your engineers, product managers, or founders to have access to the customer support inbox? You either pay hundreds of dollars per seat or share a single login across the company.
- Per-Resolution AI Taxes ($0.99/resolution): On top of your monthly seat licenses, letting an AI agent answer a customer's question costs an extra ~$1 per ticket. A viral launch or traffic spike suddenly turns into a massive bill.
I wanted a customer support platform that was open-source (MIT), self-hostable via Docker, and treated AI agents + Model Context Protocol (MCP) as first-class citizens rather than expensive add-ons.
So I built Chatty:
PersonaliAI
/
chatty
Open-source, self-hostable Zendesk and Intercom alternative for AI customer support: chat widget, shared inbox, real-time voice, Multimodal RAG, and MCP.
Chatty by PersonaliAI
English ยท ็ฎไฝไธญๆ ยท ๆฅๆฌ่ช ยท Espaรฑol
Open-source AI agent trained on your store and content.
Answers customer questions, captures leads, and books meetings on website, WhatsApp & Slack.
๐ Live Demo ย ยทย โ๏ธ Chatty Cloud (Free 14-day trial) ย ยทย โก Quickstart (5 min) ย ยทย ๐ Documentation
Chatty is an open-source, self-hostable Zendesk and Intercom alternative for stores and modern businesses that need autonomous AI customer support with human takeover, WooCommerce sync, and calendar scheduling.
Run the application containers on your own host while keeping Supabase Auth Postgres, Storage, and Realtime managed. The same deployment contract works on a VPS, Railway, Render, or another Docker host without touching the live Supabase project.
Chatty Cloud (hosted) ยท Documentation ยท Data Processing (DPA) ยท Sub-processors ยท Performance Scorecard ยท Flow Builder ยท Widget Embed ยท Secure customer identity ยท Quick Start ยท Platform Runbook ยท MCP Server ยท AIโฆ
๐ GitHub Repo: https://github.com/PersonaliAI/chatty
๐ Live Demo & Cloud: https://chatty.personaliai.com
๐๏ธ What We Built Under the Hood
Chatty isn't just a thin wrapper around an LLM prompt. It's a full-stack customer operations platform designed for real production workloads:
1. An 81-Tool Model Context Protocol (MCP) Server
Most support platforms force you to click through dozens of dashboard menus to update knowledge bases, check unanswered tickets, or inspect CSAT trends.
Chatty ships with a native 81-tool MCP server (integrations/mcp-server). You can connect Claude Desktop, Cursor, Windsurf, or any MCP client and control your entire support operation from your IDE or AI workspace:
- Create & configure chatbots (
create_chatbot,update_chatbot_instructions,configure_guardrails) - Ingest & test RAG knowledge (
crawl_website_knowledge,upload_knowledge_document,test_rag_retrieval) - Manage the live inbox (
list_conversations,get_conversation_transcript,human_agent_takeover,send_agent_message) - Discover knowledge gaps & audit performance (
discover_knowledge_gaps,get_bot_performance_scorecard)
{
"mcpServers": {
"chatty": {
"command": "npx",
"args": ["-y", "@personaliai/chatty-mcp"],
"env": {
"CHATTY_API_KEY": "ck_live_your_api_key"
}
}
}
}
2. Multimodal RAG + Live E-Commerce Catalog Sync
Standard text-only RAG fails when a customer uploads a screenshot of a broken UI, a receipt, or a photo of a product they want to buy.
Chatty uses PostgreSQL + pgvector with multimodal embeddings:
- Website & Document Ingestion: Crawl docs, sitemaps, help center articles, PDFs, DOCX, CSV, and Google Drive/Dropbox folders.
- WooCommerce & Product Catalogs: Syncs live product inventory, pricing, variations, and product images so visitors can search visually or ask "Do you have this in medium under $50?"
- Deterministic Citations: Every AI reply links back to the exact source document or product card.
3. Shared Human + AI Inbox (With Instant Takeover)
AI shouldn't trap customers in an endless loop when they need a human.
- Automatic Escalation: When a visitor asks for a humanโor when sentiment dropsโChatty triggers a notification via Slack, Email, or the Shared Web Inbox.
- Seamless Pause: The moment a human agent replies (either from the Chatty dashboard or directly from a Slack thread), the AI assistant automatically pauses for that session.
- Omnichannel Routing: Handle conversations from the Shadow-DOM Web Widget, WhatsApp, Instagram DM, Facebook Messenger, and TikTok Business in one unified inbox.
4. In-Chat Meeting Booking & Native Checkouts
Instead of sending users away to external links where they drop off, Chatty executes actions directly inside the chat thread:
- Calendar Sync: Connects to Google Calendar and Microsoft 365 / Outlook to check real-time team availability and book meetings with timezone auto-detection.
- In-Chat Payments: Generate checkout cards inside the conversation using Stripe, Lemon Squeezy, PayPal, or Polar.
5. Visual State-Machine Flow Builder
Sometimes you want free-form LLM reasoning; other times (like refund eligibility or order lookups) you need strict, deterministic rules.
Chatty includes a visual node-based Flow Builder where you can combine:
- Condition & branching nodes
- Webhook / HTTP request nodes
- Lead capture & identity verification nodes
- Guardrailed AI response nodes
๐ ๏ธ The Tech Stack
We kept the stack clean, modern, and easy to self-host:
- Backend: Python 3.11+, FastAPI, Asyncio, Pydantic
-
Database & Vector Store: Supabase (PostgreSQL +
pgvector+ Realtime + Storage) - Frontend: Next.js (App Router), TypeScript, Tailwind CSS
-
Widget & SDKs:
- Zero-conflict Shadow-DOM Web Widget (
<script>1-line embed) - React SDK (
@personaliai/chatty-react) - Flutter SDK (
chatty_flutter) - WordPress & WooCommerce plugin
- Zero-conflict Shadow-DOM Web Widget (
๐ How to Try It or Self-Host
Option 1: Self-Host via Docker (100% Free & Open Source)
Chatty is MIT licensed. You can run the entire stack on your own infrastructure and bring your own API keys (Google Gemini, OpenAI, Anthropic Claude, Groq, DeepSeek, or OpenRouter):
git clone https://github.com/PersonaliAI/chatty.git
cd chatty
cp .env.example .env
docker compose up --build
Option 2: Try the Live Demo or Cloud Hosted
If you don't want to manage servers, vector indexes, and webhook workers yourself:
- Live Interactive Demo: https://chatty.personaliai.com (Test the widget right on the landing page)
- Flat-Rate Cloud Plans: Unlimited team seats on every tier (no per-agent or per-resolution fees), starting with a 14-day free trial.
๐ Feedback & Contributions Welcome!
We're actively building out more MCP capabilities, omnichannel adapters, and RAG evaluation tools.
If you find this useful, a โญ๏ธ on GitHub helps us a ton:
๐ https://github.com/PersonaliAI/chatty
I'd love to hear your thoughts in the comments:
- How are you currently handling AI customer support or RAG in production?
- What MCP tools or integrations would make your workflow easier?
Originally published by Dev.to WebDev. Aggregated on AIWithGhost for educational purposes โ full credit and traffic to the original publisher.