v1.6.0 — Your AI agent can now finish the job

1.6.0New featureDenis Povarov

The gap

An agent connected to Kookee could read every entry in your project, drafts included, and write a decent blog post. What it could not do was finish. It could see that a changelog entry had a Type of "Bug Fix" — the field came back on every read — and it had no way to set one. Every entry an agent wrote came out untyped, and somebody had to open the dashboard to fix it by hand.

That is now closed, along with the rest of the half-finished edges.

Structured fields

create_entry and update_entry take a fields array. Fields are named the way a human would name them, and select options are matched on their key, their label, or their id:

JSON
{
  "type": "changelog",
  "title": "v1.6.0 — …",
  "fields": [
    { "field": "changelogType", "value": "feature" },
    { "field": "version", "value": "1.6.0" }
  ]
}

A new list_fields tool reports every field of an entry type and the options of each select field, so an agent can discover the vocabulary instead of guessing at it. This covers the changelog's type, version and link, an announcement's type, a feedback post's category, and any field you have added yourself.

list_entries gained a matching filter, so "every bug fix since 1.4" is now one call rather than a full scan.

Publication dates

publish_entry accepts publishedAt. Release notes written the morning after can carry yesterday's date, and a correction to a date no longer means editing in the dashboard. create_entry and update_entry accept unpublishAt for content that should retire on a schedule.

Feedback triage

move_feedback moves a post between board columns by name — "Planned", "In Progress", "Done". Agents could read your feedback board since day one and never do anything about it.

Comments

list_comments reads a thread; create_comment posts a reply. Both work on feedback posts, which is where a reply usually belongs. Comments an agent posts are public and marked official, the same as one written by an owner in the dashboard.

Also

  • update_entry can change an entry's slug, clear its category, and set a parent and sort position for nested pages.

  • Parent references are validated: an entry cannot become its own ancestor.

Notes

Everything above needs an MCP key, and agents still create drafts unless told otherwise. Nothing an agent does over MCP goes live without someone asking it to.