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

NameTypeRequiredDescription
actionstringYes"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

NameTypeRequiredDescription
actionstringYes"load"
namesarray of stringsYes*Persona names to load (e.g., ["jordan", "acme-corp"])
persona_namestringYes*Single persona name (alternative to names)
formatstringNoOutput format: "prose", "compact", or "both". Default: "compact"
limitnumberNoMaximum 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)

NameTypeRequiredDescription
actionstringYes"create"
persona_namestringYesLowercase name with letters, numbers, hyphens, underscores only
memory_typestringYesOne of: "identity", "preference", "philosophy", "constraint", "context", "interest"
contentstringYesThe fact to store
tagsarray of stringsNoAdditional tags

Parameters (batch creation)

NameTypeRequiredDescription
actionstringYes"create"
persona_namestringYesLowercase name for the persona
memory_typestringYesType for the batch
contentstringYesSummary or first fact
factsarray of objectsNoStructured facts for batch creation

Each object in facts has:

PropertyTypeRequiredDescription
subjstringYesSubject of the fact
predstringYesPredicate (relationship)
valstringYesValue
confnumberNoConfidence score (0-1)
srcstringNoSource 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

TypeUse for
identityName, role, title, organization
preferenceCommunication style, formatting, tool choices
philosophyValues, principles, decision-making approach
constraintLimitations, rules, things to avoid
contextBackground information, project details, relationships
interestTopics, hobbies, areas of expertise
Previous
mcp