Skip to main content
Glama

export_revealjs_html

Convert rendered Manim-Slides scenes into an interactive Reveal.js HTML presentation, with configurable themes, transitions, and navigation controls.

Instructions

Export rendered Manim-Slides scenes to an interactive Reveal.js HTML deck.

Wraps ``manim-slides convert --to html`` with first-class Reveal.js
configuration for themes, transitions, and navigation controls.

Args:
    scenes: Names of the rendered Scene/Slide classes to include, in order.
    dest: Destination path for the exported HTML deck
        (e.g., "presentation.html").
    folder: Directory containing the rendered slide assets (default "slides").
    theme: Reveal.js theme: "black", "white", "league", "beige", "sky",
        "night", "serif", "simple", "solarized", "blood", "moon", or
        "dracula". Defaults to "black".
    transition: Slide transition: "none", "fade", "slide", "convex",
        "concave", or "zoom". Defaults to "none".
    transition_speed: Transition speed: "default", "fast", or "slow".
    controls: Show navigation control arrows in the corner.
    progress: Show a presentation progress bar.
    slide_number: Display the current slide number.
    hash: Add the current slide to the URL hash for deep linking.
    loop: Loop the presentation.
    title: Presentation title used in the browser tab.
    config: Extra Reveal.js converter options as key/value pairs
        (e.g., {"background_color": "white"}).
    one_file: Embed all local assets (e.g., videos) into a single HTML file.
    offline: Download remote Reveal.js assets for offline viewing.
    workspace_dir: Working directory for the conversion. Defaults to the
        ``WORKSPACE_DIR`` environment variable or the current directory.
    timeout: Maximum time in seconds to wait for the conversion.

Returns:
    A JSON string with the export status, output destination,
    executed command, and captured stdout/stderr.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
destYes
hashNo
loopNo
themeNoblack
titleNo
configNo
folderNoslides
scenesYes
offlineNo
timeoutNo
controlsNo
one_fileNo
progressNo
transitionNonone
slide_numberNo
workspace_dirNo
transition_speedNodefault

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the transparency burden and does a solid job: it discloses that it wraps 'manim-slides convert --to html', describes asset embedding with one_file and offline downloading, and returns captured stdout/stderr plus the executed command. It does not explicitly mention overwrite behavior or failure modes, so it is not a perfect 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with an intro, an Args section, and a Returns section. Despite its length, every line adds useful semantic information required for a 17-parameter tool, and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (17 parameters, no annotations, no inline schema descriptions), the description is fully sufficient: it covers all parameters, provides defaults and allowed values, and describes the JSON return value. This is enough for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description explains every parameter in plain language and even enumerates valid values for theme, transition, and transition_speed. This goes far beyond the bare types and defaults in the input schema, giving the agent actionable semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Export rendered Manim-Slides scenes to an interactive Reveal.js HTML deck.' It clearly distinguishes itself from siblings like serve_revealjs_html and compile_presentation by stating the export-oriented goal and the underlying conversion command.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes it clear this is for exporting already-rendered scenes to HTML, implying it should be used after rendering and when a static Reveal.js deck is needed. It does not explicitly name alternatives or state when not to use it, but the context is strong enough for an agent to infer appropriate use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/antoniomachuca/MCP-Manim-Slides'

If you have feedback or need assistance with the MCP directory API, please join our Discord server