Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Manim Slides Server

БесплатноНе проверен

Enables AI agents to generate, execute, and compile interactive Manim slide presentations through MCP tools.

GitHubEmbed

Описание

Enables AI agents to generate, execute, and compile interactive Manim slide presentations through MCP tools.

README

A robust Model Context Protocol (MCP) server that empowers AI agents to generate, orchestrate, and compile interactive presentations with manim-slides.

Overview

While traditional AI coding assistants can write Manim code, executing that code and structuring it into a readable presentation format has remained a manual process. This MCP server bridges the gap by providing AI clients (like Claude Desktop, Cursor, or Antigravity) with direct tools to:

  1. Execute Manim Scripts: Dynamically run generated Manim code safely.
  2. Handle Slides Orchestration: Natively support the Slide class for presentation logic.
  3. Compile Presentations: Convert rendered animations into interactive HTML presentations (Reveal.js) directly from the AI prompt.

Demo

Manim-Slides MCP Demo

Features

  • Direct Code Execution: Send Python code containing Manim Slide classes; the server handles temporary file creation, execution, and cleanup.
  • Error Feedback Loop: Captures standard output and runtime exceptions, feeding them back to the AI for autonomous debugging.
  • Live Render Progress: Streams rendered-frame percentage updates to the client via notifications/progress.
  • Render Caching: Content-hashes each render request (code + scenes + quality) to skip re-rendering unchanged slides, reusing previously rendered media from .render_cache.
  • HTML/Reveal.js Export: Seamlessly compiles the generated video assets into a fully functional interactive web presentation.
  • One-Click Browser Preview: Serves the exported Reveal.js HTML on an ephemeral local HTTP server so it can be opened in a browser with a single call.
  • State Management: Persists generated media in structured workspace directories for easy access.

Prerequisites

Ensure your system has the following installed:

Installation

git clone https://github.com/antoniomachuca/MCP-Manim-Slides.git
cd MCP-Manim-Slides

# Install uv if needed: https://docs.astral.sh/uv/getting-started/installation/

# Create the environment and install the project plus dev dependencies
uv sync --extra dev

Configuration

To integrate this server with an MCP-compatible client (e.g., Claude Desktop, Cursor, Antigravity), add the following to your client configuration JSON:

{
  "mcpServers": {
    "manim-slides": {
      "command": "/absolute/path/to/MCP-Manim-Slides/.venv/bin/python",
      "args": [
        "/absolute/path/to/MCP-Manim-Slides/mcp_manim_slides/server.py"
      ],
      "env": {
        "WORKSPACE_DIR": "/path/to/your/output/directory"
      }
    }
  }
}

Available MCP Tools & Resources

Tools (@mcp.tool)

  • hello_world(name: str = "World"): Connectivity check tool to verify client-server MCP communication.
  • execute_manim_code(code: str, scenes: list[str] | None = None, quality: str = "l", media_dir: str | None = None, timeout: int = 600, use_cache: bool = True): Writes the provided Manim code to a secure temporary script, renders the scenes headlessly via manim-slides render, and returns paths to produced media files. Caches rendered output by a content hash of code/scenes/quality and skips re-rendering unchanged requests unless use_cache=False.
  • compile_presentation(scenes: list[str], dest: str, folder: str = "slides", output_format: str = "auto", config: dict[str, str] | None = None, one_file: bool = False, workspace_dir: str | None = None, timeout: int = 300): Compiles rendered slide assets into an interactive presentation via manim-slides convert (supports html/Reveal.js, pdf, pptx, zip, custom Reveal.js themes and transition configs).
  • export_revealjs_html(scenes: list[str], dest: str, folder: str = "slides", theme: str = "black", transition: str = "none", transition_speed: str = "default", controls: bool = False, progress: bool = False, slide_number: bool = False, hash: bool = False, loop: bool = False, title: str | None = None, config: dict[str, str] | None = None, one_file: bool = False, offline: bool = False, workspace_dir: str | None = None, timeout: int = 300): First-class Reveal.js HTML export via manim-slides convert --to html, with typed configuration for themes, transitions, navigation controls, slide numbers, deep linking, looping, and offline/one-file embedding.
  • preview_slide(scene: str, slide_index: int = 0, output_format: str = "png", folder: str = "slides", workspace_dir: str | None = None, timeout: int = 120): Extracts a single slide preview (image frame png/jpg/webp, video snippet mp4, or animated gif) via FFmpeg for rapid visual validation without compiling the full presentation.
  • list_scenes(folder: str = "slides", workspace_dir: str | None = None): Discovers and lists all rendered scenes, slide counts, and metadata available in the workspace.
  • serve_revealjs_html(dest: str, workspace_dir: str | None = None, host: str = "127.0.0.1", port: int | None = None, open_browser: bool = True): Serves an exported Reveal.js HTML deck on an ephemeral local HTTP server for one-click browser preview. Returns the preview URL and optionally opens it in the default browser.
  • stop_preview_server(port: int | None = None): Stops a running ephemeral preview server by port, or all preview servers when no port is given.

Resources (@mcp.resource)

  • status://server: Telemetry resource returning current server status, Python version, and environment details.
  • revealjs://config: Lists supported Reveal.js HTML export options (themes, transitions, transition speeds, boolean toggles, and defaults).
  • slides://list: Resource listing all rendered slide configurations and metadata in the active workspace.

License

This project is licensed under the MIT License.

from github.com/antoniomachuca/MCP-Manim-Slides

Установка Manim Slides Server

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/antoniomachuca/MCP-Manim-Slides

FAQ

Manim Slides Server MCP бесплатный?

Да, Manim Slides Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Manim Slides Server?

Нет, Manim Slides Server работает без API-ключей и переменных окружения.

Manim Slides Server — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Manim Slides Server в Claude Desktop, Claude Code или Cursor?

Открой Manim Slides Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Fetch

Web content fetching and conversion for efficient LLM usage.

автор: Community

Roblox Studio

Enables AI coding tools to control Roblox Studio for workspace exploration, instance manipulation, and script management. It provides tools for playtesting, sce

paralovавтор: paralov

AWS KB Retrieval

Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.

modelcontextprotocolавтор: modelcontextprotocol

Spring AI MCP Server

Provides auto-configuration for setting up an MCP server in Spring Boot applications.

автор: Community

llm-analysis-assistant

A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also

xuzexin-hzавтор: xuzexin-hz

MCP-Agent

A simple, composable framework to build agents using Model Context Protocol by [LastMile AI](https://www.lastmileai.dev)

lastmile-aiавтор: lastmile-ai

Spring AI MCP Client

Provides auto-configuration for MCP client functionality in Spring Boot applications.

автор: Community

mcp.natoma.ai

A Hosted MCP Platform to discover, install, manage and deploy MCP servers by [Natoma Labs](https://www.natoma.ai)

автор: Community

MCPHub

Website to list high quality MCP servers and reviews by real users. Also provide online chatbot for popular LLM models with MCP server support.

автор: Community

MCP Servers Rating and User Reviews

Website to rate MCP servers, write authentic user reviews, and [search engine for agent & mcp](http://www.deepnlp.org/search/agent)

автор: Community

Compare Manim Slides Server with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai