# Overview `docforge` turns GSDFC-compliant Python docstrings into maintainable reference documentation. It never edits source docstrings; it reads them, renders them, and assembles documentation sites from all available material. ## What it generates | Kind | Source | Output | |-----------|----------------------------|---------------------------------| | `lib` | GSDFC docstrings | `docs/lib/**` rendered markdown | | `api` | OpenAPI JSON spec | `docs/api/**` rendered markdown | | `wiki` | Hand-written markdown | `docs/wiki/**` (unchanged) | | `mcp` | GSDFC docstrings + renderers | `docs/mcp/**` structured JSON | ## Per-kind MkDocs builds Each enabled site kind produces its own MkDocs configuration and build: 1. `--mkdocs` (lib) writes `docs/mkdocs.lib.yml` and builds `site/lib/`. 2. `--api` writes `docs/mkdocs.api.yml` and builds `site/api/`. 3. `--wiki` writes `docs/mkdocs.wiki.yml` and builds `site/wiki/`. Every site is self-contained (own theme assets and search index) with navigation derived or scoped to that kind. Hand-written wiki content is never overwritten or regenerated — only its navigation is derived automatically. ## MCP bundle `docs/mcp/**` is a self-contained, machine-readable reference generated from docforge's own GSDFC docstrings. `doc-forge serve --mcp --module docforge` serves it over MCP. See the [MCP Guide](05_development/04_mcp_guide.md).