Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

MotionLint

de bobaba99versión 0.2.1i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.bobaba99/motionlint

Instalar

Resumen

Descripción del creador (original en inglés)

Catch bad animations before they ship. Deterministic motion audit + vision-LLM design review.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Diseño, imágenes y audio
  • Debes completar: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

  • Revisiones básicas: 1 de 1 superadas
  • Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
  • Debes completar tú: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY, OPENAI_BASE_URL

Los valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.

Necesitas

  • npmNode.js instalado (para el comando npx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "motionlint": {
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your-value",
        "OPENAI_API_KEY": "your-value",
        "GOOGLE_API_KEY": "your-value",
        "OPENAI_BASE_URL": "your-value"
      }
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add motionlint --env ANTHROPIC_API_KEY=your-value --env OPENAI_API_KEY=your-value --env GOOGLE_API_KEY=your-value --env OPENAI_BASE_URL=your-value -- npx -y motionlint mcp

Completa los valores vacíos antes de ejecutarlo.

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "motionlint": {
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your-value",
        "OPENAI_API_KEY": "your-value",
        "GOOGLE_API_KEY": "your-value",
        "OPENAI_BASE_URL": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "motionlint": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "your-value",
        "OPENAI_API_KEY": "your-value",
        "GOOGLE_API_KEY": "your-value",
        "OPENAI_BASE_URL": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Valores que debes completar

  • ANTHROPIC_API_KEY secreto env
    Anthropic API key for vision-LLM review. Optional — the deterministic audit needs no key, and Ollama, OpenAI or Google can be used instead.
  • OPENAI_API_KEY secreto env
    OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY secreto env
    Google API key for vision-LLM review. Optional.
  • OPENAI_BASE_URL env
    Override the OpenAI base URL to target an OpenAI-compatible endpoint. Optional.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub bobaba99, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Diseño, imágenes y audioi

  • Más estrellas que el 0% de los otros 2184 servidores de esta categoría
  • Publicado en el registro más recientemente que el 18% de los otros 2184 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 2184 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro MotionLint?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

Debes completar: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (0.2.1) llegó al registro hace 3 meses.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Figma Context MCP, Claude Real Video, Figma MCP Server

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

Se ejecuta en tu computadora★ 16.165MITActualizado hace 5 meses
Instalar

Claude Real Video

de HUANGCHIHHUNGLeo

Let any LLM watch a video locally — and search everything it has ever watched.

Se ejecuta en tu computadora★ 2284MITActualizado hace 2 meses
Instalar

The Figma MCP server brings Figma design context directly into your AI workflow.

Se ejecuta en la nube★ 2152Actualizado hace 13 meses
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

MotionLint

Score any page's animation quality in one command. No API key, no config.

npx motionlint audit http://localhost:3000 --open

Deterministic — measured from the live page, no LLM involved. One-time prerequisite: npx playwright install chromium .

MotionLint measures the motion your app actually ships — durations, easing curves, stagger intervals, exit timing, reduced-motion support — and scores it against a published set of animation standards. Ease-in on a dropdown, a 600ms modal, a card that scales from 0, hover motion that fires on touch: all caught, all with the measured value and a concrete fix.

The audit is free and offline. Add an API key and MotionLint also does vision-LLM design review — multi-viewport screenshots and 50ms frame bursts of real user journeys, judged by a model and handed back to your coding agent as ranked findings. It runs as an MCP server inside Claude Code and Cursor.

Why this exists

AI coding agents read JSX, HTML, and CSS — they're blind to what the user actually sees, clicks, and watches animate. Rules in a prompt tell the agent what *should* happen; nothing checks what *did*. Modals that should slide in just pop; loading states get omitted; focus rings disappear. Code review can't catch any of this before merge, because none of it is visible in the diff.

MotionLint closes that loop: it measures the running app and feeds the verdict back.

How it's different

MotionLintVisual regression tools (Percy, Chromatic, Playwright snapshots)AI design generators (v0, Galileo, Claude Design, Stitch)
Deterministic motion audit13 checks, measured from the live page — no API key, $0✗✗
Multi-viewport UX reviewranked findings across 12 dimensionspixel diffs onlygenerates new layouts from prompts
Animation review50ms frame bursts via CDP screencast → contact sheet → LLM✗✗
Live animation tuningShadow-DOM previews + sliders + Claude Code export✗generates new motion, doesn't tune what's there
Native MCP server✓ stdio MCP for Claude Code / Cursor✗varies
CI gate✓ SARIF + exit codes for code scanning✓ image diff thresholds✗
Validated quality100% recall on a 24-fixture stress test, across 5 frontier modelsn/an/a

The conceptual gap MotionLint closes: visual-regression tools catch what *changed* but not whether the new pixels are *good*; AI design tools generate from scratch but don't review what's already running. MotionLint reviews live behavior with a vision LLM and feeds the verdict back into the coding loop.

Start here — no API key needed

npx playwright install chromium          # one-time per machine (~300MB)

npx motionlint audit http://localhost:3000 --open

That's the whole setup for the audit. It's deterministic, runs offline, costs nothing, and works on any URL you can load — your dev server, a staging deploy, or someone else's site. Requires Node 18+.

The rules it checks are published in docs/STANDARDS.md — read them before you install anything.

Then: LLM design review

Set one API key (ANTHROPIC_API_KEY, OPENAI_API_KEY, or GOOGLE_API_KEY — or run Ollama locally for free) and three more commands unlock:

npm install -g motionlint

Multi-viewport UX review of a page → ranked findings across 12 dimensions.

motionlint review http://localhost:3000

Animation review of a scripted user journey → frame contact sheet + report.

motionlint flow --spec flows/signup.json

Interactive HTML tuner — every animation on the page, with live sliders.

motionlint tune http://localhost:3000

Inside Claude Code / Cursor
claude mcp add motionlint -- npx -y motionlint mcp

Full flag surface — CI gates, route discovery, Storybook, dark mode, baselines

# CI mode — non-zero exit on critical issues, SARIF output for code scanning.

motionlint review https://staging.acme.dev --ci --threshold critical --format sarif -o ux.sarif

Polished, shareable HTML review with embedded screenshots + before/after fixes.

motionlint review http://localhost:3000 --format html -o review.html

Review every route the site knows about (sitemap.xml + Next.js app/ directory).

motionlint review http://localhost:3000 --discover-routes

Storybook mode — discover stories from /index.json, review each story iframe as its own route.

motionlint review http://localhost:6006 --storybook

Color-scheme sweep — light and dark modes, plus Windows High Contrast.

motionlint review http://localhost:3000 --schemes --forced-colors --format html -o review.html

Interaction affordances — grid each element's default/hover/focus/active states.

motionlint review http://localhost:3000 --state-grid

Agent focus — keep only the top 5 findings, and only ones not seen in prior runs.

motionlint review http://localhost:3000 --max-findings 5 --new-only

Before/after comparison — PR preview vs. production baseline.

motionlint review https://pr-123.preview.example.com --against https://prod.example.com

Reviewer focus — cap the SARIF upload at 10 annotations per report.

motionlint review https://staging.acme.dev --format sarif -o ux.sarif --max-pr-annotations 10

Pick a provider explicitly (auto-detect picks the first reachable one).

motionlint review http://localhost:3000 --provider anthropic --model claude-sonnet-5

Track provider quality across runs + teach the reviewer from eval misses.

motionlint eval --provider anthropic --evolve

Package on npm: motionlint.

Sample terminal output for a flow review:

$ motionlint flow --spec flows/signup.json --provider anthropic

→ Running flow "signup-happy-path" against http://localhost:3000/signup (11 steps, 50ms intervals × 750ms window) provider: anthropic (claude-sonnet-5) capturing flow… ✓ step 1: 16 frames ✓ step 2: 16 frames ✓ step 3: 16 frames … captured 176 frames in 31s contact sheet → .motionlint/flows/signup-happy-path-…png analyzing flow… report → .motionlint/flows/signup-happy-path.md

Score: 4/10 · 3 critical findings [critical] interaction — input focus rings missing across steps 2/4/6 [critical] interaction — submit button has no pressed state [critical] loading_state — 1.4s wait with no spinner during submit

Try the demo

A multi-route TS animation showcase ships in demo/ — covering Motion One, GSAP, anime.js, @formkit/auto-animate, and lottie-web — including a cat-themed one-pager that exercises every MotionLint capability in a single URL:

node demo/server.mjs                                # http://localhost:4173

motionlint review http://localhost:4173/cat --record --embed motionlint flow --spec flows/signup.json motionlint tune http://localhost:4173/dashboard

Routes available: /, /pricing, /signup, /dashboard, /loading, /cat. Reports go to .motionlint/reports/, screenshots to .motionlint/screenshots/, videos to .motionlint/videos/.

Setup

API keys

MotionLint auto-loads a .env file from the working directory at startup:

# .env (gitignored)

ANTHROPIC_API_KEY=sk-ant-...

or

OPENAI_API_KEY=sk-...

or

GOOGLE_API_KEY=...

or run a local Ollama (no key needed) — auto-detected on http://localhost:11434

Real environment variables take precedence over .env. With no key set and no Ollama running, MotionLint falls back to a deterministic mock provider so the full pipeline (capture → analysis → report) still runs end-to-end for smoke tests.

Provider auto-detect

MotionLint auto-detects in this order: Ollama (local) → Anthropic → OpenAI → Google. The first one with a working API key (or running service) wins. Override with --provider and --model . See Providers in depth for the per-provider quality scorecard and how to pick.


*Everything below is for readers who want to understand how MotionLint works under the hood, pick the right provider for their workflow, or wire it into CI.*

Validated quality across providers

The flow-review pipeline was stress-tested across 12 popular web-app animation patterns × 2 variants (24 fixtures total) — staggered entrances, hover/press/focus, modal entrances, loading skeletons, form errors, toasts, counter ramps, multi-animation dashboards, modal-with-content stagger, rich form feedback (focus + press + spinner + success), and scroll-driven animations (progress bar + IntersectionObserver reveal + parallax).

Run on 2026-07-27 against the current flagship from each major provider:

Provider · modelRecall (broken caught)FPR (clean flagged)Score gapWall time
OpenAI · gpt-5.6-sol100% (12/12)0% (0/12)+3.310.9 min
OpenAI · gpt-5.5100% (12/12)0% (0/12)+3.311.5 min
Anthropic · claude-opus-5100% (12/12)8% (1/12)+4.121.0 min
Google · gemini-3.6-flash100% (12/12)17% (2/12)+5.14.9 min
Anthropic · claude-sonnet-5100% (12/12)33% (4/12)+3.110.8 min

Read this as: recall is no longer a differentiator. Every current flagship catches all 12 seeded faults. That is the finding — a year ago it wasn't true, and it means the model choice no longer decides whether MotionLint works. Pick on cost and latency.

Do not rank these models on the FPR column. A single 24-fixture run cannot resolve it. Across two clean runs of the identical suite, with nothing changed but sampling, FPR moved by 1–2 fixtures per model — gpt-5.5 1/12 → 0/12, gpt-5.6-sol 2/12 → 0/12, gemini-3.6-flash 3/12 → 2/12. One fixture is 8 percentage points, so the entire spread between "0%" and "17%" sits inside the noise floor. Treat the column as *"all of these occasionally flag something clean"*, not as a ranking.

Why the older numbers in this table's history were wrong

The first 2026-07-27 run of this suite put claude-opus-5 at 83% recall — last among all five models — and the 2026-04-29 edition of this table reported several models at 0% FPR. Both were artifacts of a MotionLint bug, not model behaviour.

Anthropic's max_tokens defaulted to 4096. Verbose responses hit the ceiling mid-JSON, and the unparseable result was scored as 0/10, no issues found — indistinguishable from a clean review. Two of Opus 5's three truncations landed on broken fixtures, which produced the entire 83% figure.

The same bug deflated FPR everywhere: a truncated review reports *nothing*, so it cannot raise a false positive. Any historical "0% FPR" was partly measuring broken parsing rather than model precision. Fixed 2026-07-27, along with the sibling paths that turned truncated, refused, and safety-blocked responses into clean-looking results.

Full per-provider scorecards in .motionlint/stress/ after running scripts/run-all-benchmarks.mjs. Use --only : to re-run a single model.

Providers in depth

ProviderModelSetupQuality (24 fixtures)Cost per review¹

| google | gemini-3.6-flash | `GOOGLE_API

Solo se muestra el principio; lee el resto en el repo

Pregunta a PopNx