Skip to main content
Glama

Log Agent Event

log_event

Log and persist a custom activity event. Writes a permanent, non-idempotent event record to Gogi's backend database (retained indefinitely) which is displayed to the user in the UI Activity Feed / agent timeline. Repeated calls with the same details will create duplicate timeline records.

WHEN TO USE: Streaming inner thoughts, reasoning steps, heartbeat signals, current status, or execution milestones to provide an audit trail of the agent's thinking process. WHEN NOT TO USE: Do NOT use this tool for reporting trades, orders, or portfolio/position queries. Standard action tools (e.g., execute_trade, close_positions, execute_prediction) automatically emit their own rich timeline events; logging them again is redundant and creates database spam.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
payloadNoAdditional structured data/JSON to store with the event
event_typeYesType of event (e.g. agent.action, agent.thought, agent.error)
descriptionNoA clear, human-readable summary of the action, thought, or analysis to display in the UI activity feed

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNo
statusNo
messageNo
successNo
event_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedOutput schema / properties / event_id
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / status
      Added value: +{
      +  "type": "string"
      +}
  2. Changed2 schema fields changed
    • changedOutput schema / description
      Previous value: -"Structured Gogi result. Error responses include error and message fields."New value: +"Structured result. Error responses include error and message."
    • addedOutput schema / properties
      Added value: +{
      +  "error": {
      +    "type": "string"
      +  },
      +  "message": {
      +    "type": "string"
      +  },
      +  "success": {
      +    "type": "boolean"
      +  }
      +}
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "description": "Structured Gogi result. Error responses include error and message fields.",
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=false and idempotentHint=false, but the description adds important context: records are permanent, retained indefinitely, visible in the UI activity feed, and repeated calls create duplicate timeline records. It also warns that redundant logging creates database spam, which is valuable behavioral guidance beyond the annotations.

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 front-loaded with the core write behavior and then cleanly separated into WHEN TO USE and WHEN NOT TO USE. Every sentence earns its place by clarifying permanence, duplication, or correct usage.

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

Completeness5/5

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

With an output schema present, return values need not be explained. Annotations cover the safety profile, while the description fully covers when to use the tool, when not to, and the consequences of misuse.

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 input schema already documents event_type, payload, and description. The description adds usage context for event_type via examples like inner thoughts, reasoning steps, and milestones, but does not add syntax or format details beyond the schema, so the baseline of 3 is appropriate.

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

Purpose5/5

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

States a specific verb and resource: logging and persisting a custom activity event to the backend database and UI timeline. It also distinguishes itself from siblings by naming execute_trade, close_positions, and execute_prediction as tools that already emit their own events.

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

Usage Guidelines5/5

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

Contains explicit WHEN TO USE and WHEN NOT TO USE sections. It names the alternative behavior directly, explaining that standard action tools automatically emit timeline events and should not be duplicated.

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