Skip to main content
Glama

MotionSpec — web animation accessibility MCP

Server Details

Web animation accessibility MCP: GSAP, static CSS checks, prefers-reduced-motion, WCAG 2.2.2/2.3.3.

Ownership verified
Status
Healthy
Uptime
100.0% over 55 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
MasterPlayspots/motionspec
GitHub Stars
0
Server Listing
motionspec

TDQS

A4.1/5.0

Scored across 5 tools

Disambiguation4/5

Each tool has a distinct core purpose: catalog (lookup), validate (pre-check), compile (codegen), audit (external URL scan), stats (telemetry). motion_validate and motion_compile overlap since compile also validates fail-closed, but descriptions clarify validate is a pre-check and compile produces artifacts, so confusion is limited.

Naming Consistency5/5

All five tools use a consistent motion_ prefix with lowercase snake_case nouns/verbs (audit, catalog, compile, stats, validate). The pattern is predictable and uniform throughout.

Tool Count5/5

Five tools is well-scoped for a motion verification/compilation service, covering discovery, validation, codegen, auditing, and telemetry without redundancy. Each tool clearly earns its place.

Completeness4/5

The lifecycle covers discover (catalog) → check (validate) → build (compile) → audit-existing (audit) plus telemetry, which is coherent. There is no explicit spec-authoring/fetch tool, but the design intends the agent to write specs itself, so this is a minor rather than blocking gap.

Available Tools

5 tools
motion_auditAudit a live URL for motion accessibility (WCAG 2.2.2 / 2.3.3)
Read-only
Inspect

Requires a Dev Key ($39/mo) or Agency plan ($249/mo) on the hosted endpoint (motionspec.dev/pricing?src=mcp). This unauthenticated call returns access information only; it does not compile code, fetch URLs, run an audit or read usage data. Arguments are optional and unused. Returns isError:true with structuredContent {ok:false, error:'PAYWALL', tool, upgrade} and text guidance. To use motion_audit on the hosted endpoint, connect with an x-motionspec-key header. Run the static URL audit locally for free with 'npx -p motionspec motion audit --json' (MIT).

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoThe page URL to audit (http/https).
motion_catalogMotionSpec catalog & authoring rulesA
Read-only
Inspect

Returns the catalog of verified motion primitives (names, purpose, parameter schemas, defaults) plus the authoring rules for writing a MotionSpec. Call this FIRST, then write the spec yourself and validate it with motion_validate (motion_compile runs in the CLI or with a key on the hosted endpoint). Free motion check: motionspec.dev/motion-check · keys for the hosted endpoint: motionspec.dev/pricing?src=mcp.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds real behavioral context beyond that: it is a bootstrap/discovery call that returns definitions rather than performing work, and it discloses that motion_compile requires the CLI or a hosted key.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with what is returned, then the call order, then the compile caveat. The trailing promotional URLs (motion-check, pricing) are useful pointers but slightly dilute the definition; the substance is still tight and well ordered.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description compensates by enumerating the return contents (names, purpose, schemas, defaults) and the authoring rules. Combined with the sequencing guidance and the compile auth caveat, an agent has everything needed to use it correctly in the workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to document and the baseline of 4 applies. The description correctly implies no input is needed to retrieve the catalog.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (returns) and resource (the catalog of verified motion primitives) and enumerates the payload (names, purpose, parameter schemas, defaults) plus the authoring rules for a MotionSpec. It also implicitly distinguishes itself from siblings by naming motion_validate and motion_compile as downstream steps.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit sequencing instruction ('Call this FIRST, then write the spec yourself and validate it with motion_validate') and clarifies where motion_compile actually runs (CLI or hosted endpoint with a key). An agent knows both when to call it and which sibling to use next.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

motion_compileCompile a MotionSpec to GSAP/CSS
Read-only
Inspect

Requires a Dev Key ($39/mo) or Agency plan ($249/mo) on the hosted endpoint (motionspec.dev/pricing?src=mcp). This unauthenticated call returns access information only; it does not compile code, fetch URLs, run an audit or read usage data. Arguments are optional and unused. Returns isError:true with structuredContent {ok:false, error:'PAYWALL', tool, upgrade} and text guidance. To use motion_compile on the hosted endpoint, connect with an x-motionspec-key header. motion_compile runs locally for free with 'npx -p motionspec motion compile <spec.json>' (MIT).

ParametersJSON Schema
NameRequiredDescriptionDefault
specNoThe MotionSpec JSON object
specNameNoOptional name used in the artifact header
motion_statsMotionSpec usage telemetry
Read-only
Inspect

Requires a Dev Key ($39/mo) or Agency plan ($249/mo) on the hosted endpoint (motionspec.dev/pricing?src=mcp). This unauthenticated call returns access information only; it does not compile code, fetch URLs, run an audit or read usage data. Arguments are optional and unused. Returns isError:true with structuredContent {ok:false, error:'PAYWALL', tool, upgrade} and text guidance. To use motion_stats on the hosted endpoint, connect with an x-motionspec-key header. Read local telemetry for free with 'npx -p motionspec motion stats' (MIT). This reads this machine's local activity, not hosted usage.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

motion_validateValidate a MotionSpec (trust boundary)A
Read-only
Inspect

Checks a MotionSpec against the schema, the primitive allow-list, parameter bounds and injection rules. Fail-closed: returns ok=false with precise errors. Returns {ok, errors, warnings, deprecations, catalogVersion}. IMPORTANT: warnings[] carries the WCAG 2.2.2 / reduced-motion findings and can be non-empty while ok=true — a spec that compiles is not automatically accessible. Use to pre-check a spec before compiling.

ParametersJSON Schema
NameRequiredDescriptionDefault
specYesThe MotionSpec JSON object

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond the readOnlyHint and openWorldHint annotations by disclosing fail-closed behavior, the exact return shape, and the non-obvious fact that warnings can be non-empty while ok=true. It also explains the accessibility implication, which is critical for correct agent behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded, with the core validation behavior stated first, followed by the return shape and the critical warning caveat. Every sentence earns its place, and the formatting highlights the most important behavioral nuance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter, read-only validation tool with no output schema, the description fully covers what the tool does, when to use it, what it returns, and the key failure and warning semantics. An agent has sufficient information to select and invoke it correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage for the single parameter is 100%, so the baseline is 3. The description adds meaningful semantics by clarifying that the spec parameter is a MotionSpec and by enumerating the validation dimensions applied to it, such as the primitive allow-list and injection rules, which the schema alone does not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Checks') and a specific resource ('MotionSpec'), then enumerates exactly what it validates against: schema, primitive allow-list, parameter bounds, and injection rules. It clearly distinguishes itself from the sibling motion_compile by positioning validation as a pre-compile safety check.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use to pre-check a spec before compiling,' which gives clear guidance on when to call this tool. It also explains the important warning behavior so an agent knows this is the right tool for accessibility checks before compilation, though it does not explicitly name or exclude alternatives beyond the pre-compile framing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • Addedmotion_audit
    • Addedmotion_compile
    • Addedmotion_stats
  2. 2 tool updates
    • First observedmotion_catalog
    • First observedmotion_validate

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.