Skip to main content
Glama
zzhang82

Agent Memory Bridge

by zzhang82

record_run_event

Append structured run events to a durable authority ledger in one transaction, preserving accurate session memory and audit trails for coding agents.

Instructions

Append one structured event to a run's durable authority ledger.

Sequence allocation, event persistence, child work-item creation, and projection updates occur in one transaction. This tool never sets an implicit current run.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
run_idYesServer-minted run identifier returned by `begin_run`.
payloadNoOptional structured JSON payload, limited to 32 KiB. Raw reasoning fields are rejected.
summaryYesBounded factual event summary. Raw transcript or hidden reasoning is not allowed.
agent_idNoOptional declared agent responsible for the event.
evidenceNoOptional structured evidence references, limited to 32 KiB.
thread_idNoOptional external thread or conversation identifier for the event.
event_typeYesStructured v1 or governed-v2 logical event type.
provenanceNoOptional bounded declared provenance for the event.
work_item_idNoExisting server-minted work-item identifier. Omit only for `work_item_started` when creating a child work item.
workspace_keyYesDeclared workspace scope that owns the run.
owner_agent_idNoOptional declared owner for a newly created child work item.
work_item_goalNoGoal for a new child work item, used only with `work_item_started`.
idempotency_keyYesCaller-generated retry key scoped to this run; only its SHA-256 digest is stored.
memory_attributionNoRequired receipt-bound or explicit manual memory attribution for memory_recalled, memory_applied, and memory_rejected. Recall receipt tokens are validated but never persisted.
parent_work_item_idNoParent work-item identifier, used only when creating a child work item.
event_schema_versionNoEvent payload schema version; governed-v2 runs require version 2.
expected_last_sequenceNoOptional compare-and-swap precondition. The append is rejected without writes when the authority ledger has a different latest sequence.
expected_database_epochNoDatabase epoch CAS precondition; required by governed-v2 runs.
expected_run_generationNoRun generation CAS precondition; required by governed-v2 runs.
expected_work_item_statusNoOptional compare-and-swap precondition for an existing work item. Conflicts report the actual authority-derived status.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior4/5

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

No annotations are provided, so the description carries the transparency burden. It discloses meaningful behavioral traits: transactional atomicity (sequence allocation, persistence, child work-item creation, projection updates in one transaction) and the absence of implicit current-run setting. This goes beyond a bare action statement, though it omits permission or failure semantics.

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?

The description is two sentences long, front-loaded with the primary purpose, and each sentence provides distinct value: the first defines the action, the second explains transactional scope and a key side-effect disambiguation. No filler or redundancy.

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

Completeness4/5

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

Given the tool's 20 parameters and rich schema descriptions, the description appropriately focuses on non-obvious cross-cutting behavior (transactionality and child work-item creation). The output schema exists, so return-value documentation is not required. It is complete for an agent to select and invoke the tool, though additional usage guidance would push it higher.

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%, so the schema already documents all 20 parameters with detailed descriptions. The tool description adds no additional parameter-specific meaning, but it does not need to; the baseline of 3 applies because the schema carries the heavy lifting.

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 clearly identifies the action: append one structured event to a run's durable authority ledger. It specifies the resource (run's ledger) and the scope (one structured event), but it does not explicitly differentiate from sibling tools like `store` or `begin_run`.

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

Usage Guidelines3/5

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

The description implies usage through the verb 'append' and notes that it never sets an implicit current run, but it does not state when to prefer this tool over alternatives or provide exclusions/alternatives. The context is present but not explicit.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zzhang82/Agent-Memory-Bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server