Skip to main content
Glama

task_bind

Binds a project to a claimed task by closing and reopening it with the task recorded, so submissions include that task; save unsaved changes first.

Instructions

把工程绑定到一个已领取的任务,和从任务详情页点「去创作」打开的工程一样,提交时会带上该任务。编辑器只在打开工程时写入任务信息,所以本工具会先关闭该工程的窗口(有未保存改动时拒绝,先 save_project),再带着任务信息重新打开,返回新的 pid 和 instance_id。task_id 须来自本会话的 tasks_list。只在提交时选任务的话,直接给 submit_prepare 传 task(已领取任务的标题),不用重开窗口。

Input Schema

NameRequiredDescriptionDefault
pathYes工程文件夹的绝对路径。
task_idYestasks_list 返回的 task_id(须 bindable=true)。

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

No annotations are supplied, so the description must fully disclose the side effects, and it does: the project window is closed (refused if there are unsaved edits), then reopened with the task bound, and a new pid and instance_id are returned. It discloses the mutation, the failure mode, and the return values an agent needs for follow-on calls.

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 its purpose, then moves through mechanism, precondition, and alternative in a logical order with no filler sentences. It is dense and multi-clause, which makes it slower to parse, but every sentence contributes required information.

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 annotations and no output schema, the description covers everything an agent needs: purpose, required provenance of task_id, the save_project precondition, the returned pid and instance_id, and the submit_prepare alternative. Nothing material is missing.

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 both parameters are already documented, including the bindable=true constraint on task_id. The description still adds a useful constraint beyond the schema by requiring that task_id come from tasks_list in the current session, though it adds nothing about the path parameter that the schema does not already say.

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 (bind a project to an already-claimed task) and explains the mechanism precisely: the editor only writes task info when a project is opened, so the tool closes and reopens the window. It also distinguishes itself from the closer sibling submit_prepare by explaining the different route to the same outcome.

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 prerequisites (task_id must come from tasks_list in this session; the project must have no unsaved changes, otherwise call save_project first) and explicit when-not-to-use guidance: if you only want to pick a task at submission time, pass the claimed task title to submit_prepare instead of reopening the window. This is the strongest kind of routing guidance.

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