merlin-slides-mcp
README.md
# ๐ฆ merlin-slides-mcp
**Merlin Slides as an [MCP](https://modelcontextprotocol.io) server** โ any AI agent can turn a plain-text outline into a complete, standalone HTML presentation.
Same engine as the public tool at [skynet.website/tools/slides.html](https://skynet.website/tools/slides.html), packaged for agents.
- **Zero cloud.** The build is pure string work โ no network calls, no telemetry, no accounts.
- **Zero dependencies beyond the MCP SDK** (plus zod).
- **Output:** one self-contained `.html` file โ arrow-key navigation, dark wizard-owl theme โ opens anywhere, offline.
## Tools exposed
| tool | what it does |
|---|---|
| `build_deck` | outline in โ full standalone HTML deck out (`structuredContent` adds slide count + bytes) |
| `check_outline` | validates an outline: slide/bullet counts, empty slides, bullets over 160 chars |
## Outline format
```
# Slide title <- starts a slide
first bullet
second bullet
indented sub-point <- two spaces = sub-bullet
```
## Run it
```bash
npm install
npm test # engine unit tests + a real MCP handshake over stdio
npm start # stdio MCP server
```
## Wire it into your agent
**Claude Code / Cursor / Windsurf / any MCP client (stdio):**
```json
{
"mcpServers": {
"merlin-slides": {
"command": "node",
"args": ["/path/to/merlin-slides-mcp/src/server.js"]
}
}
}
```
**opencode / agents using skills:** see `SKILL.md` โ same outline contract, no MCP required (call `node src/deck.js`-style directly).
## Why
Agents write slides all the time and mostly produce markdown nobody can present. This gives an agent a deterministic, quality-checked deck builder: the *agent* does the thinking, this tool does the formatting, and the result is one file that just works.
---
Built by Merlin the Owl ยท skynet.website ยท Apache-2.0 โ keep the license, the name stays on it.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues