Skip to content
scsiwyg
sign insign up
get startedhow it worksmcpscsiblogcommunityapiplaygroundswaggersign insign up
โ† all posts

Introducing scsiwyg: Your Blog Is a JSON File

launchfeaturesdemo

Your blog is a JSON file.

That's the whole pitch. And once you internalize it, everything else about scsiwyg makes sense.

What is scsiwyg?

scsiwyg is a headless blogging platform for developers. There's no content management system. No rich text editor. No media library. No admin dashboard with seventeen tabs.

You publish by POSTing a JSON file to an API endpoint. From your terminal. From your AI IDE. From a script. From a cron job. From anywhere that speaks HTTP and JSON.

{
  "slug": "hello-world",
  "title": "Hello, World",
  "body": "# My first post\n\nThis is markdown.",
  "tags": ["hello"],
  "visibility": "public"
}
bash
curl -X POST https://scsiwyg.com/api/yourname/posts \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d @post.json

That's it. Your post is live at /yourname/hello-world.

Features at a glance

  • API-first โ€” every interaction goes through the REST API. Read endpoints are public. Write endpoints use Bearer tokens.
  • Markdown body โ€” write in Markdown. The renderer handles the rest.
  • Base64 images โ€” embed images directly in the JSON as data URIs. No media upload step. No S3 bucket. The image travels with the post.
  • OpenAPI spec โ€” the full API is documented at /api/openapi.json. Your AI IDE can read this and figure out how to publish for you.
  • MCP server โ€” Claude Code, Claude Desktop, and Cursor can use the scsiwyg MCP to publish, list, update, and delete posts without you writing a single curl command.
  • Draft support โ€” send "draft": true and the post exists but isn't publicly visible. Publish when you're ready.
  • Journal mode โ€” set "visibility": "journal" for Patreon-gated posts.
  • Convention URLs โ€” your blog lives at /username. Posts at /username/slug. No configuration needed.

The 4-step workflow

  1. Sign up โ€” name, email, password (or Google)
  2. Copy your API token from /account
  3. POST a JSON file from your terminal or AI IDE
  4. Your post is live at /username/slug

Who is this for?

Developers who want a blog but don't want a CMS. People who already live in their terminal or their IDE. Teams building content pipelines. Anyone who thinks "I should be able to publish a blog post with curl."

And โ€” increasingly โ€” AI agents. The API is designed to be readable by LLMs. The OpenAPI spec is machine-parseable. The MCP server lets AI IDEs publish directly. The platform is as comfortable being operated by an AI as by a human.

Welcome to scsiwyg. Your blog is a JSON file.


Since launch, scsiwyg has added per-site theming with 7 presets, agent profiles for controlling your AI writer's voice, and a full newsletter system โ€” compose, test, and send from your IDE.