Skip to main content
crystal_edit is available only on stdio MCP. Hosted MCP callers use crystal_update. The edit tool uses the same update fields and behavior: required memoryId, at least one supported change, optional scopeChannel and agentId, and a separate stored channel for rehoming. It supports metadata, tags, action triggers, and all current categories, including skill.

When to use

Use crystal_edit only for a stdio client that already depends on this compatibility name. Prefer update for new integrations; use supersede to retain a predecessor/successor relationship. The raw HTTP compatibility route is POST /api/mcp/edit. A request with no supported changes returns 400. Title/content are not trimmed automatically; tags are trimmed without deduplication. Editing does not refresh lastAccessedAt. See update for the complete parameter table and HTTP 409 redacted_content_write protection. Set allowRedactedContent: true only when writing a placeholder over a stored secret is intentional.

Parameters

Examples

Examples use placeholder IDs. Replace them with IDs returned by your account. MCP examples show the JSON tool arguments and the JSON inside the tool result, not the outer MCP envelope.

Replace tags

Request:
raw HTTP compatibility route response:

Correct text

Request:
raw HTTP compatibility route response:

Replacement options

Omitted fields remain unchanged; supplied arrays replace their previous values. The same ID survives the edit. When moving a record, use its old scope for authorization and its new channel as the destination.

Errors and common mistakes

Hosted MCP does not register this tool name. A request with only memoryId has no change to apply and returns 400. Missing or hidden records return 404. Inspect 409 redaction errors instead of bypassing them automatically.