Skip to main content
Glama
chrishayuk
by chrishayuk

remotion_list_themes

Browse available YouTube video themes with pre-configured color palettes, typography, and motion design for tech, finance, education, gaming, and other content types.

Instructions

List available YouTube video themes.

Returns all pre-built themes optimized for YouTube videos. Each theme includes
color palettes, typography settings, and motion design tokens optimized for
specific content types (tech, finance, education, gaming, etc.).

Returns:
    JSON object with all available themes and their tokens

Example:
    themes = await remotion_list_themes()
    # Returns all themes (tech, finance, education, lifestyle, gaming, etc.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The core handler function for 'remotion_list_themes' tool. Defined as an async function decorated with @mcp.tool inside register_theme_tools. Lists available themes using ThemeManager, extracts metadata, and returns formatted JSON string.
    @mcp.tool
    async def remotion_list_themes() -> str:
        """
        List all available video themes with descriptions.
    
        Returns a list of built-in YouTube-optimized themes including their
        characteristics, primary colors, and recommended use cases.
    
        Returns:
            JSON array of themes with metadata
    
        Example:
            themes = await remotion_list_themes()
            # Returns: tech, finance, education, lifestyle, gaming, minimal, business
        """
    
        def _list():
            theme_keys = theme_manager.list_themes()
            theme_list = []
    
            for key in theme_keys:
                theme = theme_manager.get_theme(key)
                if theme:
                    theme_list.append(
                        {
                            "key": key,
                            "name": theme.name,
                            "description": theme.description,
                            "primary_color": theme.colors.primary[0]
                            if theme.colors.primary
                            else "N/A",
                            "accent_color": theme.colors.accent[0]
                            if theme.colors.accent
                            else "N/A",
                            "use_cases": theme.use_cases[:3],  # First 3 use cases
                        }
                    )
    
            return json.dumps({"themes": theme_list}, indent=2)
    
        return await asyncio.get_event_loop().run_in_executor(None, _list)
  • The registration call to register_theme_tools which defines and registers the 'remotion_list_themes' tool (and other theme tools) with the MCP server instance.
    register_theme_tools(mcp, project_manager, vfs)
  • Creation of the shared ThemeManager instance used by remotion_list_themes to access theme data.
    theme_manager = ThemeManager(vfs)

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/chrishayuk/chuk-mcp-remotion'

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