smithery.ai

markdown-validation

Validate markdown documentation files for formatting issues, syntax errors, broken links, and quality standards. Use when checking .md files for compliance with documentation standards or after editing markdown files.

First seen Mar 27, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,700 B
  • docs SUMMARY.md 244 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

Markdown Validation

This skill provides comprehensive markdown validation capabilities for documentation files.

When to Use

Use markdown-validation when:

  1. Validating markdown files for syntax and formatting errors
  2. Checking documentation quality after edits
  3. Enforcing documentation standards across the project
  4. Identifying broken links or invalid references
  5. Reviewing markdown files before commits

Validation Checks

1. Syntax Validation

  • Valid markdown syntax
  • Proper header hierarchy (no skipped levels)
  • Balanced code fences
  • Correct list formatting
  • Proper link syntax

2. Link Validation

  • Internal links point to existing files
  • Anchor links match actual headers
  • No broken external links (when network available)

3. Formatting Standards

  • Consistent heading styles
  • Proper code block language tags
  • Table formatting correctness
  • No trailing whitespace
  • Consistent list markers

4. Documentation Quality

  • Files have descriptive headers
  • Code examples are complete
  • Links are descriptive (not "click here")
  • Tables have headers
  • Proper frontmatter when required

Usage

Automatic Validation

The validation script runs automatically when triggered by hooks on markdown file edits.

Manual Validation

Validate a single file:

./docs/skills/markdown-validation/scripts/validate-markdown.py path/to/file.md

Validate multiple files:

./docs/skills/markdown-validation/scripts/validate-markdown.py file1.md file2.md file3.md

Validate a directory:

find docs/ -name "*.md" -exec ./docs/skills/markdown-validation/scripts/validate-markdown.py {} +

Output Format

Validation results are returned in structured format:

✅ path/to/file.md - PASS

❌ path/to/other.md - FAIL
  Line 15: Header level skipped (h1 -> h3)
  Line 42: Broken internal link: [docs/missing.md](docs/missing.md)
  Line 87: Unclosed code fence

Integration with Hooks

This skill works best when integrated with PostToolUse hooks:

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [{
          "type": "command",
          "command": "if echo \"$CLAUDE_TOOL_INPUT\" | grep -q '\\.md\"'; then $CLAUDE_PROJECT_DIR/docs/skills/markdown-validation/scripts/validate-markdown.py \"$(echo \"$CLAUDE_TOOL_INPUT\" | grep -o '\"[^\"]*\\.md\"' | tr -d '\"')\"; fi"
        }]
      }
    ]
  }
}

Common Issues and Fixes

Issue: Header Level Skipped

Problem: # Header 1 followed by ### Header 3 (skipped h2) Fix: Maintain sequential header hierarchy

Issue: Broken Internal Link

Problem: Link points to non-existent file Fix: Update link target or create missing file

Issue: Unclosed Code Fence

Problem: `` opened but not closed Fix: Add closing `` after code block

Issue: No Language Tag

Problem: Code fence missing language identifier Fix: Add language: ``python, `bash, ``javascript

Configuration

Create .markdown-validation.json in project root to customize validation:

{
  "checkLinks": true,
  "checkSyntax": true,
  "requireFrontmatter": false,
  "allowedHeaderLevels": [1, 2, 3, 4, 5, 6],
  "requireLanguageTags": true,
  "maxLineLength": null
}

References

  • Markdown Specification: See references/markdown-spec.md
  • Project Standards: See references/documentation-standards.md