# Generate Mintlify Reference

> Generates drift-checked CLI, MCP, or API reference documentation for a Mintlify site from authoritative sources and wires regeneration checks. Use when adding or repairing source-backed Mintlify reference pages; do not use for hand-authored guides, source-code docstrings, or non-documentation code generation.

- Skill: `pdugan20/generate-mintlify-reference` (Agent Skill, multi-file: 10 files)
- Install (CLI): `npx skillmds@latest add pdugan20/generate-mintlify-reference`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pdugan20/generate-mintlify-reference/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: pdugan20 (https://skillmd.com/u/pdugan20)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/pdugan20/generate-mintlify-reference

---


# Generate Mintlify reference documentation

Set up **generated, drift-checked** reference pages for a Mintlify site. The
governing principle is that reference pages are never hand-edited. A generator
reads the source of truth (the CLI's help, the live MCP instance, or the OpenAPI
specification) and emits MDX; CI regenerates and fails on drift, so the reference
cannot go stale.

When the official `mintlify` capability is available, use it for current
`<ParamField>`, `<Tabs>`, and `docs.json` syntax. Otherwise inspect the site's
existing components and current Mintlify documentation instead of guessing.
The patterns this skill enforces are in
[references/reference-patterns.md](./references/reference-patterns.md).

## Pick a target

Use the requested target from the user's prompt, including any text supplied
after an explicit skill invocation. The target is one of `cli`, `mcp`, `api`.

- **cli** — generate `reference/cli.mdx` (and per-domain `reference/cli/*.mdx`)
  from the CLI's own help/introspection. Template:
  [scripts/gen_cli_reference.py](./scripts/gen_cli_reference.py).
- **mcp** — generate `reference/mcp-tools.mdx` (and per-domain
  `reference/mcp-tools/*.mdx`) by introspecting the live MCP server. Template:
  [scripts/gen_mcp_reference.py](./scripts/gen_mcp_reference.py).
- **api** — generate endpoint pages from an OpenAPI/AsyncAPI spec. This is the
  one case Mintlify already automates well: prefer Mintlify's native OpenAPI
  navigation over a custom generator. Use the available Mintlify capability or
  current official documentation for the `docs.json` `openapi` wiring; this
  skill only adds the house framing (overview landing page, the "From Claude"
  nudge, `description`/`icon`).

## Instructions

### Step 1: Find the source of truth

- CLI: locate the entry point (a `console_scripts` in `pyproject.toml`, a
  `bin` in `package.json`, or the `main`/argparse/click/typer module).
- MCP: locate the server module that registers tools (e.g. a FastMCP instance).
- API: locate the OpenAPI spec (`openapi.json`/`openapi.yaml`) or the generator
  that emits it.

### Step 2: Adapt the generator template

Copy the matching template from `scripts/` into the **product repo's**
`scripts/` directory and adapt the marked `ADAPT` points (import paths, output
path, header text). The generator must:

- Emit a `{/* GENERATED by scripts/<name> — do not edit by hand. */}` banner.
- Write deterministic output (sort tools/commands; collapse whitespace) so drift
  CI is stable across machines.
- Use `<ParamField>` or parameter tables per
  [references/reference-patterns.md](./references/reference-patterns.md).

### Step 3: Wire the Makefile and CI

Add a `docs-reference` make target that runs the generators, and a CI job ("Docs
Reference Freshness") that regenerates and fails on drift. The CI snippet is in
[references/reference-patterns.md](./references/reference-patterns.md).

### Step 4: Split by domain when it grows

Once a reference has more than a handful of commands/tools, split it into
per-domain pages with an overview landing, and
add the group to `docs.json` Reference tab. Keep the generator emitting one file
per domain.

### Step 5: Regenerate and link-check

Run `make docs-reference` (or the generators directly), then `mint validate` and
`mint broken-links --check-anchors --check-redirects`. Run the generator again
and verify the committed output remains unchanged.

## Scope

This skill produces generators and the reference MDX they emit, plus the drift CI
wiring. It does not write hand-authored guides or concepts pages (use
`review-mintlify-docs`) and does not touch the changelog (use
`write-mintlify-changelog`).

