MkDocs Material, plus the API reference.
Material for MkDocs is one of the most loved Markdown docs setups: clean, fast, and backed by a deep plugin ecosystem. What it does not do natively is API and code reference. OpenAPI is out of scope, C++ needs a Doxygen bridge, and there is no godoc handler. Sourcey reads all of those first-party, and it ingests your existing mkdocs.yml on the way in.
Side by side.
Both are free, open source, and static. The difference is how many source formats each reads first-party.
| Material for MkDocs | Sourcey | |
|---|---|---|
| OpenAPI reference | Plugin | Native |
| Doxygen / C++ docs | Bridge (MkDoxy/Doxide) | Native |
| godoc / Go docs | No | Native |
| MCP server docs | No | Native |
| Reads mkdocs.yml | Native | Yes (adapter) |
| Static HTML output | Yes | Yes |
| Client-side framework | None | None |
| Config format | YAML | TypeScript |
| Search | Built-in | Built-in |
| License | MIT | AGPL-3.0 |
| Pricing | Free | Free |
Where the two differ.
No native OpenAPI
The Material maintainer has called OpenAPI rendering out of scope. You add it with a plugin (mkdocs-swagger-ui-tag and friends) or run a separate tool beside the site. Sourcey generates the reference from your spec in the same site, with shared navigation and search.
Material's own discussions point OpenAPI requests at third-party plugins. Sourcey treats OpenAPI 2.0 through 3.2 as a built-in source with auto-generated code samples.
C++ and Go need bridges
Doxygen works through community bridges like MkDoxy or Doxide; there is no first-party godoc, rustdoc, or MCP path. Each bridge is another tool and another config to keep aligned. Sourcey reads Doxygen XML, godoc, rustdoc, and MCP manifests directly.
YAML config and a Python toolchain
MkDocs is configured in mkdocs.yml and runs on Python. That is a clean fit if your stack is already Python, and friction if it is not. Sourcey is a TypeScript config installed via npm, Homebrew, Docker, or Nix. Because Sourcey has an MkDocs adapter, moving over is gentle rather than a rewrite.
A live Sourcey build: an OpenAPI reference rendered in the same site as the guides, the part Material leaves to plugins.
Sourcey reads your mkdocs.yml.
This is the gentlest migration of the set. Sourcey ingests the nav, snippets, admonitions, and assets from your existing MkDocs project.
Init
Creates sourcey.config.ts in your existing MkDocs project.
npx sourcey init Point at your mkdocs.yml
Sourcey's MkDocs adapter brings the nav, Markdown, snippets, admonitions, and static assets across as they are.
import { defineConfig, mkdocs } from "sourcey";
export default defineConfig({
name: "Your Docs",
navigation: {
tabs: [{ tab: "Documentation", source: mkdocs("./mkdocs.yml") }],
},
}); Add the reference Material could not
Add an OpenAPI, Doxygen, or godoc tab beside your Markdown. One build now covers guides and API and code reference.
Build
Static HTML with zero client runtime. Deploy anywhere.
$ npx sourcey build
Sourcey: building documentation site
Output: dist/ Common questions.
Do I have to rewrite my MkDocs site?
No. Sourcey has an MkDocs adapter: point it at your mkdocs.yml and it ingests the nav, Markdown, snippets, admonitions, and assets. You add API or code reference on top rather than rebuilding what you have.
What does Sourcey add over Material for MkDocs?
First-party OpenAPI, MCP, Doxygen, godoc, and rustdoc reference; zero client-side JavaScript in the output; and llms.txt generated from the same source. Material is a Markdown theme; Sourcey is a multi-source generator that also reads Markdown.
Is Material for MkDocs worse?
No. For pure Markdown documentation, especially in a Python shop, it is one of the best setups available, with a mature plugin ecosystem and a config-only workflow. The question is API and code reference: that is where Sourcey covers ground Material leaves to plugins and bridges.
What about the Insiders edition?
The released Material for MkDocs package is MIT licensed. Insiders is a sponsorship channel for early access to some features; it does not change the comparison here, which is about source formats and output, not theme polish.
Compare with other tools
All comparisons →
Own your docs.
Open source under AGPL. Self-host it, fork it, run it on your own infrastructure.
Fork the demo →