Skip to main content
Glama
FenrirDWolf

Omnichannel MCP

by FenrirDWolf

Omnichannel MCP: The "One-to-Many" Merchant Rail

What We Built

The Omnichannel MCP (Model Context Protocol) is an enterprise-grade AI dispatch system. It transforms a single natural language prompt into a synchronized distribution of localized marketing content across six channels (Email, WhatsApp, Push, Glance, PayU, Instagram). The system utilizes an MCP server to orchestrate LLM-powered generation (yielding 72 unique, culturally localized variants per deal) and dispatches them to a real-time Next.js Dashboard.

Related MCP server: PrePilot MCP Server

Key Architecture Decisions

  1. Dual-Transport Synchronization: Standard webhooks face payload size limits. We decoupled data transfer from signaling by persisting full heavy payloads (including rich Apple-grade HTML) to a Redis Audit Trail, then firing a lightweight "ping" to the UI. This ensures 100% atomic delivery and bypasses serverless 4KB limits.

  2. Resilience Engine (Exponential Backoff): To handle serverless cold-starts and network instability, the dispatcher uses strict retry logic with exponential backoff (2^n * 1000ms). Delivery attempts and recoveries are fully visible in the dashboard terminal.

  3. Zero-Config "Demo Mode": To ensure a frictionless evaluation experience, the MCP server gracefully falls back to a mocked "Zomato Gold" intelligence layer if API keys are omitted.

How to Run It Locally

The system is optimized for a zero-friction setup. You do not need to clone the repository or install dependencies.

  1. Update Config Open your claude_desktop_config.json and add the specific server configuration:

{
  "mcpServers": {
    "grabon-omnichannel": {
      "command": "npx",
      "args": ["-y", "@santhoshramesh/grabon-mcp@1.1.5"],
      "env": {
        "GEMINI_API_KEY": "",
        "UPSTASH_REDIS_REST_URL": "",
        "UPSTASH_REDIS_REST_TOKEN": ""
      }
    }
  }
}

(Leaving the keys blank safely triggers Demo Mode for instant evaluation).

  1. Open the Dashboard Navigate to the Live Dashboard: omnichannel-mcp-dashboard.vercel.app

  2. Test the Integration In Claude Desktop, prompt: "Distribute the Zomato Gold deal." Watch the dashboard populate with real-time payload deliveries and variant matrices.

Option B: Terminal / CLI Testing

If you prefer to test outside of Claude, you can instantly boot the server using the official MCP Inspector. Run this npx command in any terminal:

npx -y @modelcontextprotocol/inspector npx -y @santhoshramesh/grabon-mcp@1.1.5

(Note: To test with live payload persistence, append your GEMINI_API_KEY and UPSTASH keys as environment variables before the command).

What I'd Do Differently With More Time

If given more time to scale this beyond an MVP, I would focus on:

  1. True Message Queuing: Replace the lightweight ntfy.sh signaling with a production-grade broker like Apache Kafka or AWS SQS to handle millions of concurrent webhook dispatches with guaranteed ordering.

  2. End-to-End Testing: Implement Cypress or Playwright test suites to automate the verification of all 72 variant UI renders across different viewports.

  3. A/B Test Analytics Integration: Build an analytics pipeline to track the actual conversion rates of the "Urgency" vs. "Value" variants and feed that data back into the LLM context for continuous optimization.

  4. Authentication & Multi-Tenancy: Wrap the dashboard in NextAuth to allow different marketing teams (e.g., Food vs. Travel) to have scoped, secure views of their specific deal distributions.

Related MCP Connectors

Related MCP Servers