---
title: "A real CMS underneath. No lock-in."
description: "Read and write everything over a REST API, an MCP server or the writavo CLI. Every article is yours to edit, export or move."
canonical: "https://writavo.com/product/cms"
---

# A real CMS underneath. No lock-in.

Read and write everything over a REST API, an MCP server or the writavo CLI. Every article is yours to edit, export or move.

- **Headless API.** Typed, versioned REST with an OpenAPI 3.1 spec.
- **MCP for agents.** Let Claude, Cursor or ChatGPT run your blog with your approval.
- **Export anytime.** Your whole Site, content and media, in one download.

## Model any content beside your articles

Define your own content types in a builder or push them from code, with every entry validated in one place, so the API, the dashboard and agents agree on what is valid.

- A builder in the dashboard
- A declarative push from code
- TypeScript types generated

## Know the moment anything changes

Webhooks fire when an article publishes, updates or gets a comment, so your own systems react without polling.

- Publish, update and comment events
- Signed deliveries
- The same events for every change, API or dashboard

## Every change kept

Every change is kept as a revision you can restore, and every draft can be shared with a preview link before it goes live.

- Restore any revision
- Shareable preview links
- Reader comments, off by default

## Read more

- [API documentation](https://writavo.com/docs): Every operation, with examples
- [MCP server](https://writavo.com/docs/mcp): Run your blog from Claude or Cursor
- [Command line](https://writavo.com/docs/cli): The writavo CLI
