Keyframer
What this MCP does
Authors, validates, previews, and updates animated scenes, and generates React Native Reanimated code from them.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scene'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'description': 'Scene name shown in the editor (default "MCP scene")'}, 'scene': {'anyOf': [{'type': 'string'}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}], 'description': 'The scene as a JSON object (preferred) or a JSON string. Call get_scene_format for the shape.'}, 'make_public': {'type': 'boolean', 'description': 'Make the scene publicly viewable — its share link (keyframer.dev/share/<id>) and QR then work for anyone, not just this account'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'api': {'enum': ['reanimated', 'animated'], 'type': 'string', 'description': 'Default "reanimated"'}, 'scene': {'anyOf': [{'type': 'string'}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}], 'description': 'The scene as a JSON object (preferred) or a JSON string. Call get_scene_format for the shape.'}, 'scene_id': {'type': 'string', 'description': 'Generate from a saved scene instead of inline JSON'}, 'relative_positioning': {'type': 'boolean', 'description': 'Emit flex-relative layout instead of absolute coordinates'}, 'gesture_handler_version': {'enum': ['v2', 'v3'], 'type': 'string', 'description': 'react-native-gesture-handler major (default v2)'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scene_id'], 'properties': {'scene_id': {'type': 'string', 'description': 'Scene id from create_scene or list_scenes'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string', 'description': 'Alias for slug — a scene id from a recipe works too'}, 'slug': {'type': 'string', 'description': 'Recipe slug from search_recipes'}, 'scene_id': {'type': 'string', 'description': 'When a recipe has several scenes, pick one (defaults to the first)'}, 'include_code': {'type': 'boolean', 'description': 'Include generated code (default true)'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Scene id from list_scenes or an editor URL'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'section': {'enum': ['scene', 'nodes'], 'type': 'string', 'description': 'Default "scene"'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scene'], 'properties': {'scene': {'anyOf': [{'type': 'string'}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}], 'description': 'The scene as a JSON object (preferred) or a JSON string. Call get_scene_format for the shape.'}, 'samples': {'type': 'integer', 'maximum': 25, 'minimum': 3, 'description': 'Sample count across the duration (default 9)'}, 'element_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Only report these element ids'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1}, 'query': {'type': 'string', 'description': 'What to build, e.g. "snap carousel with parallax" or "countdown ring"'}, 'category': {'enum': ['guides', 'keyframes', 'node-graphs', 'shaders', 'timing', 'gestures', 'scroll-lists'], 'type': 'string'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scene_id', 'scene'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'description': 'New name (unchanged if omitted)'}, 'scene': {'anyOf': [{'type': 'string'}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}], 'description': 'The scene as a JSON object (preferred) or a JSON string. Call get_scene_format for the shape.'}, 'scene_id': {'type': 'string', 'description': 'Scene id from create_scene or list_scenes'}, 'make_public': {'type': 'boolean', 'description': 'Change public visibility (unchanged if omitted)'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['scene'], 'properties': {'scene': {'anyOf': [{'type': 'string'}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}], 'description': 'The scene as a JSON object (preferred) or a JSON string. Call get_scene_format for the shape.'}}}
Recent tool changes
Similar MCP servers
GripForge
Generates, rigs, animates, analyzes, and packages game characters, weapons, armor, effects, environments, and engine-ready assets.
spriteship
Generates and manages 2D game characters, assets, animations, tilesets, UI packs, maps, and engine-ready exports for multiple gam…
Blixtworks
Offers pay-per-call utilities for text, image processing and analysis, data conversion, validation, web inspection, cryptography,…
Compose Preview Catalogs
Browses, renders, compares, audits, and edits Jetpack Compose preview catalogs and associated UI designs.
arch-tools-mcp
Provides general-purpose agent APIs for browser automation, web and PDF extraction, data conversion, email operations, fact check…
kernelcad
Authors, evaluates, reviews, simulates, edits, and exports parametric CAD assemblies and geometry from editable TypeScript-based …
floot
Creates, edits, previews, databases, and publishes full-stack web and mobile applications with hosted resources and deployment wo…
Raven
Supports coding agents with design audits, design-system guidance, and a configurable visual preference profile.