Head to head
Stop guessing which one. Put them side by side.
Up to 4 tools, same rows for each: what it is, what it really costs, the trap, and how to wire it up. The URL carries your picks — send it to anyone.
WordPress (headless / WPGraphQL)KeystaticMDX
| Field | WordPress (headless / WPGraphQL)wpgraphql.com | Keystatickeystatic.com | MDXmdxjs.com |
|---|---|---|---|
| What it is | WPGraphQL is a free GPL plugin that exposes WordPress content as a GraphQL API so a React or Next.js front end can consume it while editors stay in wp-admin. WordPress 6.9 added the Abilities API and an official MCP Adapter for agent access. | Keystatic from Thinkmill is an MIT-licensed CMS that makes Markdown, MDX, JSON and YAML in your repository editable through a React admin UI. There is no database. It runs against the local filesystem in development and against GitHub in production. | MDX is a format that lets you write JSX inside Markdown, so an article can embed live React components — charts, interactive figures, embeds — between paragraphs of prose. It compiles to a React component and is supported by Vite, Next.js and Astro. |
| Category | CMS & content infrastructure | CMS & content infrastructure | CMS & content infrastructure |
| Cost tier | free | free | free |
| Pricing | WordPress and WPGraphQL are free and GPL-licensed. Real cost is hosting: roughly $10-$50/mo shared, $20-$300/mo managed. | Free and MIT-licensed with no seat limits. Keystatic Cloud is an optional free add-on for GitHub auth and image handling. | Free, MIT-licensed open format. |
| Why builders pick it | Unbeatable when the newsroom already knows WordPress — you replatform the front end without retraining a single writer. Enormous plugin ecosystem for SEO, advertising and syndication. | Zero cost and zero vendor lock-in — the schema is a TypeScript file and content stays as plain files you can grep and diff. Ships integrations for Next.js, Astro and Remix. | The reason a technical publication can ship an interactive explainer inside an ordinary article. Every file-based tool here — Tina, Keystatic, Outstatic, Velite — speaks it natively. |
| Watch out for | You now maintain two systems. Many plugins assume the theme layer and simply break when headless — SEO, forms and page builders especially. Preview and draft workflows need custom wiring. | Smaller community and slower release cadence than Tina or Payload. No official MCP server, no built-in scheduling, and no multi-stage editorial workflow or approval chain. | MDX is a compiler, not a CMS: no editor, no media library, no workflow, no roles. Non-technical writers will not author raw MDX, so pair it with an editing layer. |
| How to wire it up | wp plugin install wp-graphql --activate | npm create @keystatic@latest | npm i @mdx-js/rollup |
| Editor's pick | No | No | No |
Which one did you ship?
The grid says what these tools are. This says what builders did about it — one decision per person, changeable whenever you change your mind.
0/280Sign in to add yours.
Or try
Hand this to your Lovable agent
# Tool comparison — WordPress (headless / WPGraphQL) vs Keystatic vs MDX Source: Kbaise, a directory of tools that work with Lovable projects. Pick one and tell me why before writing any integration code. ## WordPress (headless / WPGraphQL) (wordpress) - URL: https://www.wpgraphql.com - Category: CMS & content infrastructure - Cost: free — WordPress and WPGraphQL are free and GPL-licensed. Real cost is hosting: roughly $10-$50/mo shared, $20-$300/mo managed. - What it is: WPGraphQL is a free GPL plugin that exposes WordPress content as a GraphQL API so a React or Next.js front end can consume it while editors stay in wp-admin. WordPress 6.9 added the Abilities API and an official MCP Adapter for agent access. - Why builders pick it: Unbeatable when the newsroom already knows WordPress — you replatform the front end without retraining a single writer. Enormous plugin ecosystem for SEO, advertising and syndication. - Trap: You now maintain two systems. Many plugins assume the theme layer and simply break when headless — SEO, forms and page builders especially. Preview and draft workflows need custom wiring. - Wiring: wp plugin install wp-graphql --activate - Full dossier: /api/public/tools/wordpress ## Keystatic (keystatic) - URL: https://keystatic.com - Category: CMS & content infrastructure - Cost: free — Free and MIT-licensed with no seat limits. Keystatic Cloud is an optional free add-on for GitHub auth and image handling. - What it is: Keystatic from Thinkmill is an MIT-licensed CMS that makes Markdown, MDX, JSON and YAML in your repository editable through a React admin UI. There is no database. It runs against the local filesystem in development and against GitHub in production. - Why builders pick it: Zero cost and zero vendor lock-in — the schema is a TypeScript file and content stays as plain files you can grep and diff. Ships integrations for Next.js, Astro and Remix. - Trap: Smaller community and slower release cadence than Tina or Payload. No official MCP server, no built-in scheduling, and no multi-stage editorial workflow or approval chain. - Wiring: npm create @keystatic@latest - Full dossier: /api/public/tools/keystatic ## MDX (mdx) - URL: https://mdxjs.com - Category: CMS & content infrastructure - Cost: free — Free, MIT-licensed open format. - What it is: MDX is a format that lets you write JSX inside Markdown, so an article can embed live React components — charts, interactive figures, embeds — between paragraphs of prose. It compiles to a React component and is supported by Vite, Next.js and Astro. - Why builders pick it: The reason a technical publication can ship an interactive explainer inside an ordinary article. Every file-based tool here — Tina, Keystatic, Outstatic, Velite — speaks it natively. - Trap: MDX is a compiler, not a CMS: no editor, no media library, no workflow, no roles. Non-technical writers will not author raw MDX, so pair it with an editing layer. - Wiring: npm i @mdx-js/rollup - Full dossier: /api/public/tools/mdx ## Rules 1. Prefer the free tier when no budget was stated, and say what the ceiling is. 2. Read the full dossier before integrating. 3. Fetch /api/public/models before writing any AI model ID.
Agents can fetch the same thing: GET /api/public/compare?slugs=wordpress,keystatic,mdx