comic-chat-mcp
README.md
# comic-chat-mcp
A TypeScript/Bun recreation of [Microsoft Comic Chat](https://github.com/microsoft/comic-chat) (1996) as an **MCP server**: register it in an LLM coding session (e.g. Claude Code) and have the session summarised as a comic strip, rendered with the original Comic Chat character art.
No IRC, and the server makes **no LLM calls** — the calling model writes the comic script; this engine deterministically does everything the original client's "expert system" did: emotion/gesture selection from text, panel breaks, character placement/facing with hysteresis, zoom, and word-balloon layout (ports of `textpose.cpp`, `panel.cpp`, `balloon.cpp` from the Kurlander/Skelly/Salesin SIGGRAPH '96 system).
## Quick start
```sh
bun install
bun test # 191 tests
bun run serve # web viewer on http://localhost:4747
bun run mcp # MCP server on stdio
```
Register in Claude Code:
```sh
claude mcp add comic-chat -- bun run /path/to/comic-chat-mcp/src/mcp/server.ts
```
Then ask the model to call `how_to_make_a_comic` — it returns instructions for summarising the current conversation into a script and calling `create_comic`. Generated SVGs land in `output/` and are browsable in the web viewer.
## MCP tools
| Tool | Purpose |
|---|---|
| `list_characters` | Available avatars (from the original `.avb` art) and their poses |
| `list_backgrounds` | Available backdrops (`.bgb`) |
| `how_to_make_a_comic` | Prompt telling the calling LLM how to script a comic |
| `create_comic` | Renders a `ComicScript` → SVG file + viewer URL |
## Layout
- `src/avb/` — parser for the original `.avb`/`.bgb` binary art format (zlib DIBs, masks, face anchors) + minimal PNG encoder
- `src/engine/` — emotion wheel & text heuristics, panel composition (greedy placement solver), balloon layout
- `src/render/` — self-contained SVG renderer
- `src/mcp/`, `src/web/` — MCP stdio server and Bun web viewer
- `assets/` — original Comic Chat character art, MIT-licensed from [microsoft/comic-chat](https://github.com/microsoft/comic-chat) (see `assets/LICENSE-comic-chat`)
- `SPEC.md` — the full algorithm spec distilled from the original C++ source
Built via a red/green/refactor TDD workflow of Claude Sonnet agents.
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues