Skip to main content
Glama

Extend a triage lease (call ~every 2 minutes during a mutating pass)

heartbeat_triage

Extends the lease begin_triage acquired, from now. Call roughly every 2 minutes while a mutating triage pass (TTL 8 min) is still running, so it does not expire out from under you mid-batch. Returns { ok:false, reason:'no_lease' } if there is no active lease (it already expired or was never begun; call begin_triage again before continuing to mutate), or { ok:false, busy:true, heldBy, leaseExpiresAt } if a different agent now holds it.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "inboxId": "<inboxId>",
      "agentLabel": "<agentLabel>"
    },
    "name": "heartbeat_triage"
  }
}

Input Schema

NameRequiredDescriptionDefault
inboxIdYes
agentLabelYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the annotations, the description discloses the lease TTL of 8 minutes, the expected heartbeat cadence, what happens when the lease has expired, and how a competing holder is reported. These are operationally important behaviors not conveyed by the schema or annotations alone.

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 short, front-loaded, and every sentence carries useful information: lease extension, cadence, expiration risk, and error recovery behavior. There is no redundant repetition of annotations or schema.

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?

It is strong on timing, lease lifecycle, and failure modes, including return objects for no-lease and busy cases. However, for a two-parameter tool with no schema descriptions, it leaves parameter semantics unexplained and does not describe the success return shape, so the definition is not fully complete.

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

Parameters1/5

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

The schema has zero description coverage for both required parameters, inboxId and agentLabel, and the description never explains either one. It mentions leases and agent holders but does not tie those concepts to the actual parameter names or expected values.

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?

The description states a specific verb and resource: 'Extends the lease begin_triage acquired.' It also clearly distinguishes this from begin_triage and end_triage by explaining the heartbeat role during a mutating pass.

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?

It gives explicit timing guidance ('roughly every 2 minutes') and states when to stop and recover ('call begin_triage again') if there is no active lease. It also explains the busy case where another agent holds the lease.

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