
Mcp Manimgl
io.github.daedalusPublished by GitHub account daedalusv0.1.2Updated Oct 25, 2026
MCP server exposing manimgl mathematical animation functionality as tools for LLMs
Overview
A local MCP server that lets an assistant build and render manimgl mathematical animations, including shapes, LaTeX, narration and background music.
- What you can do
- Create and configure scenes, set the camera and rendering config, and save or restore state or export the generated Python script. Add geometric shapes, lines, arrows, text and LaTeX, function graphs, coordinate systems, matrices and 3D objects. Move, scale, rotate, color and align those objects. Apply animations such as transform, fade, grow, rotate, write and move along a path. Add TTS narration and background music from audio or MIDI files, then render a video or save a single frame.
- When to use it
- Useful when you want an assistant to produce explanatory math or science animations as video, for example narrated lessons with LaTeX formulas and music, without writing manimgl code by hand.
- Requirements
- Runs locally as a Python package installed with pip, started over stdio. Rendering needs the render extra plus manimgl and its system dependencies (pangocairo, OpenGL). Audio needs ffmpeg and ffprobe; MIDI needs libfluidsynth3 and a system SoundFont. Narration uses gTTS, so network access is likely needed.
Installation
In SourceWeft
- Open Mcp Manimgl in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
mcp-manimgl — MCP server exposing manimgl (Manim OpenGL) mathematical animation functionality as tools for LLMs.
mcp-name: io.github.daedalus/mcp-manimgl
Install
Optional extras:
System Dependencies
The server checks for non-Python dependencies at startup and reports any missing ones to stderr and via the mcp-manimgl://info resource.
Usage
MCP Server
In Claude Desktop / Cursor / MCP clients
Add to your mcp.json:
Tools
The server exposes these tool categories:
Scene Management
create_scene— Create/configure a new sceneclear_scene— Remove all elementsadd_wait— Add wait/pauseset_camera— Configure cameraset_config— Set global rendering configsave_state/restore_state— State managementgenerate_scene_script— Get the generated Python script
Mobject Creation
add_circle,add_square,add_rectangle,add_polygonadd_line,add_arrow,add_dotadd_text,add_tex(LaTeX)add_function_graph,add_parametric_curveadd_coordinate_system,add_vectoradd_labeled_point,add_brace,add_number_lineadd_decimal_number,add_matrixadd_3d_object(sphere, cube, torus, cone, cylinder)
Mobject Manipulation
move_to,shift,scale,rotateset_color,set_opacitynext_to,align_to
Animations
animate_transform,animate_fade_in/out,animate_growanimate_rotate,animate_scale,animate_shiftanimate_indicate,animate_write,animate_set_coloranimate_move_along_path,animate_group
Audio
add_narration— Generate TTS (gTTS) narration that plays at the current timeline positionadd_background_music— Add background music from audio files or MIDI files (auto-rendered via FluidSynth). Supports volume control, looping, and sidechain ducking during narration.
Rendering
render_scene— Render to video (auto-mixes background music + narration with ducking)save_frame— Save single frameget_render_status— Check environment
Audio Features
Narration
Background Music
Accepts audio files (.mp3, .wav, .ogg) or MIDI files (.mid, .midi). MIDI files are rendered to audio using FluidSynth and the system SoundFont.
When both background music and narration are present, render_scene automatically:
- Renders the video without audio via manimgl
- Places the music track (looped if needed) at the configured volume
- Places each narration track at its timeline position
- Applies sidechain compression so music volume ducks during narration
- Composites everything into the final MP4 via ffmpeg
Example: Shor's Algorithm
A narrated animation explaining Shor's algorithm with LaTeX, 5 TTS narration tracks, and classical MIDI background music.
Watch: [YouTube]
MCP tool call sequence:
See the full scene script at shor_mcp.py in the repository root.
MIDI Rendering
MIDI files are rendered using pyfluidsynth with a system SoundFont. On Debian/Ubuntu:
Auto-discovered SoundFont paths:
/usr/share/sounds/sf3/(.sf3)/usr/share/sounds/sf2/(.sf2)/usr/share/fluidr3mono-gm-soundfont/
Development
MCP
mcp-name: io.github.dclavijo/mcp-manimgl
Source: README.md at commit ddfe74f
Tools
0Version history
1- v0.1.2LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts