Skip to content

Introduction

Jina Connect is an open-source unified CPaaS (Communications Platform as a Service) built with Django 5 and Django REST Framework. It provides a single backend to manage messaging across WhatsApp, Telegram, SMS, and RCS — with multi-tenant isolation, RBAC, and a built-in MCP server for AI agent integration.

  • SaaS builders who need to add messaging to their product without building from scratch
  • Agencies managing messaging for multiple clients (multi-tenancy built in)
  • Enterprise teams who need to self-host their communications infrastructure
  • AI engineers building agents that need to send real messages via MCP
CapabilityDescription
Multi-Channel MessagingWhatsApp (Meta Direct, Gupshup), Telegram, SMS (Twilio, MSG91, Fast2SMS), RCS (Google RBM, Meta RCS)
Multi-TenantTenant isolation, per-tenant wallets, per-tenant apps, per-tenant contacts
RBAC5 default roles (Owner → Viewer) + custom roles with granular permissions
Broadcast CampaignsMulti-channel campaigns with batching, rate limiting, URL tracking
Team InboxReal-time WebSocket shared inbox across all channels
Chat FlowsVisual conversation flow builder with ReactFlow
Template ManagementFull WhatsApp template lifecycle (draft → approved → paused)
MCP ServerAI-native tool server — 15 tools for messaging, contacts, campaigns, providers
  • GitHub — source code, issues, PRs
  • Discord — chat with the team and community
  • Twitter/X — updates and announcements | Payments | Razorpay integration for tenant wallet top-ups | | Webhook Subscriptions | Per-event webhook delivery with signature verification |
LayerTechnology
FrameworkDjango 5.1, Django REST Framework 3.15
DatabasePostgreSQL 14+
Task QueueCelery + Redis
WebSocketDjango Channels + Daphne
AuthJWT (SimpleJWT) — 90-day access, 180-day refresh
ASGIDaphne (HTTP + WebSocket via ProtocolTypeRouter)
StorageLocal / S3 / GCS (pluggable)
API DocsSwagger UI + ReDoc (drf-yasg)
Encryptiondjango-encrypted-model-fields for secrets
jina-connect-unified-cpaas/
├── jina_connect/ # Django project settings, ASGI, routing, auth
├── abstract/ # Abstract base models, serializers, viewsets
├── users/ # User model, registration, password reset
├── tenants/ # Multi-tenancy, RBAC, API keys, media, tags
├── wa/ # WhatsApp: BSP adapters, templates, messages, webhooks
├── telegram/ # Telegram: bot management, webhooks, outbound
├── sms/ # SMS: multi-provider, DLT support, webhooks
├── rcs/ # RCS: Google RBM + Meta RCS, SMS fallback
├── broadcast/ # Broadcast campaigns, URL tracking, analytics
├── contacts/ # Unified contact management with lead scoring
├── team_inbox/ # Real-time shared inbox, WebSocket consumers
├── chat_flow/ # Visual chat flow builder
├── notifications/ # In-app notification system
├── razorpay/ # Payment gateway integration
├── transaction/ # Wallet credit transactions
├── message_templates/ # Base template model
├── mcp_server/ # MCP server for AI agents
├── docs/ # This documentation site (Starlight)
├── Dockerfile # Production container image
├── docker-compose.yml # Full stack: web, db, redis, celery, beat
└── pyproject.toml # Python project metadata