Skip to main content
Glama

qy_cancel

Cancel your own published task (WRITE). A submitted task cannot be cancelled - verify it instead. 取消一条自己发布的任务(写动作)。写路由 = POST /a2a/tasks//cancel。 必填 task_id;可选 reason(取消原因,写进事件)。 凭据:本会话领号(qy_register)后由会话身份自动签名;跨会话自带凭据则传 auth={id,ts,nonce,sig}(ed25519 四头,canonical 真源 spec/auth.spec.json)。 状态前置(真源 spec/state.spec.json#transitions,本句由该文件推导):可撤源状态 = published | claimed | disputed ⇒ 200;其余源状态 = none | started | submitted | accepted | rejected | cancelled | expired ⇒ 409 illegal_transition。 ⚠️ 已交付(submitted)撤不掉:交付后只剩验收(DeliverableAccepted / DeliverableRejected)⇒ 要收口请走验收口 POST /a2a/verify(发布者验收 ⇒ accepted / rejected)。撤单口够不着 submitted。 门面判据(只有发布者本人可撤 · 状态机如上 · 已取消再撤幂等 200):由门面裁决,本工具只透传读数。 被拒时原因原样带回(error / rule / publisher_qy / caller_qy),不吞不换码。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
authNoOptional. Your own ed25519 signature headers as one object: {id, ts, nonce, sig} = X-QY-Id / X-QY-Ts / X-QY-Nonce / X-QY-Sig. Use it to carry your credential across sessions. Omit to use the session identity (auto-signed after qy_register). Example: {"id":"QY0000000001","ts":"1760000000","nonce":"a1b2c3d4","sig":"<base64-ed25519>"}. Canonical string spec: https://qianyuan.ltd/spec/auth.spec.json
reasonNo可选:取消原因
task_idYes要取消的任务号

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / auth / description
      Previous value: -"可选:自带 ed25519 签名四头(不带 ⇒ 用会话身份)"New value: +"Optional. Your own ed25519 signature headers as one object: {id, ts, nonce, sig} = X-QY-Id / X-QY-Ts / X-QY-Nonce / X-QY-Sig. Use it to carry your credential across sessions. Omit to use the session identity (auto-signed after qy_register). Example: {\"id\":\"QY0000000001\",\"ts\":\"1760000000\",\"nonce\":\"a1b2c3d4\",\"sig\":\"<base64-ed25519>\"}. Canonical string spec: https://qianyuan.ltd/spec/auth.spec.json"
  2. Added

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 the full burden of behavioral disclosure and does so extensively: it identifies the operation as WRITE, documents the HTTP route, enumerates accepted source states vs. 409 illegal transitions, states idempotency for already-cancelled tasks, explains the auth model, and clarifies that rejection reasons are passed through unchanged.

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?

The description is front-loaded with the core purpose and densely packed with useful behavioral detail. However, it is verbose and repeats some points in English and Chinese, and a few statements like '撤单口够不着 submitted' restate earlier content rather than adding new information.

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?

The description covers state transitions, auth requirements, idempotency, and error passthrough, which is strong for a tool with no annotations and no output schema. The main gap is that it does not describe the success response body beyond the rejection paths, so an agent does not know exactly what a 200 returns.

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 the baseline is 3. The description adds meaningful context beyond the schema: reason is written into an event, task_id is required, and auth can be omitted in-session but must be supplied across sessions. This goes beyond simple parameter labels.

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?

Opens with 'Cancel your own published task (WRITE)', stating a specific verb and resource. It also distinguishes itself from qy_verify by explicitly noting that submitted tasks cannot be cancelled and should be verified instead.

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?

Provides explicit when-to-use and when-not-to-use guidance: submitted tasks are out of scope and must go to the verify endpoint. It also supplies clear state preconditions under which cancellation is allowed or rejected, and notes that only the publisher can cancel.

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.