Skip to main content
Glama
README.md
# Manic MCP Server

Give any MCP-capable AI — Claude Code, Claude Desktop, or a local model — the
ability to **write, validate, and render [Manic](https://maniclang.com)
animations**.

The connected model is the author: this server deliberately has no AI-
generation tool and spends no Manic AI credits. Instead it hands the model the
complete Manic authoring guide, then lets it validate its own `.manic` source
and render real videos through the Manic platform with your API key.

## Tools

| Tool | Auth | What it does |
|---|---|---|
| `manic_authoring_guide` | none | Fetches the full, current Manic language guide — the same system prompt Manic's own AI uses. The model reads this once, then writes real Manic. |
| `manic_check` | API key (`check`) | Validates `.manic` source and returns exact diagnostics. Cheap — always check before rendering. |
| `manic_render` | API key (`render:create`) | Submits source to the hosted renderer (mp4/gif/webm/mov/still). Returns a durable job id. Spends export credits. |
| `manic_render_status` | API key (`jobs:read`) | Polls a render job; returns the artifact URL when done, or the exact compile error to fix. |
| `manic_save_to_project` | API key (`projects:read/write`) | Saves the file into your Manic project, where it opens in Manic Create and Manic Workbench. |

The intended loop: **guide → write → check → (fix → check…) → render → poll →
video** — with every generated file optionally saved as a real project
document.

## Setup

Create an API key at [app.maniclang.com/account](https://app.maniclang.com/account)
with scopes: `check`, `render:create`, `jobs:read`, `projects:read`,
`projects:write`. (Without a key, only `manic_authoring_guide` works.)

No install needed — `npx` runs the published package directly.

### Claude Code

```sh
claude mcp add manic -e MANIC_API_KEY=mk_live_… -- npx -y @maniclang/mcp-server
```

### Claude Desktop / other MCP clients

```json
{
  "mcpServers": {
    "manic": {
      "command": "npx",
      "args": ["-y", "@maniclang/mcp-server"],
      "env": { "MANIC_API_KEY": "mk_live_…" }
    }
  }
}
```

### From source (development)

```sh
npm install && npm run build
```

Then use `node /path/to/manic-mcp-server/dist/index.js` as the command
instead of `npx -y @maniclang/mcp-server` in any config above.

### Other clients

Cursor, Windsurf, Cline, Continue, Zed, LM Studio, and any generic stdio MCP
client — see **[docs/USAGE.md](docs/USAGE.md)** for copy-paste configs, the
intended authoring loop, example prompts, the cost model, and troubleshooting.

### Configuration

| Variable | Default | Purpose |
|---|---|---|
| `MANIC_API_KEY` | — | Your Manic API key; required for everything except the authoring guide |
| `MANIC_API_BASE_URL` | `https://api.maniclang.com/v1` | Platform API base |
| `MANIC_SYSTEM_PROMPT_URL` | the hosted Manic guide | Override the authoring-guide source |

## Try it

Ask your model:

> "Read the Manic authoring guide, then create a 15-second animation of a
> pendulum tracing its path, validate it, render it as mp4, and give me the
> video link."

## Links

- [Manic](https://maniclang.com) · [Manic App](https://app.maniclang.com) · [API reference](https://docs.maniclang.com/api)
- [Manic Create](https://app.maniclang.com/create) — browser playground
- [Manic Workbench](https://github.com/maniclang-x/manic-workbench) — desktop client
- [Manic Animate](https://github.com/maniclang-x/manic-browser-extension) — browser extension

TDQS

A4.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: fetching the guide, validating source, submitting renders, polling render status, and saving to project. No overlap in functionality.

Naming Consistency5/5

All tools follow the 'manic_<action>[_<target>]' pattern consistently, using clear verbs (check, render, save_to_project) and snake_case throughout.

Tool Count5/5

With 5 tools, the server is well-scoped for the Manic language authoring workflow. Each tool serves a necessary step without redundancy or excess.

Completeness4/5

The tools cover the core workflow (guide, validate, render, status, save) but lack a list or edit tool for project documents, though saving to existing paths creates revisions.

Maintenance

ActivitySlowing
ResponsivenessNo issues