Skip to main content
Glama

defer_intent

Leave work unfinished safely: a tripwire on paths or symbols that warns whoever next edits them (for example "webhooks in payments/ are half-done; finish them before changing this"). It fires once into their next tool result and briefing, and becomes a task in the team's CRM when one is connected. Returns the tripwire id and expiry.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteYesWhat is unfinished and what the next person should do.
pathsNoFiles whose next edit triggers the warning.
repo_idYesThe repository id, e.g. github.com/org/repo (repo_id in .collide/config.json).
symbolsNoSymbol names whose next edit triggers it.
expires_daysNoDays until the tripwire expires (default 14).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / properties / expires_days / description
      Added value: +"Days until the tripwire expires (default 14)."
    • addedInput schema / properties / note / description
      Added value: +"What is unfinished and what the next person should do."
    • addedInput schema / properties / paths / description
      Added value: +"Files whose next edit triggers the warning."
    • addedInput schema / properties / repo_id / description
      Added value: +"The repository id, e.g. github.com/org/repo (repo_id in .collide/config.json)."
    • addedInput schema / properties / symbols / description
      Added value: +"Symbol names whose next edit triggers it."
  2. Changed20 schema fields changed
    • removedInput schema / properties / expires_days / default
      Removed value: -14
    • removedInput schema / properties / expires_days / description
      Removed value: -"How many days until this tripwire or intent expires."
    • removedInput schema / properties / expires_days / title
      Removed value: -"Expires Days"
    • removedInput schema / properties / note / description
      Removed value: -"The tripwire note to leave on the given paths/symbols."
    • removedInput schema / properties / note / title
      Removed value: -"Note"
    • removedInput schema / properties / paths / anyOf
      Removed value: -[
      -  {
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / paths / default
      Removed value: -null
    • removedInput schema / properties / paths / description
      Removed value: -"Repo-relative file paths this change will touch."
    • addedInput schema / properties / paths / items
      Added value: +{
      +  "type": "string"
      +}
    • removedInput schema / properties / paths / title
      Removed value: -"Paths"
    • addedInput schema / properties / paths / type
      Added value: +"array"
    • removedInput schema / properties / repo_id / description
      Removed value: -"Repository id — the git remote (e.g. github.com/acme/api) or a bare folder name; a #branch suffix scopes to that branch."
    • removedInput schema / properties / repo_id / title
      Removed value: -"Repo Id"
    • removedInput schema / properties / symbols / anyOf
      Removed value: -[
      -  {
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / symbols / default
      Removed value: -null
    • removedInput schema / properties / symbols / description
      Removed value: -"Symbol names referenced by, or being changed in, this edit."
    • addedInput schema / properties / symbols / items
      Added value: +{
      +  "type": "string"
      +}
    • removedInput schema / properties / symbols / title
      Removed value: -"Symbols"
    • addedInput schema / properties / symbols / type
      Added value: +"array"
    • removedInput schema / title
      Removed value: -"defer_intentArguments"
  3. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only cover the safety profile (not read-only, not destructive, open-world). The description goes further by disclosing key behavior: it fires exactly once into the next tool result and briefing, may create a CRM task, and returns the tripwire id and expiry. It stops short of covering permissions, expiry cleanup, or what happens on repeat calls.

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?

Two tightly written sentences with the core mechanic front-loaded and the side effects (one-shot firing, CRM task, return values) packed efficiently into the second. No filler.

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?

With no output schema, the description usefully states the return values (id and expiry) and the lifecycle behavior, which is the main thing an agent needs. Minor gaps remain around permissions and durability, but overall it is sufficient to invoke correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all five parameters. The description reinforces that paths/symbols are the triggers and supplies an example note wording, but adds no syntax, format, or default detail beyond the schema, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete action (create a tripwire that warns the next editor of unfinished work) with the mechanism and effect made explicit. It is distinguishable from declare_intent or remember by describing a persistent, trigger-based warning, though it never names those siblings directly.

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

Usage Guidelines3/5

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

The opening phrase "Leave work unfinished safely" implies the usage scenario, and the example clarifies intent. However, there is no explicit guidance on when to choose this over declare_intent, remember, or claim, nor any exclusions or prerequisites.

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.

Resources