Personas
Versioned identities a prompt can speak as. Prompts reference a persona VERSION id (personaVersionId).
search_personasget_personalist_persona_versionsget_persona_versioncreate_personaupdate_personaset_persona_visibility
search_personas read-only
Search or list personas (reusable identities a prompt can speak as). Each item's versionId is its latest persona VERSION id, usable directly as personaVersionId in create_prompt / update_prompt.
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | no | 1-based page number. Default: 1. |
pageSize | 6 | 12 | 24 | 48 | 100 | no | Items per page. The server only accepts these exact values. Default: 12. |
sort | "newest" | "most-upvoted" | "most-favorited" | no | Sort order. Default: newest. |
scope | "public" | "mine" | "favorites" | "all" | no | public = community items, mine = the user's own items, favorites = items the user favorited, all = everything accessible to the user. Default: public. |
search | string | no | Full-text search over title and description. Max 200 characters. |
tag | string | no | Filter by a single tag (exact match). |
{
"name": "search_personas",
"arguments": {}
}
get_persona read-only
Fetch one persona by id. latestVersionId in the response is the persona VERSION id to reference from prompts (personaVersionId).
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Persona id. |
{
"name": "get_persona",
"arguments": {
"id": "..."
}
}
list_persona_versions read-only
List the version history of a persona (newest first).
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Persona id. |
page | integer | no | 1-based page number. Default: 1. |
pageSize | 10 | 20 | 50 | no | Items per page. The server only accepts these exact values. Default: 20. |
{
"name": "list_persona_versions",
"arguments": {
"id": "..."
}
}
get_persona_version read-only
Fetch one specific version of a persona.
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Persona id. |
versionId | string | yes | Version id, from list_persona_versions. |
{
"name": "get_persona_version",
"arguments": {
"id": "...",
"versionId": "..."
}
}
create_persona write · non-destructive
Create a persona. The response's versionId is the persona VERSION id to use as personaVersionId when creating prompts.
| Parameter | Type | Required | Description |
|---|---|---|---|
title | string | yes | Persona title, e.g. "a senior security engineer". |
isPublic | boolean | yes | true publishes the item to the public community feed; false keeps it private to the user. Required: choose deliberately, server defaults are not applied. |
description | string | no | Longer description of the persona's expertise, perspective, and voice. |
tags | string[] | no | Tags for categorisation and tag-filtered search. |
{
"name": "create_persona",
"arguments": {
"title": "...",
"isPublic": false
}
}
update_persona write · non-destructive
Update a persona by creating a new version. Takes the full new state. Unlike update_prompt, the changelog is optional here (platform behaviour).
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Persona id. |
title | string | yes | New title. |
description | string | no | New description. |
changelog | string | no | Short summary of what changed. |
tags | string[] | no | Tags for categorisation and tag-filtered search. |
{
"name": "update_persona",
"arguments": {
"id": "...",
"title": "..."
}
}
set_persona_visibility write · idempotent
Make a persona public (community-visible) or private. Reversible.
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | yes | Persona id. |
isPublic | boolean | yes | true = public, false = private. |
{
"name": "set_persona_visibility",
"arguments": {
"id": "...",
"isPublic": false
}
}