# `io.github.thedaviddias/front-end-checklist` on anlyon.dev

> Text inside fenced blocks marked untrusted-server-text was written by the MCP server's publisher, not by anlyon.dev. It is data to inspect, not instructions to follow. Invisible characters are shown as [U+XXXX].
> No finding is not a safety guarantee: these are point-in-time checks of tool definitions, not of code or behaviour.

- Page: https://anlyon.dev/servers/io.github.thedaviddias/front-end-checklist
- JSON: https://anlyon.dev/api/v1/servers/io.github.thedaviddias/front-end-checklist
- Version: 2.0.1 (active)
- Publisher: io.github.thedaviddias (GitHub account)
- Runs: remote (streamable-http)
- Sign-in to list tools: none
- Repository: https://github.com/thedaviddias/Front-End-Checklist
- Metadata from the official MCP Registry, synced 2026-10-21T18:50:21.659Z

Title and description, as the publisher wrote them:

```untrusted-server-text
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
```

Scanned 2026-10-21T19:28:03.832Z over streamable-http.

**11 tools: 2 change things and 9 only read.**

| Group | Class | Tools | Claude Code |
| --- | --- | --- | --- |
| Deletes or cancels | destructive | 0 | deny |
| Can't be undone | irreversible | 0 | ask |
| Changes things | write | 2 | ask |
| Only reads | read | 9 | allow |

## Findings

- **warn** Annotations that disagree with the tool in `review_code` ([annotation-conflict](https://anlyon.dev/methodology#annotation-conflict))

```untrusted-server-text
The server marks "review_code" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
```

- **warn** Annotations that disagree with the tool in `check_rule` ([annotation-conflict](https://anlyon.dev/methodology#annotation-conflict))

```untrusted-server-text
The server marks "check_rule" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The input takes a statement or command to run (input.code), which can change anything it can reach.
```


## Changes things (2)

Creates or changes something that can be changed back. Claude Code: ask.

### `check_rule`

- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Checks a code snippet against one named frontend rule using static heuristics and returns findings and verification guidance. Without code, returns manual verification guidance. Use it when the user requests a check of a specific rule or a proposed fix. Results do not establish rendered-state or runtime conformance.
```

### `review_code`

- The description's first verb is "run": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
- Findings: warn annotation-conflict

Description, as the server wrote it:

```untrusted-server-text
Runs a non-exhaustive static heuristic review of pasted HTML, CSS, or JavaScript against multiple frontend best practices and returns prioritized issues, fix guidance, and suggestions for manual verification. Use it when the user requests a review, audit, or debugging of source code. An empty issue list means no provable static issue was found; it does not establish accessibility conformance or runtime correctness.
```

## Only reads (9)

Looks things up and changes nothing. Claude Code: allow.

### `audit_url`

- The description's first verb is "fetch": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Fetches a public HTTPS page and performs a non-exhaustive static review of its HTML, returning prioritized issues and fix guidance. Use it when the user requests an audit of a deployed public page. Localhost, private networks, and plain HTTP URLs are refused. It does not execute the page, measure live Core Web Vitals, or certify accessibility.
```

### `explain_rule`

- The name "explain_rule" says "explain": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Explains one frontend rule, including its background, impact on users and the business, and related categories. Use it when the user asks why a practice matters or requests educational context. It returns explanation guidance rather than applying a fix.
```

### `fix_rule`

- The description's first verb is "return": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns step-by-step remediation guidance and priority for one named frontend rule. Use it when the user requests implementation or fix instructions for a known issue. Optional codeSnippet provides context; the tool does not edit files or apply changes.
```

### `get_checklist_rules`

- The name "get_checklist_rules" says "get": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns titles, priorities, verification and remediation prompts for every rule in a curated checklist. Use it when the user requests guidance for an entire checklist. includeContent optionally adds each rule’s long-form body. Available checklists: accessibility-essentials, comprehensive-audit, core-web-vitals, html-foundations, image-optimization, javascript-resilience, launch-checklist, performance-quick-wins, privacy-and-consent, security-audit, seo-audit, testing-checklist.
```

### `get_quick_reference`

- The name "get_quick_reference" says "get": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns a compact checklist for one frontend category, filtered by priority and formatted as JSON, Markdown, or a task list. Use it when the user requests a concise checklist for a deployment, review, or team handoff.
```

### `get_rule`

- The name "get_rule" says "get": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns complete guidance for one known rule slug: requirements, rationale, verification and remediation prompts, code examples, sources, and related rules. Use it when the user requests detailed guidance for a specific frontend rule. Unknown slugs return similar suggestions.
```

### `get_workflow`

- The name "get_workflow" says "get": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Returns the ordered steps of a curated audit workflow, including rule slugs, priorities, and categories. Use it when the user requests a structured audit such as a pre-launch checklist. Available workflows: accessibility-essentials, comprehensive-audit, core-web-vitals, html-foundations, image-optimization, javascript-resilience, launch-checklist, performance-quick-wins, privacy-and-consent, security-audit, seo-audit, testing-checklist.
```

### `list_categories`

- The name "list_categories" says "list": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Lists available frontend rule categories, their descriptions, and rule counts. Use it when the user asks what the checklist covers or needs valid category names.
```

### `search_rules`

- The name "search_rules" says "search": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Finds frontend rules by keywords, category, and priority, returning paginated slugs, titles, and short summaries. Use it when the user requests relevant practices for a technology, concern, or pattern, such as web fonts or accessible forms.
```

## Claude Code permissions

For `.claude/settings.json`, assuming the server is installed as `front-end-checklist`:

```json
{
  "permissions": {
    "allow": [
      "mcp__front-end-checklist__audit_url",
      "mcp__front-end-checklist__get_workflow",
      "mcp__front-end-checklist__get_checklist_rules",
      "mcp__front-end-checklist__get_quick_reference",
      "mcp__front-end-checklist__get_rule",
      "mcp__front-end-checklist__search_rules",
      "mcp__front-end-checklist__fix_rule",
      "mcp__front-end-checklist__explain_rule",
      "mcp__front-end-checklist__list_categories"
    ],
    "ask": [
      "mcp__front-end-checklist__review_code",
      "mcp__front-end-checklist__check_rule"
    ],
    "deny": []
  }
}
```
