プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。Google でログインするとレビューを書けます。プロトタイプ · 30分ごとに更新
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

MotionLint

作者:bobaba99バージョン 0.2.1i★ 0iパソコンで動く
レジストリ名io.github.bobaba99/motionlint

インストール方法

What it does

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

  • Connects パソコンで動く
  • Account or key No key needed
  • Category デザイン・画像・音声

インストール

使っているAIアプリを選んで、設定をコピーしてください。

チェック 3/3 合格 · あなたのパソコンで動きます · ✓ コマンド確認済み 2026年11月14日

まず:どの AI を使っていますか?

使っているアプリを選ぶと、下に手順が表示されます。

Claude につなげますが、先に準備が必要です

先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません

AI にインストールしてもらう

このメッセージを Claude のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。

このパソコンの Claude に MCP server MotionLint を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "mcpServers": { "motionlint": { "command": "npx", "args": [ "-y", "motionlint", "mcp" ] } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) キーは不要。5) 了承した内容を実行し、MotionLint のツールが本当に表示されるか確認する。

このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。

  1. Node.js を入れる(まだなければ)

    もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter

    node -v
    • バージョン番号(例 v26.13.1)が出る = 入っています。この手順は飛ばせます
    • "command not found"(Windows では "is not recognized")が出る = まだ入っていないか、入れた直後でターミナルを開き直す必要があります
    ターミナルの開き方

    Mac:⌘ + Space を押し、Terminal と入力して Enter

    Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」

    まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です

    Node.js のダウンロードページを開く ↗

    入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v

    一度入れれば、Node.js を使うすべてのツールで使えます

  2. パソコン版 Claude アプリの設定ファイルを開く

    SettingsDeveloperEdit Config

  3. この設定を貼り付けて保存

    {
      "mcpServers": {
        "motionlint": {
          "command": "npx",
          "args": [
            "-y",
            "motionlint",
            "mcp"
          ]
        }
      }
    }
  4. Claude を終了してもう一度開く

  5. 試してみる

    MotionLint を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude が MotionLint を使っていると言うか、回答に MotionLint のツール名が出れば接続成功です

追加の設定 4 項目(入力しなくても使えます)

上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。

  • ANTHROPIC_API_KEY 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 OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY Google API key for vision-LLM review. Optional.
  • OPENAI_BASE_URL Override the OpenAI base URL to target an OpenAI-compatible endpoint. Optional.

説明は英語の原文のままです。

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

ChatGPT はまだ MotionLint につなげません

MotionLint はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません

代わりにできること

A · MotionLint につなげるアプリを使う

  • 先にパソコンへ Node.js を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
  • 先にパソコンへ Node.js を入れてください(1 回だけ)
  • 先にパソコンへ Node.js を入れてください(1 回だけ)
  • 先にパソコンへ Node.js を入れてください(1 回だけ)

B · デザイン・画像・音声 の中で ChatGPT につなげる別のサーバー

同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました

Claude Code につなげますが、先に準備が必要です

先にパソコンへ Node.js を入れてください(1 回だけ)

AI にインストールしてもらう

このメッセージを Claude Code のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。

このパソコンの Claude Code に MCP server MotionLint を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):claude mcp add --scope user motionlint -- npx -y motionlint mcp 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) キーは不要。5) 了承した内容を実行し、MotionLint のツールが本当に表示されるか確認する。

このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。

  1. Node.js を入れる(まだなければ)

    もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter

    node -v
    • バージョン番号(例 v26.13.1)が出る = 入っています。この手順は飛ばせます
    • "command not found"(Windows では "is not recognized")が出る = まだ入っていないか、入れた直後でターミナルを開き直す必要があります
    ターミナルの開き方

    Mac:⌘ + Space を押し、Terminal と入力して Enter

    Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」

    まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です

    Node.js のダウンロードページを開く ↗

    入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v

    一度入れれば、Node.js を使うすべてのツールで使えます

  2. ターミナルを開く

    Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く

  3. このコマンドを貼り付けて Enter

    claude mcp add --scope user motionlint -- npx -y motionlint mcp
  4. Claude Code で /mcp と入力

    MotionLint が一覧にあり、接続済みと表示されれば OK です

  5. 試してみる

    MotionLint を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Claude Code が MotionLint を使っていると言うか、回答に MotionLint のツール名が出れば接続成功です

追加の設定 4 項目(入力しなくても使えます)

