{"repo":"dodopayments/context-chat","free":true,"listed":false,"github":"https://github.com/dodopayments/context-chat","clone":"git clone https://github.com/dodopayments/context-chat.git","description":"Embeddable, self-hosted AI chat widget for your docs — a single Cloudflare Worker that retrieves your documentation and streams cited OpenAI answers, behind layered abuse controls.","language":"TypeScript","stars":11,"topics":["ai","ask-ai","chatbot","cloudflare-workers","documentation","embeddable","mcp","openai","rag","react"],"license":"Apache-2.0","category":"ai-agents","readme_excerpt":"ContextChat An embeddable, self-hosted AI chat widget for your documentation. Drop an \"Ask AI\" assistant onto any website or docs page with a single tag. ContextChat is a single Cloudflare Worker that retrieves relevant docs from your search backend, then streams an OpenAI answer with inline citations — behind a layered abuse-control stack so a public endpoint can't be used to burn tokens. ContextChat is the chat front-end companion to ContextMCP (contextmcp.ai) — the self-hosted engine that indexes your docs and serves them over MCP + a REST /search API. ContextMCP indexes; ContextChat answers. Originally built for the Dodo Payments docs (where it powers \"Sentra\"), now open source for anyone to deploy. How it pairs with ContextMCP 1. Deploy ContextMCP pointed at your docs sources. It gives you a https://your-mcp.workers.dev/search endpoint. 2. Deploy ContextChat (this repo) pointed at that endpoint. 3. Embed the widget on your docs site with one script tag. Already have a search backend? You don't need ContextMCP — point ContextChat at any endpoint using the http-json adapter (see Retrieval adapters). Architecture Layered abuse defense Layer Mechanism Scope --- --- --- 1 Cloudflare WAF rate-limit rule on /chat (dashboard, optional) per-IP, pre-Worker 2 Turnstile siteverify (optional via TURNSTILE ENABLED ) per-request bot check 3 Native Workers ratelimits binding (20/min) per-IP backstop 4 GlobalBudgetDO (requests + tokens / day) true global cap 5 AI Gateway Spend Limit (das","default_branch":null,"files":null,"tree":[],"storefront":"/r/dodopayments","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/dodopayments/context-chat/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}