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 分