Full example
Field reference
Fields are written in this order by pull_asset and push_asset.
All fields except
id, type, and title are optional. push_asset preserves any fields it doesn’t manage.
Which fields are writable
When you edit a file locally and run push_asset, only these fields are sent to the API:title- Body (everything after the frontmatter)
tags
id, version, created_at, updated_at, or versuno_url are ignored. These are server-owned.
To change type, project, importance, or maturity, use the Versuno dashboard or API directly. The MCP currently doesn’t expose tools for those fields.
What happens with extra fields
If you add your own fields to the frontmatter, the server doesn’t touch them. They’ll round-trip throughpull_asset and push_asset unchanged. This is handy for local-only metadata like review status or owner.
Malformed frontmatter
The parser accepts any valid YAML that resolves to a plain object. It rejects:- YAML that parses to an array or a scalar (these are treated as “no frontmatter”).
- Syntactically broken YAML (treated as “no frontmatter”, and the file is treated as a raw body).
Relationship to the CLI
The CLI uses the exact same schema and field ordering. A file pulled via the MCP can be pushed withversuno prompts push, and vice versa. See CLI: versuno prompts push.
