Skip to main content
Glama

Continuity: set prefs

continuity_set_prefs
Idempotent

Changes whether future successful calls are captured in the private timeline. It does not remove or hide public receipts already created.

Input Schema

NameRequiredDescriptionDefault
_refNoOptional handover referral ID from your install link.
ai_labelNoOptional self-reported client label for a per-AI setting. It is not verified.
timezoneNoIANA time zone for recap day boundaries and pass expiry, such as America/New_York. Defaults to UTC until set.
thread_idNoOptional named thread ID for a thread-specific setting.
_zambo_keyNoOptional opaque Zambo access capability. Never place it in a URL or public log.
session_idNoAlias for _session_id.
_session_idNoOptional stable bot-job ID. Reuse it across calls to bind a Day Pass and keep the job ledger together.
daily_recapNoEnable or disable the private daily recap.
_caller_labelNoOptional caller label recorded as a caller-reported claim in the receipt.zambo-starter
_caller_handleNoOpaque anonymous continuity handle returned during initialize. Reuse it across MCP sessions; it is not payment authorization.
capture_enabledNoWhether future successful calls should appear in this private timeline.
_continuity_ai_labelNoOptional self-reported AI client label for the private continuity timeline. Zambo does not independently verify the client.

Output Schema

NameRequiredDescriptionDefault
okYes
idsYes
nextYes
tierNo
urlsYes
errorNo
graphNo
activeNo
resultYesThe tool's observed JSON value or plain-text result.
intentsNo
next_upNo
paymentNo
day_passNo
today_urlNo
expires_atNo
human_lineYes
next_stepsNo
daily_recapNo
renew_nudgeNo
unlock_linkNo
seconds_leftNo
resume_statusNo
resumed_resultNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / _caller_handle
      Added value: +{
      +  "description": "Opaque anonymous continuity handle returned during initialize. Reuse it across MCP sessions; it is not payment authorization.",
      +  "maxLength": 64,
      +  "type": "string"
      +}
    • addedInput schema / properties / _caller_label / default
      Added value: +"zambo-starter"
  2. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-25"New value: +"draft-zambo-aer1-26"
  3. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-24"New value: +"draft-zambo-aer1-25"
  4. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-23"New value: +"draft-zambo-aer1-24"
  5. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-22"New value: +"draft-zambo-aer1-23"
  6. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-21"New value: +"draft-zambo-aer1-22"
  7. Changed1 schema field changed
    • changedOutput schema / properties / graph / properties / aer / const
      Previous value: -"draft-zambo-aer1-20"New value: +"draft-zambo-aer1-21"
  8. Changed1 schema field changed
    • addedOutput schema / properties / next_steps
      Added value: +{
      +  "items": {},
      +  "minItems": 1,
      +  "type": "array"
      +}
  9. Changed13 schema fields changed
    • addedInput schema / properties / _ref
      Added value: +{
      +  "description": "Optional handover referral ID from your install link.",
      +  "format": "uuid",
      +  "type": "string"
      +}
    • addedInput schema / properties / timezone
      Added value: +{
      +  "description": "IANA time zone for recap day boundaries and pass expiry, such as America/New_York. Defaults to UTC until set.",
      +  "maxLength": 100,
      +  "type": "string"
      +}
    • changedOutput schema / additionalProperties
      Previous value: -falseNew value: +true
    • addedOutput schema / properties / error
      Added value: +{
      +  "additionalProperties": true,
      +  "anyOf": [
      +    {
      +      "required": [
      +        "next_call"
      +      ]
      +    },
      +    {
      +      "required": [
      +        "next_url"
      +      ]
      +    }
      +  ],
      +  "properties": {
      +    "code": {
      +      "type": "string"
      +    },
      +    "next_call": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "args": {
      +          "type": "object"
      +        },
      +        "tool": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "tool",
      +        "args"
      +      ],
      +      "type": "object"
      +    },
      +    "next_step": {
      +      "type": "string"
      +    },
      +    "next_url": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "code",
      +    "next_step"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / graph
      Added value: +{
      +  "properties": {
      +    "aer": {
      +      "const": "draft-zambo-aer1-20"
      +    },
      +    "schema": {
      +      "const": "zambo.graph/1"
      +    }
      +  },
      +  "required": [
      +    "schema",
      +    "aer",
      +    "nodes",
      +    "edges",
      +    "retries",
      +    "sources",
      +    "summary"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / human_line / maxLength
      Added value: +200
    • addedOutput schema / properties / human_line / pattern
      Added value: +"^[^\\r\\n]*$"
    • addedOutput schema / properties / ids
      Added value: +{
      +  "additionalProperties": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / next
      Added value: +{
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedOutput schema / properties / ok
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / renew_nudge
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / urls
      Added value: +{
      +  "additionalProperties": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "result"
      -]New value: +[
      +  "result",
      +  "ok",
      +  "human_line",
      +  "next",
      +  "ids",
      +  "urls"
      +]
  10. Changed16 schema fields changed
    • addedInput schema / properties / daily_recap
      Added value: +{
      +  "description": "Enable or disable the private daily recap.",
      +  "type": "boolean"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "capture_enabled"
      -]
    • addedOutput schema / properties / active
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / daily_recap
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / day_pass
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / expires_at
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / human_line
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / intents
      Added value: +{
      +  "items": {
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / next_up
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / payment
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / resume_status
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / resumed_result
      Added value: +{
      +  "type": "object"
      +}
    • addedOutput schema / properties / seconds_left
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / tier
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / today_url
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / unlock_link
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  11. Changed3 schema fields changed
    • changedInput schema / properties / _caller_label / description
      Previous value: -"Optional self-reported caller label. It is recorded as a claim, not independently verified."New value: +"Optional caller label recorded as a caller-reported claim in the receipt."
    • changedInput schema / properties / _session_id / description
      Previous value: -"Optional stable Zambo session ID used to preserve continuity across tool calls."New value: +"Optional stable bot-job ID. Reuse it across calls to bind a Day Pass and keep the job ledger together."
    • addedInput schema / properties / _zambo_key
      Added value: +{
      +  "description": "Optional opaque Zambo access capability. Never place it in a URL or public log.",
      +  "maxLength": 160,
      +  "type": "string"
      +}
  12. Changed7 schema fields changed
    • changedOutput schema / additionalProperties
      Previous value: -trueNew value: +false
    • removedOutput schema / properties / capture_enabled
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedOutput schema / properties / public_receipts_remain
      Removed value: -{
      -  "type": "boolean"
      -}
    • addedOutput schema / properties / result
      Added value: +{
      +  "description": "The tool's observed JSON value or plain-text result."
      +}
    • removedOutput schema / properties / scope_type
      Removed value: -{
      -  "type": "string"
      -}
    • removedOutput schema / properties / status
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / required
      Added value: +[
      +  "result"
      +]
  13. Changed3 schema fields changed
    • addedInput schema / properties / _caller_label
      Added value: +{
      +  "description": "Optional self-reported caller label. It is recorded as a claim, not independently verified.",
      +  "maxLength": 80,
      +  "type": "string"
      +}
    • changedInput schema / properties / _session_id / description
      Previous value: -"Existing Zambo job ID."New value: +"Optional stable Zambo session ID used to preserve continuity across tool calls."
    • addedInput schema / properties / _session_id / maxLength
      Added value: +64
  14. Added

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely new context that annotations cannot express: the setting is forward-looking only and leaves already-created public receipts untouched. It still omits whether the change is scoped per-AI/thread/timezone or what happens when no parameters are supplied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the effect and followed by the one caveat that matters. Nothing is wasted and no sentence is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists and parameter docs are complete, which lowers the burden. Still, for a 12-parameter preference tool with zero required fields, the description should at least signal that other preferences (daily recap, timezone, thread/AI scoping) are also settable and that omitting all of them is meaningful. As written it reads like a single-boolean toggle.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and every one of the 12 parameters carries its own documentation, so the schema does the heavy lifting. The description only implicitly maps to capture_enabled and says nothing about daily_recap, timezone, or the scoping parameters, so it neither adds nor subtracts meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete effect on a concrete resource: it toggles whether future successful calls land in the private timeline. That is specific enough to distinguish it from read-only siblings like continuity_get_recent. However, the tool is named 'set_prefs' and its schema includes daily_recap, timezone, thread_id and ai_label scoping, none of which the description acknowledges, so the stated purpose is narrower than the tool's actual surface.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives among the many continuity_* siblings. Only the effect boundary ('does not remove or hide public receipts') hints at what the tool is and is not for.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources