Atag Mcp

io.github.MMasey由 GitHub 账号 MMasey 发布v1.0.2更新于 Oct 24, 2026

ATAG 2.0 (Authoring Tool Accessibility Guidelines) guidance for authoring tool developers

已验证STDIO仅桌面知识与记忆开发者工具

概览

AI 生成的概览

提供 W3C ATAG 2.0 无障碍指南,让助手查询具体成功标准并对应到创作工具功能。

可以做什么
  • 浏览 ATAG 结构:部分、原则、指南与成功标准,可按部分、原则、指南或符合级别筛选
  • 查看某条成功标准或指南的完整内容及其子标准
  • 按关键词搜索全部 ATAG 内容,并查询术语表条目及定义
  • 描述正在开发的功能,获取最相关的 ATAG 标准
  • 获取内置规范副本的数据统计与出处信息
适用场景
适合在开发或评审富文本编辑器、CMS、IDE、网站搭建器等创作工具时使用,让助手引用真实的 ATAG 2.0 成功标准而非凭记忆作答。也适合查询 A、AA、AAA 级别标准及 ATAG 术语。
运行要求
以 stdio 在本地运行;README 建议由 MCP 客户端通过 npx 自动获取 npm 包,因此需要 Node.js,首次下载包时需要网络。未声明任何账号、API 密钥或环境变量。
安装前请注意
只读参考资料:规范是随包分发的静态人工校对副本,在更新前可能落后于 W3C 原文。不涉及凭据、付费或写入操作。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Atag Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

ATAG MCP

An MCP (Model Context Protocol) server that provides guidance on ATAG 2.0 — the W3C Authoring Tool Accessibility Guidelines — to help authoring tool developers build more accessible software.

What is ATAG?

ATAG 2.0 defines how authoring tools (rich-text editors, CMSes, IDEs, website builders, etc.) should:

  • Part A — Be accessible to authors with disabilities (the tool's own UI)
  • Part B — Help authors produce accessible web content (alt text prompts, accessibility checkers, accessible templates, etc.)

Why this exists

ATAG 2.0 has been a W3C Recommendation since 2015, but adoption among authoring tools remains limited — partly because the guidance is easy to overlook at the moment design and implementation decisions are actually made. With more authoring tool features now being built with the help of AI coding assistants, this server puts the full spec within the assistant's reach: describe the feature you're working on (an image upload dialog, a rich-text toolbar, a template picker) and get back the actual success criteria that apply, rather than a half-remembered summary. The aim is to lower the cost of considering ATAG at all — the first step towards tools that support it.

The data is a static, hand-checked copy of the ATAG 2.0 spec — not fetched or generated at runtime — so answers stay faithful to the W3C source. A weekly workflow checks for upstream spec changes.

Tools

ToolDescription
get-server-infoDataset statistics and attribution
explain-atagOverview of ATAG, how it differs from WCAG, and its two-part structure
list-partsPart A and Part B summaries
list-principlesAll 8 principles, filterable by part
list-guidelinesAll 24 guidelines, filterable by part or principle
list-success-criteriaAll 63 success criteria, filterable by part, principle, guideline, or level
get-criterionFull details for a specific SC (e.g. B.2.3.1)
get-guidelineFull guideline details with all child success criteria
get-criteria-by-levelAll criteria at Level A, AA, or AAA
search-atagKeyword search across all ATAG content
list-glossary-termsAll ATAG glossary terms
get-glossary-termDefinition of a specific ATAG term
get-guidanceKey tool — describe a feature you're building and get the most relevant ATAG criteria

Setup

No local install required — add the config below and your MCP client will fetch the package automatically via npx.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

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

VS Code (Claude extension)

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

Local development install

bash
npm installnpm run build# then point your config to dist/index.js directly

Usage examples

Ask Claude:

  • "What ATAG criteria apply to an image insertion dialog?" → uses get-guidance
  • "Show me all Level A criteria from Part B" → uses get-criteria-by-level
  • "Explain guideline B.3.1" → uses get-guideline
  • "What does 'editing-view' mean in ATAG?" → uses get-glossary-term
  • "Search ATAG for keyboard access" → uses search-atag

Development

bash
npm run dev          # Run server directly with tsx (no compile step)npm test             # Run all testsnpm run test:watch   # Watch modenpm run validate-data  # Validate data/atag.json structurenpm run check-updates  # Check if W3C spec has changed

Branching and commits

This project follows git flow with Conventional Commits:

  • main — released code only; every merge to main is tagged and published
  • develop — integration branch; day-to-day work lands here
  • feature/<name> — branched from and merged back to develop
  • release/<version> — branched from develop, merged to main (tagged) and back to develop
  • hotfix/<name> — branched from main for urgent fixes, merged to both main and develop

Commit messages use conventional prefixes: feat:, fix:, docs:, test:, ci:, chore:, refactor: (with ! or a BREAKING CHANGE: footer for breaking changes).

Releasing

Versioning uses standard npm version bumps. Pushing a v* tag triggers the GitHub Actions publish workflow, which runs tests and publishes to npm automatically.

bash
npm version patch   # bug fixes:    1.0.0 → 1.0.1npm version minor   # new features: 1.0.0 → 1.1.0npm version major   # breaking:     1.0.0 → 2.0.0
git push && git push --tags

When bumping the version, also update the version fields in server.json to match — the MCP Registry validates them against the published npm package. After the npm publish succeeds, refresh the registry listing with:

bash
mcp-publisher login githubmcp-publisher publish

Publishing requires the NPM_TOKEN repository secret (a granular npm access token with write access to atag-mcp). If the token expires or is rotated, add the new one under the same secret name, then run the manual Check npm token workflow (Actions tab) to verify it authenticates before tagging a release.

Keeping data current

The ATAG 2.0 spec is captured in data/atag.json. The GitHub Actions workflow (.github/workflows/update-atag.yml) runs weekly and opens an issue if the W3C spec content changes.

To update manually:

  1. Review changes at https://www.w3.org/TR/ATAG20/
  2. Edit data/atag.json with the changes
  3. Run npm run validate-data to check structure
  4. Run npm run check-updates -- --save to update the stored hash

Data

  • Version: ATAG 2.0
  • Specification: https://www.w3.org/TR/ATAG20/
  • Parts: 2 (Part A + Part B)
  • Principles: 8
  • Guidelines: 24
  • Success Criteria: 63
  • Glossary Terms: 18

License

MIT

来源:README.md,提交 1cfdaac

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.2最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分