Skip to main content
Glama

mc_events

Read and consume the current Minecraft session event queue—chat, system messages, damage, and lifecycle changes—captured by the watchdog. Peek without clearing or briefly wait for new events.

Instructions

读取/消费当前会话的 MC 事件队列(看门狗记下来的:聊天、系统消息、受伤、上线/死亡/重连/断线)。默认消费掉;peek=true 只看不清(都是最早的先出)。返回一行一条(时间 + 类型 + 内容),省 token。 ⚠️ 被传送 / 捡物 / 其他玩家上下线不在这里(那些只在看门狗的留档里,用 mc_watch {action:"log"} 看)。 ⚠️ waitSec 是兜底,别用它长时间空等:有人叫你(mention)/ 受击 / 死亡 / 断线时,看门狗会打断这个等待(返回里 interrupted:true 就是在告诉你"有人找你了",唤醒内容同时已经记进事件队列——就在上面那几行里)。真需要盯着某一类事件时才给 waitSec(上限 10 秒)。

Input Schema

NameRequiredDescriptionDefault
kindNo只看某类:chat / system / damage / lifecycle
peekNotrue=只看不消费
limitNo最多取几条(默认 20)
waitSecNo先等最多几秒(默认 0=不等,上限 10;想继续等就再叫一次)。⚠️ 会被看门狗唤醒打断,别长等

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations at all, the description carries the full burden and does: it discloses the destructive-by-default consumption behavior and the peek escape hatch, FIFO ordering, the token-efficient one-line-per-event output shape, and the interruptible long-poll semantics including the interrupted:true flag and the fact that the waking content is already recorded in the queue. That is exactly the mutation/blocking context an agent needs before calling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core verb and scope, then the two exclusions, then the waitSec caveat in priority order. Heavy bold/emoji markup and the parenthetical asides add noise, but no sentence is genuinely redundant.

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?

For a 4-optional-param tool with no annotations and no output schema, the description supplies the return format (one line = time + type + content), the ordering, the consumption semantics, and the interrupt signal. Only small things are unstated, such as empty-queue behavior and whether the queue is shared across sessions.

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 100%, so baseline is 3; the description still adds value by framing waitSec as a last-resort option with a 10s ceiling and explaining that the returned interrupted:true means someone is pinging you and the payload is already in the queue. It reinforces peek's non-consuming meaning and the default-consumption contrast. Minor gaps remain: no guidance on choosing limit values or on what an empty queue returns.

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 concrete verb + resource (读取/消费当前会话的 MC 事件队列) and enumerates the event categories it covers (chat, system, damage, lifecycle). It also explicitly carves out what it does NOT cover (teleport, pickups, other players joining/leaving) and names mc_watch {action:"log"} as the tool for those, so an agent can separate it from its siblings without reading any schema.

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?

Gives explicit when-to-use guidance: default is consuming, peek=true is read-only, and waitSec is described as a fallback that should not be used for long idle waits. It names the alternative (mc_watch log) and the exact condition that routes there, plus the concrete trigger that should wake the agent (mention/damage/death/disconnect).

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