v1.7.0 — Your assistant can edit without overwriting your work

1.7.0New featureDenis Povarov

Editing an entry from an AI assistant used to mean resending the whole body. That worked, but it had two sharp edges: everything the assistant did not resend was destroyed, and a write could silently overwrite a change you had just made in the dashboard.

Both are fixed.

Edits no longer overwrite you

edit_entry_content and the new replace_entry_content now require the assistant to hand back the updatedAt it read from the entry. If anything changed in between — you in the dashboard, or another assistant in another window — the write is refused with ENTRY_MODIFIED rather than applied. The assistant re-reads the entry and retries.

In practice: you can keep editing in the dashboard while an assistant works, and the assistant will notice rather than clobber you.

The destructive path is now explicit

replace_entry_content is new. It overwrites an entire body, and it exists so that a full rewrite has to be asked for by name instead of happening by accident.

For everything else there is edit_entry_content, which replaces text in place and leaves every block it does not touch byte-identical. That matters for content Markdown cannot express — uploaded images, file chips, embeds, underline, colour, alignment, merged table cells. A partial edit no longer risks any of it.

Both tools now report droppedFileIds, so if a write does remove an image or a file attachment from a body, the assistant can tell you instead of leaving you to find out later.

Deprecated: the body arguments on update_entry

update_entry still accepts content and format, but they are deprecated and will be removed in the next release. They overwrite a whole body with no concurrency check — exactly the behaviour above replaces.

update_entry is now the metadata tool: title, slug, excerpt, fields, tags, SEO. If you have your own MCP client or scripts calling update_entry with content, move them to edit_entry_content for partial changes or replace_entry_content for a deliberate rewrite.

Also fixed

Two problems that made entries unreachable over MCP:

  • For a short window this morning, clients connected but fetched no tools at all, reporting Date cannot be represented in JSON Schema. Reconnecting did not help; the server was at fault and it is resolved.

  • Some older entries could not be read by an assistant, failing with an invalid-marks error. These were documents whose stored formatting predated the current editor schema. They now load normally, with no action needed on your side.