Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
T2A_MCP_TARGETNoWhere register writes the MCP entry.<repo-parent>/.mcp.json
TEXT2ANIMATE_PORTNoPreferred preview port (walks upward if taken).4321
T2A_NO_AUTO_REGISTERNoSet to skip auto-registration on npm install.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_best_practicesA

Return the guidelines for composing and animating SVGs. Read this before generating an animation. Pass a style (a preset key like "minimal-modern" or a freeform phrase like "minimalistic but modern") to also get concrete art direction for that look.

list_stylesA

List the built-in animation style presets. You can also pass any freeform style phrase to create_animation/get_best_practices.

create_animationA

Render a self-contained animated SVG in the local preview UI and open it in the browser. First compose the scene as a layered SVG with an explicit viewBox, then animate it with CSS @keyframes (or SMIL) embedded in the SVG, using natural easing. Call get_best_practices (optionally with a style) first if you need the full guidance. Pass the same style you designed for so it is recorded and shown. The svg argument must be a complete ... document that animates on its own with no external assets or scripts.

list_animationsB

List animations created this session, newest first.

await_edit_requestA

Long-poll for the next change the user typed into the preview UI's chat box. This is how live edits work: call it, and it blocks until a request arrives (or ~25s passes). When it returns an edit, apply the change FAST: for small tweaks (color, size, position, timing, text, easing) call apply_patch with minimal find/replace edits — do NOT regenerate the whole SVG. Use apply_edit (full SVG) only for structural changes. Then call await_edit_request again to keep watching. When it returns 'idle', simply call it again. Keep this loop running while the user iterates.

apply_editB

Apply a regenerated SVG to the animation referenced by an edit request (from await_edit_request). Updates the animation in place — the preview UI refreshes live. Pass the complete new .

apply_patchA

Apply small find/replace edits to an animation's SVG in place — the fast path for tweaks like color, size, position, timing, text, or easing. Prefer this over apply_edit: it avoids resending the whole document. Each find must match the current SVG exactly (verbatim substring). If a find isn't found, the patch is rejected wholesale (nothing changes) — fix the find or fall back to apply_edit. The preview refreshes live.

open_previewA

Ensure the preview web server is running and open it in the browser.

Prompts

Interactive templates invoked by user choice

NameDescription
animateTurn a plain-language description into an animated SVG following best practices, then preview it.

Resources

Contextual data attached and managed by the client

NameDescription
animation-best-practicesHow to craft high-quality animated SVGs for text2animate.

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/tom-pettit/text2animate'

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