Lets an AI client search, read, triage, and draft replies to customer emails and chat messages from a unified inbox.
Also known as productdevbook/yuva
- Stars
- 30
- Tools
- —
- Downloads, 30 days
- —
- Latest version
- 0.5.0
- Last commit
- Nov 12, 2026
- License
- AGPL-3.0
What is Yuva MCP?
Yuva is an MCP server. Lets an AI client search, read, triage, and draft replies to customer emails and chat messages from a unified inbox.
Summary generated from the project's README
About Yuva MCP server
Managing customer communications across multiple products is what Yuva enables for support teams. By consolidating email, live chat, in-app messages, and app feedback into a single shared inbox, it allows developers and support agents to handle diverse interaction channels from one place. The system is self-hosted using a Docker image and a Postgres database, ensuring that all conversations, contacts, and files remain on your own servers.
Connecting this to an AI assistant like Claude, Cursor, or VS Code is done via an MCP server using OAuth. The integration allows an AI client to search through threads, read message history, triage incoming requests, and prepare draft replies. To maintain security, customer text is treated as untrusted data, and any replies generated by the AI are kept as drafts until a human member reviews and approves them for sending.
What you can do with it
- 1Draft support responsesHave the AI prepare a response to a customer query for a human to review.
Written from the project's README. Every use case is checked against a quote from it.
How to install Yuva MCP
Formats verified 10 Nov 2026Install Yuva MCP in Claude Code
$ claude mcp add --transport http yuva https://{yuva_host}/mcpInstall Yuva MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"yuva": {
"url": "https://{yuva_host}/mcp"
}
}
}Install Yuva MCP in VS Code
.vscode/mcp.json
{
"servers": {
"yuva": {
"type": "http",
"url": "https://{yuva_host}/mcp"
}
}
}Install Yuva MCP in Codex
~/.codex/config.toml
[mcp_servers.yuva]
url = "https://{yuva_host}/mcp"Install Yuva MCP in Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"yuva": {
"httpUrl": "https://{yuva_host}/mcp"
}
}
}Configuration
YUVA_API_KEYRequiredSecretA Yuva API key; its scopes and inboxes limit what the assistant can do
YUVA_URLRequiredYour Yuva server, for example https://support.example.com
| Name | Description | |
|---|---|---|
| YUVA_API_KEY | A Yuva API key; its scopes and inboxes limit what the assistant can do | RequiredSecret |
| YUVA_URL | Your Yuva server, for example https://support.example.com | Required |
Automated checks
Ran Nov 12, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachablePass
- Open source license (OSI)Pass
- Commit or release in the last yearPass
- Package name not close to a popular packageNot checked
- Remote endpoint uses HTTPSPass
- Destructive tools are labelledNot checked
- No hidden instructions to the modelPass
- No critical advisory in the package or its dependenciesNot checked
README
View on GitHubYuva
One inbox for every product you run.
Website · Docs · API · Releases · Roadmap · X
Yuva is open-source customer messaging for teams that run several products. Support e-mail, live chat, in-app messages and feedback from every product land in one shared inbox, next to the newsletters, help center, status pages and analytics you send and publish from the same place.
You host it yourself: one Docker image and Postgres.
[!WARNING] Beta. The API can still change before 1.0, so read the release notes before you upgrade. Database migrations run when the server starts: back up first. The code has not had an independent security audit.
Features
| Conversations | One inbox per product with its own branding, language, hours and team. E-mail, live chat, in-app messages and app feedback in one thread, with notes, labels, mentions and bot drafts a member reviews. |
| Team mail | Shared addresses such as sales@ and people's own mailboxes in the same inbox, with drafts, send later, filters and search operators. Personal mailboxes are private, and you can delegate them. Yuva is the mailbox; it is not an IMAP server for mail apps. |
| Reach | Mailing lists with consent records and imports, e-mail designs from templates, broadcasts with approval and reports, and a deliverability check. |
| Publish | Help center, documentation pages, status pages on your own domain, a roadmap board and What's new. |
| Insights | Reports on opened and closed conversations, response times, SLA and ratings, cookieless analytics for websites and apps, and a support report that ranks pages by the conversations they cause. |
| Move in | Migrations of history and live mail from Gmail, Microsoft 365, Yandex, iCloud, Zoho, any IMAP server, Zendesk, Help Scout and Front. The old mailbox is only read. |
| Build on it | A REST API with scoped keys, signed webhooks, identity tokens, headless mode, and an MCP server with OAuth for Claude, Cursor, VS Code and other assistants. |
Built with Go, Postgres and a React panel, shipped as one Docker image.
Quick start
-
Write
compose.yamland.envfrom the install guide. -
Start it:
docker compose up -d -
Create the first owner:
docker compose exec yuva /yuva bootstrap --email you@example.com --workspace "Example" -
Put it behind HTTPS and sign in with the code that arrives by e-mail.
On Kubernetes, install the Helm chart oci://ghcr.io/productdevbook/charts/yuva; see
Kubernetes with Helm.
SDKs and clients
| For | Install | Guide |
|---|---|---|
Web: <yuva-chat>, headless client |
npm install useyuva |
Web widget, Headless |
| React and shadcn/ui | npx shadcn@latest add https://useyuva.com/r/yuva-discussions.json |
shadcn registry |
| iOS and macOS | Swift package https://github.com/productdevbook/yuva.git, product YuvaKit |
Mobile SDKs |
| Android | implementation("com.github.productdevbook:yuva:v0.5.0") |
Mobile SDKs |
| Go | go get github.com/productdevbook/yuva/sdk/go |
Go SDK |
| AI assistants | /mcp on your server, or yuva.mcpb from a release |
MCP |
Working projects are in examples.
Privacy and security
- You host it: conversations, contacts and files stay on your servers.
- Analytics set no cookies and keep no cross-site identifiers; see analytics privacy.
- Every subscription records who consented, when and where, and lists export with that record.
- For assistants, customer text is marked as untrusted data, and their replies are drafts unless you allow sending.
- Report vulnerabilities privately as described in SECURITY.md.
Documentation
Guides, the API reference and examples are at useyuva.com/docs, and in docs/ (also in Turkish and German). How it is built: architecture. What is next: roadmap. What changed: GitHub Releases.
Community and contributing
Read CONTRIBUTING.md first; contributions are made under the CLA.
For a local server with Postgres and Mailpit, which catches every mail it sends, run
docker compose -f deploy/compose.yaml up -d.
Ask questions and report bugs in issues, and follow
@useyuva for news.
License
The server and panel are AGPL-3.0. The SDKs (sdk/) and the API contract (openapi/)
are MIT, so you can ship them in closed-source apps. Details in
LICENSING.md; name and logo in TRADEMARK.md.
Yuva MCP questions
How do I add Yuva MCP to Claude Code?
Run claude mcp add --transport http yuva https://{yuva_host}/mcp in your terminal. Add --scope user to make it available in every project.
How do I add Yuva MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
Is my customer data secure when using AI assistants?
Yes, customer text is marked as untrusted data and replies are kept as drafts until you manually allow them to be sent.
Where is my data stored?
Since you host the server yourself, all conversations, contacts, and files remain on your own servers.