上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。

  • ANTHROPIC_API_KEY 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 OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY Google API key for vision-LLM review. Optional.
  • OPENAI_BASE_URL Override the OpenAI base URL to target an OpenAI-compatible endpoint. Optional.

説明は英語の原文のままです。

メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Cursor につなげますが、先に準備が必要です

先にパソコンへ Node.js を入れてください(1 回だけ)

AI にインストールしてもらう

このメッセージを Cursor のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。

このパソコンの Cursor に MCP server MotionLint を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "mcpServers": { "motionlint": { "command": "npx", "args": [ "-y", "motionlint", "mcp" ] } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) キーは不要。5) 了承した内容を実行し、MotionLint のツールが本当に表示されるか確認する。

このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。

  1. Node.js を入れる(まだなければ)

    もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter

    node -v
    • バージョン番号(例 v26.13.1)が出る = 入っています。この手順は飛ばせます
    • "command not found"(Windows では "is not recognized")が出る = まだ入っていないか、入れた直後でターミナルを開き直す必要があります
    ターミナルの開き方

    Mac:⌘ + Space を押し、Terminal と入力して Enter

    Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」

    まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です

    Node.js のダウンロードページを開く ↗

    入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v

    一度入れれば、Node.js を使うすべてのツールで使えます

  2. このボタンで Cursor を開く

    Cursor で開く

    Cursor がインストールの確認をするので Install を押します

  3. Cursor の AI チャットを Agent モードで開く

  4. 試してみる

    MotionLint を使って、私に何ができるか教えて、1 つやってみせて

    ✓ Cursor が MotionLint を使っていると言うか、回答に MotionLint のツール名が出れば接続成功です

追加の設定 4 項目(入力しなくても使えます)

上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。

  • ANTHROPIC_API_KEY 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 OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY Google API key for vision-LLM review. Optional.
  • OPENAI_BASE_URL Override the OpenAI base URL to target an OpenAI-compatible endpoint. Optional.

説明は英語の原文のままです。

メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

VS Code につなげますが、先に準備が必要です

先にパソコンへ Node.js を入れてください(1 回だけ)

AI にインストールしてもらう

このメッセージを VS Code のチャットに貼り付けます。AI がパソコンを確認し、変更するファイルを伝え、毎回あなたの了承を待ちます。

このパソコンの VS Code に MCP server MotionLint を入れてください。順番に:1) node -v で Node.js があるか確認。なければ https://nodejs.org/en/download から入れるよう私に伝え、自分では入れない。2) この設定だけを使う(PopNx MCP の確認済み):{ "servers": { "motionlint": { "type": "stdio", "command": "npx", "args": [ "-y", "motionlint", "mcp" ] } } } 3) 変更するファイルのフルパスか実行するコマンドを伝えて、私の了承を待つ。4) キーは不要。5) 了承した内容を実行し、MotionLint のツールが本当に表示されるか確認する。

このメッセージにあなたのキーは含まれません。キーが必要な場合は、AI がファイルやアプリの入力欄にご自身で貼るよう案内します。

  1. Node.js を入れる(まだなければ)

    もう入っていますか?先に確認 · ターミナルを開き、このコマンドを入力して Enter

    node -v
    • バージョン番号(例 v26.13.1)が出る = 入っています。この手順は飛ばせます
    • "command not found"(Windows では "is not recognized")が出る = まだ入っていないか、入れた直後でターミナルを開き直す必要があります
    ターミナルの開き方

    Mac:⌘ + Space を押し、Terminal と入力して Enter

    Windows:スタートメニューを開き、Windows PowerShell と入力して「開く」

    まだ入っていない場合: 公式ダウンロードページで LTS 版と、クリックで進むインストーラーを選びます:Mac は .pkg、Windows は .msi。ダブルクリックして最後まで進めるだけで、curl コマンドは不要です

    Node.js のダウンロードページを開く ↗

    入れ終わったらターミナルを閉じて開き直し、同じコマンドをもう一度実行します。バージョン番号が出れば完了です: node -v

    一度入れれば、Node.js を使うすべてのツールで使えます

  2. このボタンで VS Code を開く

    VS Code で開く

    VS Code がインストールの確認をするので Install を押します

  3. VS Code の AI チャットを Agent モードで開く

  4. 試してみる

    MotionLint を使って、私に何ができるか教えて、1 つやってみせて

    ✓ VS Code が MotionLint を使っていると言うか、回答に MotionLint のツール名が出れば接続成功です

追加の設定 4 項目(入力しなくても使えます)

