Tool Reference
persona
Manage personas — structured identity memories. A persona is a collection of facts about a person, organization, or concept stored as typed memories under a persona:<name> domain.
Actions
list
List all personas with memory counts.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| action | string | Yes | "list" |
Example request
{
"name": "persona",
"arguments": {
"action": "list"
}
}
Example response
{
"personas": [
{
"name": "jordan",
"domain": "persona:jordan",
"memory_count": 14,
"last_updated": "2026-03-14T08:22:00.000Z"
},
{
"name": "acme-corp",
"domain": "persona:acme-corp",
"memory_count": 7,
"last_updated": "2026-03-12T15:10:00.000Z"
}
]
}
load
Load one or more personas with their memories. Supports three output formats with token estimates.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| action | string | Yes | "load" |
| names | array of strings | Yes* | Persona names to load (e.g., ["jordan", "acme-corp"]) |
| persona_name | string | Yes* | Single persona name (alternative to names) |
| format | string | No | Output format: "prose", "compact", or "both". Default: "compact" |
| limit | number | No | Maximum memories per persona. Default: 1000 |
*Provide either names or persona_name.
Example request
{
"name": "persona",
"arguments": {
"action": "load",
"names": ["jordan"],
"format": "compact"
}
}
Example response (compact format)
{
"personas": ["jordan"],
"memory_count": 3,
"token_estimate": {
"prose": 180,
"compact": 72,
"savings": "60%"
},
"memories": [
"[identity] Full name is Jordan Cauley | persona:jordan | 2026-03-14",
"[preference] Prefers direct communication without pleasantries | persona:jordan | 2026-03-13",
"[interest] Interested in AI agent infrastructure and MCP protocol | persona:jordan | 2026-03-12"
]
}
Example response (prose format)
{
"personas": ["jordan"],
"memory_count": 1,
"token_estimate": { "prose": 62 },
"memories": [
{
"id": "mem_x8k2p",
"timestamp": "2026-03-14T08:22:00.000Z",
"observation": "Full name is Jordan Cauley",
"domain": "persona:jordan",
"task_type": "identity",
"outcome": "success",
"tags": ["identity"]
}
]
}
create
Create a persona fact. Supports single-fact creation or batch creation with the facts array.
Parameters (single fact)
| Name | Type | Required | Description |
|---|---|---|---|
| action | string | Yes | "create" |
| persona_name | string | Yes | Lowercase name with letters, numbers, hyphens, underscores only |
| memory_type | string | Yes | One of: "identity", "preference", "philosophy", "constraint", "context", "interest" |
| content | string | Yes | The fact to store |
| tags | array of strings | No | Additional tags |
Parameters (batch creation)
| Name | Type | Required | Description |
|---|---|---|---|
| action | string | Yes | "create" |
| persona_name | string | Yes | Lowercase name for the persona |
| memory_type | string | Yes | Type for the batch |
| content | string | Yes | Summary or first fact |
| facts | array of objects | No | Structured facts for batch creation |
Each object in facts has:
| Property | Type | Required | Description |
|---|---|---|---|
| subj | string | Yes | Subject of the fact |
| pred | string | Yes | Predicate (relationship) |
| val | string | Yes | Value |
| conf | number | No | Confidence score (0-1) |
| src | string | No | Source of the fact |
Example request (single fact)
{
"name": "persona",
"arguments": {
"action": "create",
"persona_name": "jordan",
"memory_type": "preference",
"content": "Prefers concise responses without flattery",
"tags": ["communication"]
}
}
Example response (single fact)
{
"success": true,
"memory_id": "mem_r4n1q",
"persona": "jordan",
"memory_type": "preference",
"domain": "persona:jordan",
"has_facts": false,
"fact_count": 0
}
Example request (batch creation)
{
"name": "persona",
"arguments": {
"action": "create",
"persona_name": "acme-corp",
"memory_type": "context",
"content": "Acme Corp company profile",
"facts": [
{ "subj": "Acme Corp", "pred": "industry", "val": "SaaS" },
{ "subj": "Acme Corp", "pred": "headquarters", "val": "San Francisco, CA" },
{ "subj": "Acme Corp", "pred": "founded", "val": "2019", "conf": 0.9, "src": "website" }
]
}
}
Example response (batch creation)
{
"success": true,
"memory_id": "mem_t7w3m",
"persona": "acme-corp",
"memory_type": "context",
"domain": "persona:acme-corp",
"has_facts": true,
"fact_count": 3
}
Memory types
| Type | Use for |
|---|---|
identity | Name, role, title, organization |
preference | Communication style, formatting, tool choices |
philosophy | Values, principles, decision-making approach |
constraint | Limitations, rules, things to avoid |
context | Background information, project details, relationships |
interest | Topics, hobbies, areas of expertise |