Skip to main content
Glama

adhoc_ack

Acknowledge messages that need no response to remove them from pending and teacher inbox, preserving them for later reading. Idempotent; defaults to the thread's latest message.

Instructions

消账 —— 学习者明说不必回、或你判断该消息无需回应时调用: 它从 pending (live_pending / GET /bridge/pending)、桥事件 (live_wait / GET /bridge/wait) 与 teacher inbox 里退场, 但消息本身仍保留, 可随时用 adhoc_thread_get 读回. 缺省 message_id 时消账到该 thread 当前最新一条. 幂等: 重复 ack 同一条不报错. 滥用即失职: 拿 ack 逃避该回的问题, 学习者看得见.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
thread_idYes
message_idNo可选。消账到这条消息 id (含). 缺省=消账到该 thread 当前最新一条消息.
Behavior5/5

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

Since no annotations are provided, the description carries the full burden and does an excellent job. It discloses key behaviors: removal from pending/bridge/inbox, persistence of the message, default behavior of clearing to the latest message, idempotency, and a warning that misuse is visible to the learner. This goes well beyond what annotations would typically provide.

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 a single dense paragraph where every sentence contributes essential information: purpose, usage conditions, side effects, default behavior, idempotency, and a caution. It is front-loaded with the action and criteria, making it easy for an agent to parse quickly.

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 tool with two parameters, no output schema, and no annotations, this description is remarkably complete. It covers purpose, when to use, behavior, parameter defaults, and edge cases (idempotency), leaving no significant gaps for an agent to misinterpret.

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?

The schema covers only message_id (50% coverage), while thread_id has no description. The description adds meaning by explaining that thread_id refers to the thread and that message_id defaults to the latest message. It also clarifies the effect on queues, but thread_id's format and expected values are still not explicitly detailed.

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 clearly states that the tool acknowledges a thread/message by removing it from pending, bridge wait, and teacher inbox while preserving the message itself. It uses a specific verb ('消账') and names the affected resources, and distinguishes itself from sibling tool adhoc_thread_get by noting that messages can be read back.

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?

The description gives explicit conditions for when to use the tool: when the learner explicitly says no reply is needed, or when the assistant judges a response is unnecessary. It also mentions an alternative for reading back (adhoc_thread_get), but does not explicitly mention reply tools like adhoc_message_send for the opposite case, leaving a slight gap in when-not-to-use guidance.

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/sf-shenfeng/learn-shell'

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