Manic MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Manic MCP ServerRead the authoring guide, then make a 10-second bouncing ball animation, validate, render to mp4, and share the link"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Manic MCP Server
Give any MCP-capable AI — Claude Code, Claude Desktop, or a local model — the ability to write, validate, and render Manic 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 |
| 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. |
| API key ( | Validates |
| API key ( | Submits source to the hosted renderer (mp4/gif/webm/mov/still). Returns a durable job id. Spends export credits. |
| API key ( | Polls a render job; returns the artifact URL when done, or the exact compile error to fix. |
| API key ( | 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.
Related MCP server: flatkey-mcp
Setup
Create an API key at 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
claude mcp add manic -e MANIC_API_KEY=mk_live_… -- npx -y @maniclang/mcp-serverClaude Desktop / other MCP clients
{
"mcpServers": {
"manic": {
"command": "npx",
"args": ["-y", "@maniclang/mcp-server"],
"env": { "MANIC_API_KEY": "mk_live_…" }
}
}
}From source (development)
npm install && npm run buildThen 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 for copy-paste configs, the intended authoring loop, example prompts, the cost model, and troubleshooting.
Configuration
Variable | Default | Purpose |
| — | Your Manic API key; required for everything except the authoring guide |
|
| Platform API base |
| 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 Create — browser playground
Manic Workbench — desktop client
Manic Animate — browser extension
Available Tools
5 toolsmanic_authoring_guideManic authoring guideA
Fetches the complete, current Manic language authoring guide (the same system prompt Manic's own AI uses). Call this ONCE before writing any .manic source and follow it exactly — Manic is a precise DSL and the guide is the source of truth for its verbs, blocks, and rules. No authentication needed.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It fully discloses essential behavior: the tool has zero parameters, requires no authentication, returns a complete guide, and is safe to call repeatedly despite being designed for one-time use. No behavioral surprises.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, zero waste. Every sentence serves a distinct purpose: what it does, how to use it, and behavioral note (no auth). Front-loaded with the verb and resource.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, no output schema, and no annotations, the description is complete. It fully explains the tool's purpose, usage pattern, and behavior. There are no missing details — the agent can use this description to correctly select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with zero parameters, so the baseline is 4. The description adds no parameter-level detail because there are none, but it clarifies the nature of the returned content (complete guide, source of truth), which serves as context for what the tool provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Fetches the complete, current Manic language authoring guide'), identifies the exact resource (the system prompt Manic's own AI uses), and distinguishes itself from sibling tools by being a one-time reference tool, unlike manic_check, manic_render, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: call ONCE before writing any .manic source, follow it exactly, and explains why (Manic is a precise DSL and the guide is the source of truth). This implicitly advises against calling it repeatedly or relying on alternatives for authoring rules.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manic_checkValidate Manic sourceA
Validates .manic source against the Manic platform's checker and returns diagnostics. Always check before rendering: rendering spends the user's export credits, checking is cheap. Fix every error diagnostic and re-check until clean. Requires MANIC_API_KEY (scope: check).
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | Complete .manic source to validate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the need for MANIC_API_KEY (scope: check) and signals that checking is cheap (low cost). While it doesn't explicitly state idempotency or read-only nature, the verb 'validates' and the contrast with rendering imply no side effects. Minor gap but generally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: purpose, usage guidance, and requirement. No wasted words. The most critical info (what it does, when to use) appears first. Perfectly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one simple parameter and no output schema, the description covers purpose, usage, and a key requirement. It does not describe the return format of diagnostics (e.g., list of errors with severity), which could be helpful but is not critical for selection. Slightly incomplete but adequate for a straightforward validation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter with 100% schema description coverage. The tool description does not add extra meaning beyond what the schema already states ('Complete .manic source to validate'). Baseline score of 3 is appropriate since schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool validates '.manic source' against the Manic platform's checker and returns diagnostics. It distinguishes itself from siblings by contrasting with rendering (which spends credits), making the purpose highly specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance: 'Always check before rendering' because checking is cheap while rendering costs credits. It also instructs to 'Fix every error diagnostic and re-check until clean.' This clearly defines when and why to use the tool, with no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manic_renderRender Manic to videoA
Submits validated .manic source to the Manic hosted renderer. Returns a job id immediately — rendering is asynchronous and can take minutes; poll with manic_render_status. Rendering spends the user's export credits, so validate with manic_check first and render only when the user wants output. Requires MANIC_API_KEY (scopes: render:create, jobs:read).
| Name | Required | Description | Default |
|---|---|---|---|
| fps | No | Frame rate (plan ceiling applies server-side) | |
| still | No | For format 'still': the timestamp in seconds to snapshot | |
| canvas | No | Aspect ratio, e.g. "16:9", "9:16", "1:1" (defaults to the source's canvas) | |
| format | No | Output format; 'still' renders a single frame | mp4 |
| source | Yes | Complete, validated .manic source |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries the full burden. It clearly discloses the asynchronous nature (returns job id immediately, rendering can take minutes), cost implications (spends export credits), and prerequisites (MANIC_API_KEY with scopes). It could mention idempotency or error behavior but covers the key behavioral traits effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: first defines action and async return, second sets usage context and cost, third lists auth requirements. No redundancy, front-loaded with key info, and efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (async, cost, auth) and the absence of output schema, the description provides sufficient guidance for expected usage and follow-up (polling). It doesn't cover error cases or response format details, but the tool's return (job id) is implied. A minor gap is the lack of instruction on how to interpret or use the job id beyond polling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description does not add details beyond the schema; for example, it doesn't explain 'plan ceiling' or valid values for 'canvas' beyond the example. However, it contextually links the tool's purpose to parameters like 'source' needing validation, which adds minor value, keeping score at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'submits' and the resource 'validated .manic source to the Manic hosted renderer'. It distinguishes from siblings by mentioning 'manic_render_status' for polling and 'manic_check' for validation, providing explicit differentiation from other tools with similar themes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidelines: use 'manic_check' first for validation, then this tool only when user wants output due to credit cost. It specifies when to render and when to poll with 'manic_render_status', creating a clear workflow. No sibling tool is an alternative for rendering itself, so exclusion is handled well.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manic_render_statusCheck render statusA
Reads the durable status of a render job. When succeeded, returns the video/image artifact URL. Poll no more than every 10 seconds. Requires MANIC_API_KEY (scope: jobs:read).
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | Job id returned by manic_render (rnd_…) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full weight. It clearly identifies the operation as a read (durable status) and specifies the output when succeeded. It also includes a rate-limiting guideline (poll interval). Could be improved by mentioning possible error states.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: first defines purpose and output, second adds polling guideline, third states auth requirements. Likely efficient and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status check tool with one parameter and no output schema, the description covers purpose, prerequisites, behavioral constraint (poll interval), and output on success. Missing details about possible intermediate statuses or error responses, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter job_id, so baseline is 3. The description does not add additional semantic depth beyond what the schema already provides (i.e., it is the job ID returned by manic_render).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool reads the durable status of a render job and returns the artifact URL on success. It distinguishes from siblings like manic_render (which starts jobs) and manic_save_to_project (which persists results).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises polling no more than every 10 seconds and mentions the required API key and scope (jobs:read). However, it does not explicitly describe when to avoid using this tool or compare with the sibling `manic_check`.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
manic_save_to_projectSave Manic file to the user's projectA
Saves .manic source as a document in the user's default Manic project, so it appears in Manic Create and Manic Workbench. Saving to an existing path creates a new revision. Requires MANIC_API_KEY (scopes: projects:read, projects:write).
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Document path ending in .manic, e.g. "physics/pendulum.manic" | |
| source | Yes | Complete .manic source to save |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses required authentication (MANIC_API_KEY with specific scopes) and revision behavior on existing paths. However, it does not mention the return value on success/failure, potential side effects, or whether the operation is idempotent. The disclosure is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with zero wasted words. The first sentence states purpose and outcome; the second adds revision behavior and auth requirements. Every sentence earns its place, and no irrelevant details are included.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has two mandatory parameters, no enums, no nested objects, and no output schema. The description covers purpose, effect, revision behavior, and auth needs. One minor gap: it does not describe what the agent should expect as a response or how to confirm success, but for a save tool this is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% – both parameters (path, source) are documented with descriptions and constraints in the schema. The description does not add any additional meaning beyond what the schema provides, meeting the baseline expectation for high-coverage schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool saves '.manic source as a document in the user's default Manic project' and explains the effect (appears in Manic Create and Workbench). The verb 'saves' and resource '.manic source' are specific, and the purpose is distinct from all sibling tools (manic_check, manic_render, etc.), which perform different operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use the tool (to save a .manic file to the project) and provides important context like revision behavior on existing paths. However, it does not explicitly state when not to use it or suggest alternatives among siblings, though the sibling tools are sufficiently different that no confusion is likely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v0.1.0- First observed
manic_authoring_guide - First observed
manic_check - First observed
manic_render - First observed
manic_render_status - First observed
manic_save_to_project
TDQS
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.
All tools follow the 'manic_<action>[_<target>]' pattern consistently, using clear verbs (check, render, save_to_project) and snake_case throughout.
With 5 tools, the server is well-scoped for the Manic language authoring workflow. Each tool serves a necessary step without redundancy or excess.
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
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
Plan, compare, price, generate, and recover AI video from compatible MCP clients.
Create images & video from any MCP agent — 17 models, spend limits, one URL.
Remote MCP server for AI.TV creators — delegate account operations to your AI agent over MCP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI models to fully automate and control the OpenCut Video Editor through a comprehensive set of MCP tools for timeline manipulation, scene management, media handling, and rendering.806MIT
- AlicenseNot gradedqualityBmaintenanceEnables any MCP-compatible AI client to use the Flatkey API for generating text, images, video, speech, sound effects, and music, with credit consumption tracking.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to generate professional storyboards and videos from scripts or creative descriptions via MCP-compatible clients.31MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI clients like Claude and ChatGPT to generate images and videos, animate images, create lip-synced videos, list TTS voices, and manage media via remote MCP tools.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/maniclang-x/-manic-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server