# Deploy your own chat over live public data in one click

**Published:** August 12, 2026 | **Authors:** Cristian Correa

---

You can now stand up an AI chat over public data from Colombia, Peru, and Mexico without building it from scratch. [Croma Chat Template](https://github.com/croma-ai/croma-chat-template) is an open-source template built with Vercel's [AI SDK](https://ai-sdk.dev) and [AI Elements](https://ai-sdk.dev/elements), connected to the Croma MCP server: the model queries judicial, tax, and registry sources in real time and streams its answers back. Try it live at [chat.usecroma.com](https://chat.usecroma.com) before deploying your own.

## What's inside

- **Live tools**: every conversation hands the model Croma's full catalog: Rama Judicial, SUNAT, RUES, SECOP, and 40+ more sources.
- **Streaming everything**: text, reasoning, and tool calls arrive token by token.
- **A finished interface**: AI Elements components with markdown responses, collapsible tool cards, dark mode, and a transcript that sticks to the bottom.
- **A source picker**: a searchable browser in the composer (country, category, source) pins one or more tools per message, and you can change scope mid-conversation.
- **Swappable models**: runs on `claude-opus-5` when `ANTHROPIC_API_KEY` is set, and on `openai/gpt-oss-120b` on Groq otherwise. Switching providers is a one-file edit.
- **Optional rate limiting**: add two Upstash variables and `/api/chat` is capped at 10 requests per minute per IP. Without them, the limiter is a no-op.

## Deploy in one click

The **Deploy with Vercel** button in the repository clones the project and asks for the keys as it creates it. The Croma key is free: grab one at [platform.usecroma.com](https://platform.usecroma.com/sign-up) in about a minute.

| Variable | Required | What it does |
| --- | --- | --- |
| `CROMA_API_KEY` | yes | authenticates the live-data tools |
| `GROQ_API_KEY` | one of the two | runs `openai/gpt-oss-120b` on Groq |
| `ANTHROPIC_API_KEY` | one of the two | runs `claude-opus-5`, takes precedence when both are set |

## Run it locally

```bash
git clone https://github.com/croma-ai/croma-chat-template
cd croma-chat-template
pnpm install
cp .env.example .env.local
pnpm dev
```

Line

## Built to be changed

The template is a starting point, not a sealed box. The model lives in one file and accepts any AI SDK provider; the system prompt, the suggestions, and the source taxonomy live in their own modules; the design is Tailwind tokens you can swap for your brand.

The API behind the chat is the same one you already know: every source is covered in [the documentation](https://docs.usecroma.com), and you can try the endpoints without writing code in [the tools](/co/tools). And if you would rather not deploy anything, the same MCP server connects straight to Claude, ChatGPT, or Cursor.

---

**More updates:** [View all changelog entries](/en/changelog/sitemap.md) | [Croma](https://usecroma.com)
