rive-analyzer
Provides tools for inspecting, validating, controlling, and shipping Rive .riv animation files, including parsing artboards, state machines, animations, view models, data enums, assets, contracts, and generating platform-specific code.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rive-analyzerinspect animation.riv"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Rive Playground
v1.1.0 — "Living Canvas"
Where your animation goes from a file to a living product.
Inspect, validate, control, and ship Rive .riv animation files — from the terminal, AI assistants, or a visual playground. The complete toolchain for teams that build with Rive at scale.
What's New in v1.1.0 — "Living Canvas"
Area | Feature |
Parser | Animation |
Parser |
|
Parser | ViewModel extraction — real data from |
Parser | DataEnum extraction — full enum names and values |
CLI |
|
CLI |
|
CLI |
|
CLI |
|
CLI |
|
CLI |
|
MCP | 5 new tools: |
Playground | Events Log Panel — real-time Rive event stream |
Playground | Preset Library — save/load/apply named configurations |
Playground | URL deep-linking — |
Playground | Keyboard shortcuts — Space play/pause, R reset, Ctrl+S save preset |
Playground | Error toasts — surface silent failures visually |
Infra | Vitest test suite (16 tests) |
Infra |
|
Related MCP server: Rive MCP Server
Overview
rive-analyzer CLI Terminal-first inspection, codegen, validation
MCP Server AI assistant integration (Claude, OpenCode)
Rive Playground Visual editor + preset library + event log
.rive-playground/ Project config — presets, contracts (git-trackable)Installation
cd /path/to/rive-mcp-analyzer
npm install
npm run build
npm link # optional: global CLI installCLI Reference
inspect
rive-analyzer inspect ./animation.riv
rive-analyzer inspect ./animation.riv --jsonscan
rive-analyzer scan ./public/validate
rive-analyzer validate ./animation.riv ./src/constants/rive.tsgenerate-types
rive-analyzer generate-types ./animation.riv -o ./src/rive-generated.tsgenerate-platform
rive-analyzer generate-platform ./animation.riv --target swift
rive-analyzer generate-platform ./animation.riv --target kotlin -o RiveConstants.kt
rive-analyzer generate-platform ./animation.riv --target json-schema
rive-analyzer generate-platform ./animation.riv --target zod
rive-analyzer generate-platform ./animation.riv --target dartcontract-generate
rive-analyzer contract-generate ./animation.riv -o .rive-playground/contracts/animation.yamlContract example:
version: 1.1.0
file: animation.riv
artboard: Main
stateMachine: Main SM
inputs:
speed:
type: number
min: 0
max: 10
description: "Animation speed multiplier"
isVisible:
type: boolean
RESET:
type: triggercontract-validate
rive-analyzer contract-validate ./animation.riv ./animation.rive-contract.yaml
# Exits 1 if: input removed, type changed, artboard renamedcompare
rive-analyzer compare ./animation-v1.riv ./animation-v2.riv
# Exits 1 on breaking changes — CI-safelist-assets
rive-analyzer list-assets ./animation.rivexport-fields
rive-analyzer export-fields ./animation.riv --jsoninit
rive-analyzer init
# Creates: .rive-playground/{presets,contracts,schedules,config.json}watch
rive-analyzer watch "./public/**/*.riv"MCP Server (11 tools)
node dist/mcp.jsAdd to Claude Desktop:
{
"mcpServers": {
"rive-analyzer": {
"command": "node",
"args": ["/absolute/path/to/rive-mcp-analyzer/dist/mcp.js"]
}
}
}Tool | Description |
| Parse .riv — artboards, SMs, animations |
| Scan directory recursively |
| Check JS/TS config against .riv |
| TypeScript constants |
| Watch for changes |
| Deep extract ViewModels, DataEnums |
| Enumerate embedded/CDN assets |
| Generate .rive-contract.yaml |
| Validate .riv against contract |
| Swift/Kotlin/JSON Schema/Zod/Dart |
| Diff two files, detect breaking changes |
Playground
cd playground
npm install
npm run dev
# Open http://localhost:5173Panels
Panel | What it does |
Artboard | Select artboard and animation |
State Machine | Live boolean/number/trigger controls |
ViewModel | All property types with live editing |
Text Runs | Edit text content, auto-discover from VMs |
Events | Real-time Rive event log |
Presets | Save / load / apply named configurations |
Export | JSON + Markdown export |
Keyboard Shortcuts
Key | Action |
| Play / Pause |
| Reset animation |
| Save current state as preset |
| Zoom canvas |
| Pan canvas |
| Reset view |
URL Deep-linking
http://localhost:5173?file=https://cdn.example.com/animation.riv&artboard=Main&sm=Main+SMRive Contract System
The safety net between designers and developers. Define constraints on inputs — validate on every CI run.
# 1. Generate contract scaffold from .riv
rive-analyzer contract-generate hero.riv -o .rive-playground/contracts/hero.yaml
# 2. Edit: add min/max, required, descriptions
# 3. Validate in CI
rive-analyzer contract-validate hero.riv .rive-playground/contracts/hero.yamlProject Structure
src/
cli.ts CLI (Commander + Clack, banner + NhoNH signature)
mcp.ts MCP server (11 tools)
parser/riveParser.ts WASM headless parser
tools/
contract.ts Contract system (YAML + Zod)
compareFiles.ts Breaking change detection
generateMultiplatform.ts Swift/Kotlin/JSON Schema/Zod/Dart codegen
listAssets.ts Asset enumeration
exportFields.ts ViewModel/DataEnum extraction
[inspect, scan, validate, generateTypes, watch].ts
ui/theme.ts CLI design system
ui/banner.ts ASCII art + NhoNH signature
playground/src/
hooks/useRivePlayground.ts Core state + event capture
hooks/usePresets.ts localStorage preset library
components/panels/
EventsPanel.tsx Real-time event log
PresetsPanel.tsx Save/load configurations
components/Toast.tsx Error notifications
types.ts RiveEvent, Preset, PlaygroundState
.rive-playground/ Git-trackable project config
presets/ Named configuration snapshots
contracts/ .rive-contract.yaml files
schedules/ (v1.2.0)Roadmap
Version | Theme | Highlights |
v1.1.0 | Living Canvas | Contract system, multi-platform codegen, preset library, events |
v1.2.0 | Living Server | LiveConfig HTTP+WS, Config Scheduler, MCP-Playground bridge |
v1.3.0 | Intelligence | AI Narrator, AI Config Assistant (opt-in), SM Visual Graph |
Built by NhoNH · rive-analyzer · github.com/hoainho
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceEnables AI assistants to inspect, modify, export, and validate design documents with 47 tools covering design, code generation, branding, and print/mockup workflows.Last updated41MIT
- Flicense-qualityFmaintenanceOrchestrates Rive animations by enabling discovery, integration, and composition across frameworks like React and Vue, with code generation and multi-backend storage.Last updated5
- Alicense-qualityFmaintenanceEnables AI agents to inspect, search, and edit Unreal Engine animation data including sequences, montages, blend spaces, animation blueprints, skeletons, and skeletal meshes via 62 tools over MCP.Last updatedMIT
- Alicense-qualityBmaintenanceEnables creating, editing, inspecting, rendering, and live-previewing Rive (.riv) animations directly from Claude without needing the Rive editor or cloud subscription, including building .riv files from scratch and a local web studio for human-AI collaboration.Last updated522Inno Setup
Related MCP Connectors
16 AI-native tools with dual SSE + streamable-http transport. Free tier available.
Design-system contract verification, scoring, and review tools for AI agents.
15 media & data tools for AI agents: search, transcribe, subtitles, voiceover, translate & more.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/nano-step/rive-playground'
If you have feedback or need assistance with the MCP directory API, please join our Discord server