A whiteboard where AI agents draw their explanations — hand-drawn animated diagrams over MCP
claude mcp add lousa -- npx -y lousa{
"mcpServers": {
"lousa": {
"command": "npx",
"args": ["-y", "lousa"],
"env": {
"LOUSA_TOKEN": "<lousa_token>",
"LOUSA_URL": "<lousa_url>"
}
}
}
}LOUSA_TOKENLOUSA_URLResumen de MCP Servers
# Lousa
**A whiteboard where your AI agent draws its explanations.**

Ask your agent *"explain this visually"* and it sketches an animated, hand-drawn diagram on a live board — instead of another wall of text. Lousa is an MCP server + web viewer: the agent authors a declarative scene (boxes, arrows, cylinders, notes), and the board renders it stroke by stroke, as if someone were drawing it in front of you.
> *Lousa* is Portuguese for the classic school blackboard.
## Why it's different
- **The agent is the artist.** No prompt box, no OCR — your coding agent already has the context and draws through typed MCP tools.
- **Live, incremental drawing.** Follow-ups edit the scene; the open tab animates only what changed, like watching the diagram evolve.
- **Point at things.** Click elements in the viewer to select them, then tell your agent *"improve what I selected"* — it reads your selection through `get_selection` and targets exactly that.
- **Boards expire by default** (12h, sliding) — a whiteboard, not a document graveyard. `ttlHours: 0` keeps a board forever.
## Quick start
Requires [Node.js 18.17+](https://nodejs.org).
```bash
# Claude Code
claude mcp add lousa -- npx -y lousa mcp
# or run the server directly
npx lousa # viewer at http://127.0.0.1:4666
```
Any MCP host works — for stdio configuration use command `npx`, args `["-y", "lousa", "mcp"]`. The stdio endpoint auto-starts the local server, so the viewer is always available. Then ask your agent to *"draw how our auth flow works"* and open the URL it returns.
## MCP tools
| Tool | What it does |
|---|---|
| `create_board` | Creates a board from a scene, returns `{id, url}` |
| `update_board` | Replaces the scene; unchanged elements stay byte-identical so only changes animate |
| `get_board` / `list_boards` | Read boards |
| `get_selection` | What the user selected in the viewer (ids + full elements) |
| `delete_board` | Deletes a board |
The scene is a JSON array of elements — `box`, `ellipse`, `diamond`, `cylinder`, `arrow` (connects ids), `line`, `text`, `note` — rendered with [rough.js](https://roughjs.com). The full schema ships inside the tool definitions; agents need no extra setup.
## Self-hosting a shared server
Run `lousa` on any Node host and point machines at it:
```bash
LOUSA_TOKEN=<secret> HOST=0.0.0.0 npx lousa # server
LOUSA_URL=https://your-host LOUSA_TOKEN=<secret> npx lousa mcp # each client
```
`LOUSA_TOKEN` gates board listing/creation/deletion and `/mcp`; per-board URLs act as capability links. AWS Lambda + S3 deployment is supported out of the box (`lambda.js` handler + `LOUSA_BUCKET` for storage); any HTTPS front (API Gateway, etc.) works.
| Env var | Default | Purpose |
|---|---|---|
| `PORT` / `HOST` | `4666` / `127.0.0.1` | server bind |
| `LOUSA_DATA_DIR` | `~/.lousa/boards` | filesystem board storage |
| `LOUSA_BUCKET` | — | use S3 storage instead of filesystem |
| `LOUSA_TOKEN` | — | require bearer token (header or `?t=`) on global routes and MCP |
| `LOUSA_URL` | — | `lousa mcp` proxies to this remote server |
| `LOUSA_DEFAULT_TTL_HOURS` | `12` | default board expiry |
## Development
```bash
npm install
npm test # node --test
node cli.js # local server
```
## License
[AGPL-3.0](LICENSE) © Henrique Pires
Lo que la gente pregunta sobre lousa
¿Qué es henriquepe/lousa?
+
henriquepe/lousa es mcp servers para el ecosistema de Claude AI. A whiteboard where AI agents draw their explanations — hand-drawn animated diagrams over MCP Tiene 0 estrellas en GitHub y se actualizó por última vez today.
¿Cómo se instala lousa?
+
Puedes instalar lousa clonando el repositorio (https://github.com/henriquepe/lousa) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar henriquepe/lousa?
+
henriquepe/lousa aún no ha sido auditado por nuestro agente de seguridad. Revisa el repositorio original en GitHub antes de usarlo en producción.
¿Quién mantiene henriquepe/lousa?
+
henriquepe/lousa es mantenido por henriquepe. La última actividad registrada en GitHub es de today, con 0 issues abiertos.
¿Hay alternativas a lousa?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega lousa en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/henriquepe-lousa)<a href="https://claudewave.com/repo/henriquepe-lousa"><img src="https://claudewave.com/api/badge/henriquepe-lousa" alt="Featured on ClaudeWave: henriquepe/lousa" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!