Skip to main content
Glama
songzhifei512

multi-agent-bridge

inbox_ack

Acknowledge processed messages to release their lease and remove them from the inbox, ensuring only the winning agent handles each message once.

Instructions

消息总线消费: 把某 agent 的 id(数组)标记 consumed, 释放租约。只有赢得租约的读者可 ack(幂等——ack 已消费/非己有/未过租约期的是 no-op 非错)。消费后不再出现在 inbox_read/inbox_wait。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idsYes
agentYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries full behavioral disclosure and delivers: idempotency, no-op instead of error for already-consumed, non-owned, or expired cases, and the postcondition that consumed messages disappear from inbox reads/wait. This goes well beyond a generic 'ack' verb.

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?

Three sentences, each adding essential information: the core effect, the authorization/idempotency rule, and the observable consequence. There is no filler or duplication of schema details.

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?

For a two-parameter mutation with no output schema, the description covers the lease precondition, idempotent behavior, failure-to-error distinction, and postcondition. An agent has enough to decide when to call it and what to expect.

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

Parameters4/5

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

Schema coverage is 0%, so the description must explain the params. It does so by identifying ids as an array associated with an agent and linking them to the consumed state. It could be more explicit that ids are message ids and that agent identifies the consuming/owning agent, but it adds meaningful semantics beyond bare names/types.

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 identifies a specific action—marking message ids as consumed and releasing a lease—and clearly separates it from read/wait operations by stating consumed messages no longer appear in inbox_read/inbox_wait. This distinguishes it from its closest siblings without ambiguity.

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

Usage Guidelines4/5

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

It explicitly states the precondition: only the reader that won the lease may ack, and it lists the idempotent no-op cases. It does not explicitly name alternatives or say 'use after inbox_read/inbox_wait,' but the intended context is clear from the lease and inbox references.

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