mcpField
H
HIG Doctor

HIG Doctor

Local
apple.raintree.technologyDeveloper Tools148Updated 6d ago

About HIG Doctor

HIG Doctor is an MCP server for developers who want coding agents to query Apple Human Interface Guidelines and audit source projects. It exposes the HIG skills corpus and static audit as structured tools. It runs over stdio or streamable HTTP.

Key features

  1. 01Lists skills and reference topics in the corpus
  2. 02Fetches HIG reference markdown by skill or topic
  3. 03BM25 full-text search with natural language queries
  4. 04Static HIG audit for projects and single files
  5. 05Explains findings with rule metadata and HIG excerpts

Use cases

  1. 01Letting a coding agent look up Apple interface guidelines while writing code
  2. 02Auditing a file right after an edit to catch HIG issues
  3. 03Generating severity counts and a markdown report for a project

MCP support

This project is an MCP server that exposes six tools, including hig_lookup, hig_search, hig_audit and hig_explain_finding, to MCP clients, returning both text and structured content.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"raintree-technology-hig-doctor": {
"command": "npx",
"args": [
"-y",
"hig-mcp"
],
"env": {
"HIG_SKILLS_DIR": "<HIG_SKILLS_DIR>"
}
}
}
}
Run commandnpx -y hig-mcp
Environment variables to set
HIG_SKILLS_DIROptional override for the skills directory. The published package bundles the HIG skills corpus, so this is only needed to point the server at a different or newer local copy.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmhig-mcp0.2.3

Tools

6

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

HIG Doctor

HIG Doctor MCP server

Active MCP server for developers connecting HIG Doctor to coding agents. It exposes the HIG skills corpus and source audit as structured tools.

Runs under Node 20+ (after build) or Bun (directly from source). Works with Claude Desktop, Cursor, Windsurf, and Claude Code. Transports: stdio (default) and streamable HTTP (--http).

Install and start

npx hig-mcp

Expected result: the process starts an MCP stdio server and advertises the six tools below. The published package includes the skills corpus.

Tools

ToolPurpose
hig_list_skillsEnumerate available skills with descriptions and reference topics. Call first to discover the corpus.
hig_lookupFetch HIG reference markdown. Provide a skill name (e.g. hig-foundations) or skill + topic (e.g. skill=hig-foundations, topic=color).
hig_searchBM25 full-text search across every reference topic. Ask in natural language (e.g. "minimum touch target size") and get ranked topics with snippets.
hig_auditRun the HIG compliance audit on a project directory. Returns severity counts, per-category breakdown, a markdown report, config/baseline status, and an optional fail_on gate.
hig_audit_fileAudit a single file — the fast inner loop after writing or editing code. Returns each finding with rule ID, severity, line, fix guidance, and HIG citation.
hig_explain_findingExplain a finding: full rule metadata plus an excerpt of the cited Apple HIG reference. Pass a ruleId from an audit result.

Every tool returns structuredContent (parsed JSON) alongside the text mirror, so agents can consume structure directly. Content is from Apple's HIG, snapshot dated 2025-02-02; Apple's live Human Interface Guidelines remain canonical.

Run from a checkout

git clone https://github.com/raintree-technology/hig-doctor.git
cd hig-doctor/packages/mcp
bun install            # or: npm install
bun src/index.ts       # run directly (no build), or:
npm run build && node dist/index.js

Claude Desktop config

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

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

For a local checkout, point command/args at the Bun source (bun /abs/path/packages/mcp/src/index.ts) or the built Node artifact (node /abs/path/packages/mcp/dist/index.js).

Streamable HTTP transport

For remote or multi-client setups, start the server over HTTP instead of stdio:

hig-mcp --http 3845      # POST /mcp on the given port (default 3845)

Each request is handled statelessly, so concurrent clients are safe.

Cursor / Windsurf / Claude Code

All honor the MCP stdio protocol via each editor's mcpServers config. Point command/args at npx hig-mcp, or at the Bun/Node entry point of a local checkout.

Skills directory resolution

The server resolves the skills corpus in this order:

  1. $HIG_SKILLS_DIR — explicit override (point at a newer local copy)
  2. <module-dir>/skills — bundled alongside the built artifact (the npm distribution)
  3. Monorepo dev layout — ../../../skills from the source file
  4. $PWD/skills — current working directory

The published npm package bundles the corpus at dist/skills, so $HIG_SKILLS_DIR is only needed to override it.

Input validation

Slug arguments (skill, topic) are validated against a kebab-case allowlist (/^[a-z0-9-]+$/) before being used to construct filesystem paths. hig_audit.directory and hig_audit_file.file must be absolute paths. Invalid inputs throw before any filesystem access.

Limits and support boundary

The audit tools provide static review evidence; they do not prove HIG conformance, accessibility, or design quality. HTTP mode does not add authentication or TLS, so place it behind an appropriate local or trusted transport boundary. See the project guide, benchmark, and security policy.

License

MIT for this package. Apple HIG reference content read by hig_lookup/hig_search is © Apple Inc. — see the repository root THIRD_PARTY_NOTICES.md for the full attribution.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.