{"_id":"@axaraaudit/mcp-server","_rev":"5-f0c68cea14239d61ca522697e689b3d6","name":"@axaraaudit/mcp-server","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.3":{"name":"@axaraaudit/mcp-server","version":"0.1.3","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"license":"MIT","_id":"@axaraaudit/mcp-server@0.1.3","maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"homepage":"https://github.com/polo9908/axara#readme","bugs":{"url":"https://github.com/polo9908/axara/issues"},"bin":{"a11yengine-mcp":"dist/index.js"},"dist":{"shasum":"de5dd51979e56960a13c15a567ce5a710a300277","tarball":"https://registry.npmjs.org/@axaraaudit/mcp-server/-/mcp-server-0.1.3.tgz","fileCount":30,"integrity":"sha512-yf1lhrB5Nr7nlOAY5Ts32ogxxLQBkKhEjEqzstsGTySmDouamm7vGRDor80IjbY9C43OAAGqFWmbRC8zAlg6Aw==","signatures":[{"sig":"MEYCIQCEtXXRyCAZtM4zzwuUxHonikehWB0VBJiv3HpbZWWoTgIhANJ5u3YadR9gvzJ8o5LB0KbZUrmRnJv/TwMK4KSap+1J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41479},"main":"./dist/index.js","type":"module","_from":"file:axaraaudit-mcp-server-0.1.3.tgz","types":"./dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","clean":"rimraf dist","start":"node dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"polo9908","email":"paulo.videoo@gmail.com"},"_resolved":"C:\\Users\\pauls\\AppData\\Local\\Temp\\a3c70d49c6f069fce45941bc921f5007\\axaraaudit-mcp-server-0.1.3.tgz","_integrity":"sha512-yf1lhrB5Nr7nlOAY5Ts32ogxxLQBkKhEjEqzstsGTySmDouamm7vGRDor80IjbY9C43OAAGqFWmbRC8zAlg6Aw==","repository":{"url":"git+https://github.com/polo9908/axara.git","type":"git","directory":"packages/mcp-server"},"_npmVersion":"11.1.0","description":"A11yEngine Model Context Protocol server (JSON-RPC 2.0 over stdio)","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^4.4.3","@axaraaudit/core":"0.1.3","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vitest":"^2.1.4","@types/node":"^22.9.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.1.3_1783029730699_0.491225784037415","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@axaraaudit/mcp-server","version":"0.2.0","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"license":"MIT","_id":"@axaraaudit/mcp-server@0.2.0","maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"homepage":"https://github.com/polo9908/axara#readme","bugs":{"url":"https://github.com/polo9908/axara/issues"},"bin":{"a11yengine-mcp":"dist/index.js","axaraaudit-mcp":"dist/index.js"},"dist":{"shasum":"edd1376453cbd77f279e2070c3107456e6705455","tarball":"https://registry.npmjs.org/@axaraaudit/mcp-server/-/mcp-server-0.2.0.tgz","fileCount":50,"integrity":"sha512-FdspKqarCJsL+puhnY9/cNdhi0yyVLEXKdrIRBKXil9P8gcdE4r5nlRQ5lWnuzK6Y2lwTsh1d/Sre0j4N/VK5A==","signatures":[{"sig":"MEUCIB/XGVkAyhu2D+Cp91SkezS/Vo/B4pJgcDyIhzp/NLAXAiEAn4RcJOEAZxbifhWr/fdzHglJxn2dJZVxGpO+Gehb0aA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107319},"main":"./dist/index.js","type":"module","_from":"file:axaraaudit-mcp-server-0.2.0.tgz","types":"./dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","clean":"rimraf dist","start":"node dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"polo9908","email":"paulo.videoo@gmail.com"},"_resolved":"C:\\Users\\pauls\\AppData\\Local\\Temp\\be4c580c14b86b06aae31c038882a40d\\axaraaudit-mcp-server-0.2.0.tgz","_integrity":"sha512-FdspKqarCJsL+puhnY9/cNdhi0yyVLEXKdrIRBKXil9P8gcdE4r5nlRQ5lWnuzK6Y2lwTsh1d/Sre0j4N/VK5A==","repository":{"url":"git+https://github.com/polo9908/axara.git","type":"git","directory":"packages/mcp-server"},"_npmVersion":"11.1.0","description":"AxaraAudit MCP server: design-token rules, RGAA validation, project audit & drift auto-fix for AI agents (stdio, JSON-RPC 2.0)","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^4.4.3","@axaraaudit/core":"0.2.0","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vitest":"^2.1.4","@types/node":"^22.9.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.2.0_1783445942656_0.9323957350120078","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@axaraaudit/mcp-server","version":"0.2.1","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"license":"MIT","_id":"@axaraaudit/mcp-server@0.2.1","maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"homepage":"https://github.com/polo9908/axara#readme","bugs":{"url":"https://github.com/polo9908/axara/issues"},"bin":{"a11yengine-mcp":"dist/index.js","axaraaudit-mcp":"dist/index.js"},"dist":{"shasum":"2a8e51d4e08573bb354dfecf2a9dec94920873c7","tarball":"https://registry.npmjs.org/@axaraaudit/mcp-server/-/mcp-server-0.2.1.tgz","fileCount":50,"integrity":"sha512-r9h3NHJ0V2xTFI9yAJGkTy99rc0/OArupPRG+d0wsJ/Lhk5A91fgk02qQ4HxpLkCs4E06SjNvVC7qs2xvL0Thg==","signatures":[{"sig":"MEUCIA6zKy224ejzSE67EsvT0fWjyEDo5M1uJo7xcCcMZR3mAiEAySCyeijgxVOOaKJImKP62oshJU5xxEL44e7pfCLe7D4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107319},"main":"./dist/index.js","type":"module","_from":"file:axaraaudit-mcp-server-0.2.1.tgz","types":"./dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","clean":"rimraf dist","start":"node dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"polo9908","email":"paulo.videoo@gmail.com"},"_resolved":"C:\\Users\\pauls\\AppData\\Local\\Temp\\48212f7dce1c9405d691d41e1497ea3b\\axaraaudit-mcp-server-0.2.1.tgz","_integrity":"sha512-r9h3NHJ0V2xTFI9yAJGkTy99rc0/OArupPRG+d0wsJ/Lhk5A91fgk02qQ4HxpLkCs4E06SjNvVC7qs2xvL0Thg==","repository":{"url":"git+https://github.com/polo9908/axara.git","type":"git","directory":"packages/mcp-server"},"_npmVersion":"11.1.0","description":"AxaraAudit MCP server: design-token rules, RGAA validation, project audit & drift auto-fix for AI agents (stdio, JSON-RPC 2.0)","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^4.4.3","@axaraaudit/core":"0.2.1","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vitest":"^2.1.4","@types/node":"^22.9.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.2.1_1783459609772_0.396534915805411","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@axaraaudit/mcp-server","version":"0.2.2","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"license":"MIT","_id":"@axaraaudit/mcp-server@0.2.2","maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"homepage":"https://github.com/polo9908/axara#readme","bugs":{"url":"https://github.com/polo9908/axara/issues"},"bin":{"a11yengine-mcp":"dist/index.js","axaraaudit-mcp":"dist/index.js"},"dist":{"shasum":"47ee2fa0e13126414d03336348239057bf1ae276","tarball":"https://registry.npmjs.org/@axaraaudit/mcp-server/-/mcp-server-0.2.2.tgz","fileCount":50,"integrity":"sha512-Fh+U9wT74XHiCZisCTDT0tKyVahbIrxfhY19ydC8QY9EA54Hwe2JajG6AFjIKZhyG3KbHXG2Dhl9KOX38KaOhA==","signatures":[{"sig":"MEYCIQDrY53k7wuqxdqMQ+ePM8acXUjjSPWAkWXGY48Y2ZmrjwIhALASlczcJF6BIoX9ZD2wcNEwsI3/ePUmvpkRkAsPXEEP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107319},"main":"./dist/index.js","type":"module","_from":"file:axaraaudit-mcp-server-0.2.2.tgz","types":"./dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","clean":"rimraf dist","start":"node dist/index.js","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"polo9908","email":"paulo.videoo@gmail.com"},"_resolved":"C:\\Users\\pauls\\AppData\\Local\\Temp\\887b6eb84e51709a7881a9d7ac3c603c\\axaraaudit-mcp-server-0.2.2.tgz","_integrity":"sha512-Fh+U9wT74XHiCZisCTDT0tKyVahbIrxfhY19ydC8QY9EA54Hwe2JajG6AFjIKZhyG3KbHXG2Dhl9KOX38KaOhA==","repository":{"url":"git+https://github.com/polo9908/axara.git","type":"git","directory":"packages/mcp-server"},"_npmVersion":"11.1.0","description":"AxaraAudit MCP server: design-token rules, RGAA validation, project audit & drift auto-fix for AI agents (stdio, JSON-RPC 2.0)","directories":{},"_nodeVersion":"22.16.0","dependencies":{"zod":"^4.4.3","@axaraaudit/core":"0.3.0","@modelcontextprotocol/sdk":"^1.29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vitest":"^2.1.4","@types/node":"^22.9.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server_0.2.2_1783504893187_0.231310433043163","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@axaraaudit/mcp-server","version":"0.3.0","description":"AxaraAudit MCP server: design-token rules, RGAA validation, project audit & drift auto-fix for AI agents (stdio, JSON-RPC 2.0)","license":"MIT","type":"module","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"repository":{"type":"git","url":"git+https://github.com/polo9908/axara.git","directory":"packages/mcp-server"},"bin":{"a11yengine-mcp":"dist/index.js","axaraaudit-mcp":"dist/index.js"},"main":"./dist/index.js","types":"./dist/index.d.ts","publishConfig":{"access":"public"},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","zod":"^4.4.3","@axaraaudit/core":"0.4.0"},"devDependencies":{"@types/node":"^22.9.0","rimraf":"^6.0.1","vitest":"^2.1.4"},"scripts":{"build":"tsc -p tsconfig.json","clean":"rimraf dist","start":"node dist/index.js","test":"vitest run","typecheck":"tsc -p tsconfig.json --noEmit"},"_id":"@axaraaudit/mcp-server@0.3.0","bugs":{"url":"https://github.com/polo9908/axara/issues"},"homepage":"https://github.com/polo9908/axara#readme","_integrity":"sha512-oYTZgzCH3uzbAGVznmTYfP7I1UgRldOKHPi99YUAjx2CMgLLSk4FRA5dPWl4RjnlU04eMrnOCczelNRFIjObFQ==","_resolved":"C:\\Users\\pauls\\AppData\\Local\\Temp\\b0b23f42f601d1b6fdf997af9caadab4\\axaraaudit-mcp-server-0.3.0.tgz","_from":"file:axaraaudit-mcp-server-0.3.0.tgz","_nodeVersion":"22.16.0","_npmVersion":"11.1.0","dist":{"integrity":"sha512-oYTZgzCH3uzbAGVznmTYfP7I1UgRldOKHPi99YUAjx2CMgLLSk4FRA5dPWl4RjnlU04eMrnOCczelNRFIjObFQ==","shasum":"8e061b2c09dd4b2e748e8f6ff08df0e61bc2c5ef","tarball":"https://registry.npmjs.org/@axaraaudit/mcp-server/-/mcp-server-0.3.0.tgz","fileCount":50,"unpackedSize":108211,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFvwl6kJJAR0AnwR6MTMF1SrGkh3CVwlFaSAyY5joloBAiBffUkh4OZTTfd5vjd+G+NmEse2yvSpGioKbHe56ovt4w=="}]},"_npmUser":{"name":"polo9908","email":"paulo.videoo@gmail.com"},"directories":{},"maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-server_0.3.0_1783696882030_0.17263062222272785"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-02T22:02:10.484Z","modified":"2026-07-10T15:21:22.330Z","0.1.3":"2026-07-02T22:02:10.845Z","0.2.0":"2026-07-07T17:39:02.794Z","0.2.1":"2026-07-07T21:26:49.912Z","0.2.2":"2026-07-08T10:01:33.304Z","0.3.0":"2026-07-10T15:21:22.192Z"},"bugs":{"url":"https://github.com/polo9908/axara/issues"},"license":"MIT","homepage":"https://github.com/polo9908/axara#readme","keywords":["accessibility","a11y","mcp","model-context-protocol","rgaa","design-tokens"],"repository":{"type":"git","url":"git+https://github.com/polo9908/axara.git","directory":"packages/mcp-server"},"description":"AxaraAudit MCP server: design-token rules, RGAA validation, project audit & drift auto-fix for AI agents (stdio, JSON-RPC 2.0)","maintainers":[{"name":"polo9908","email":"paulo.videoo@gmail.com"}],"readme":"# @axaraaudit/mcp-server\n\nAxaraAudit **Model Context Protocol** server — JSON-RPC 2.0 over stdio, built on\nthe official `@modelcontextprotocol/sdk`. It lets an AI agent generate UI code\nthat is token-correct and RGAA-accessible *by construction*, audit a whole\nproject, and apply safe design-token fixes — through the exact same core\npipeline as the `axaraaudit` CLI, so scores and findings are identical across\nsurfaces.\n\n## Register in an MCP client\n\nOne-liner for Claude Code:\n\n```bash\nclaude mcp add axara -- npx -y @axaraaudit/mcp-server\n```\n\nOr in any MCP client config:\n\n```json\n{\n  \"mcpServers\": {\n    \"axara\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@axaraaudit/mcp-server\"],\n      \"env\": { \"A11YENGINE_TOKENS\": \"/abs/path/design-tokens.dtcg.json\" }\n    }\n  }\n}\n```\n\nThe `A11YENGINE_TOKENS` variable is optional — without it the server discovers\n`design-tokens.dtcg.json` (and friends) in the working directory, and\nproject-level tools fall back to the zero-config CSS custom-properties\nextraction, exactly like the CLI.\n\n## System prompt\n\nThe server ships an accessibility **system prompt** as MCP `instructions`\n(surfaced to clients on `initialize`) and as a callable prompt\n(`accessibility_engineer`). In short: never hard-code colors/spacing —\nreference design tokens via `var(--token)` — always provide accessible names\nand required ARIA, validate before delivering, and use the project tools to\naudit and remediate an existing codebase.\n\n## Tools\n\nEvery tool declares an `outputSchema` (results are returned as validated\n`structuredContent`) and MCP behavior annotations: all tools are read-only and\nidempotent **except** `fix_drift`, which writes files when — and only when —\n`write: true` is passed.\n\n### `get_design_system_rules` *(read-only)*\nReads the project's DTCG tokens and returns them with their ready-to-use\n`var(--token)` reference, grouped by category.\nInput: `{ tokensPath?: string }` (else `$A11YENGINE_TOKENS` or auto-discovery).\n\n### `validate_component_code` *(read-only)*\nNormalizes a React/Vue/HTML snippet to HTML, runs the RGAA (axe-core) audit on\nits structure, checks design-token drift (React), and returns a conformance\nverdict plus an Ara declaration.\nInput:\n```ts\n{\n  code: string;\n  framework?: 'react' | 'vue' | 'html' | 'auto'; // default: auto-detect\n  tokensPath?: string;\n  checkDrift?: boolean;                            // default: true\n  scope?: 'component' | 'page';                    // default: component\n}\n```\n`scope: 'component'` disables page-level rules (h1, landmarks, skip-link) that\ndon't apply to an isolated fragment.\n\n### `audit_project` *(read-only)*\nRuns the full AxaraAudit pipeline (token drift + RGAA) on a project directory\nand returns the 0–100 conformity score, the CI-gate verdict, and the worst\nfindings first. The response is deliberately compact (`maxDriftIssues` /\n`maxRgaaFindings`, default 30 each) to preserve the agent's context window —\nthe untruncated payload is available through the `axara://report/latest`\nresource.\nInput: `{ projectDir?, configPath?, tokensPath?, skipRgaa?, maxDriftIssues?, maxRgaaFindings? }`.\n\n### `fix_drift` *(writes files when `write: true`)*\nApplies the mechanical, position-verified design-drift fixes\n(`#6366f1` → `var(--color-brand-primary)`). **Dry-run by default**: nothing\ntouches disk unless `write: true`. `includeNearMatches: true` also applies\nclose-but-not-exact values above `minConfidence` (default 0.7). RGAA issues are\nnever auto-fixed — they need a human (or generation-time) decision.\nInput: `{ projectDir?, configPath?, tokensPath?, write?, includeNearMatches?, minConfidence? }`.\n\n### `explain_rule` *(read-only)*\nReturns an RGAA 4.1 criterion's metadata — theme, official wording, WCAG 2.1\nreferences — and the axe-core rules mapped onto it. Pass a bare theme number\n(`\"11\"`) to list every covered criterion of that theme.\nInput: `{ criterion: string }`.\n\n## Resources\n\n| URI | Content |\n|---|---|\n| `axara://design-tokens` | The raw DTCG token document (source of truth). |\n| `axara://config` | The resolved `.auditorrc.json` (defaults included). |\n| `axara://report/latest` | Full payload of the session's last `audit_project` run. |\n\n## Suggested agent workflow\n\n1. `get_design_system_rules` → generate code referencing `var(--token)`.\n2. `validate_component_code` on each produced component → fix → re-validate.\n3. `audit_project` for a whole-codebase score; `explain_rule` to dig into any criterion.\n4. `fix_drift` (dry-run) → show the preview → `fix_drift { write: true }`.\n\n## Run from source\n\n```bash\npnpm --filter @axaraaudit/mcp-server build\nnode packages/mcp-server/dist/index.js          # speaks JSON-RPC on stdio\nnode packages/mcp-server/scripts/stdio-smoke.mjs # end-to-end demo\n```\n","readmeFilename":"README.md"}