上のコマンドはこれらがなくても動きます。変えたいときだけ作者の説明に沿って追加してください。

  • ANTHROPIC_API_KEY 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 OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY Google API key for vision-LLM review. Optional.
  • OPENAI_BASE_URL Override the OpenAI base URL to target an OpenAI-compatible endpoint. Optional.

説明は英語の原文のままです。

メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります

Windsurf、Zed、Gemini CLI など MCP を使える他のアプリは追加方法がそれぞれ違います。アプリ一覧で確認してください

MCP を使えるアプリをすべて見る →

JSON 設定は下の「開発者向け」にあります

つまずいたら?MotionLint を使っている人に聞いてみましょう💬 ディスカッション →
開発者向け:ターミナルのコマンドと JSON 設定

パソコンにインストール

Claude Code

claude mcp add --scope user motionlint -- npx -y motionlint mcp

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "motionlint": {
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ]
    }
  }
}

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "motionlint": {
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ]
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "motionlint": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "motionlint",
        "mcp"
      ]
    }
  }
}

自分で入力する値

  • ANTHROPIC_API_KEY 秘密 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 秘密 env
    OpenAI API key for vision-LLM review. Optional.
  • GOOGLE_API_KEY 秘密 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.

説明は英語の原文のままです。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

ひと目でわかる

週あたりのダウンロードi
62/週
接続方法
パソコンで動く
最新バージョンi
0.2.1
レジストリ公開日i
2026年7月27日
コードの最終更新i
2026年7月27日
作者
bobaba99
パッケージ
npm: motionlint
レジストリでの状態
有効

使えるアプリ

このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。

パソコン上で動かせるアプリ

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

すべてのアプリと長所・短所 →

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月15日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント bobaba99 で確認済みです

  • ✓ 合格

    今もメンテナンスされている

    コードの最終更新:4 か月前

  • ✓ 合格

    ライセンスがある

    MITを使用

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

公開済みの脆弱性(OSV.dev)

まだ確認していません

確認していること → · JSON

作者の方へ:再確認の依頼・情報の誤りの報告

話し合い

質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。

まだ投稿はありません。最初の質問や共有をどうぞ。

ここの投稿は利用者によるもので、PopNx チームのものではありません。

ログインして投稿

ユーザーレビュー

まだレビューはありません

ログインしてレビューを書く

デザイン・画像・音声のほかのサーバーとの比較i

  • このカテゴリのほかの3075件のうち0%よりスターが多い
  • このカテゴリのほかの3075件のうち16%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの3075件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

MotionLintは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は4 か月前、最新バージョン(0.2.1)がレジストリに届いたのは4 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。

代わりに使えるものは?

同じカテゴリには:Pascal 3D Editor, Figma MCP Server, Remocn: Remotion MCP server, Harness, ChatCut

似た働きのほかの候補

同じカテゴリでほかの作者のもの。コマンドは確認済み。公式を先に、次にスター順。

カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Pascal 3D Editor

Create, inspect, validate, and save editable 3D building scenes with Pascal's MCP server.

作者:pascalorg広く使われている↓ 1037/週★ 2.6万 リポジトリ全体のスター一昨日更新

パソコンでもクラウドでも✓ 提供元 · pascal.app

Figma MCP Server

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

作者:figma広く使われている★ 218613 か月前更新

クラウドで動く✓ 提供元 · mcp.figma.com

Remocn: Remotion MCP server

Hosted MCP for Remotion videos: search Remocn components, read docs, plan a video, preview it.

作者:Remocn成長中★ 17055 日前更新

クラウドで動く✓ 提供元 · remocn.dev

Harness

Start Claude Code and Codex agents the person can watch, wait for them and read their answers.

作者:autonomous-ai成長中↓ 109/週★ 148727 日前更新

パソコンで動く✓ harness.autonomous.ai

ChatCut

AI video editor for agents: cut footage, add captions and motion graphics, export editable edits.

作者:ChatCut-Inc成長中★ 104116 日前更新

クラウドで動く✓ 提供元 · chatcut.io
  • Pascal 3D Editor — クラウドでもパソコンにインストールでも使える · キー不要
  • Figma MCP Server — クラウドで動き、インストール不要 · キー不要 · Claude のディレクトリに掲載
  • Remocn: Remotion MCP server — クラウドで動き、インストール不要 · キー不要
  • Harness — パソコンにインストールが必要 · キー不要
  • ChatCut — クラウドで動き、インストール不要 · キー不要

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

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

冒頭だけを表示しています。続きはリポジトリで読めます