Skip to main content
Glama

move_card

Move a card to a different column and/or lane, or to another board. Relocates the card instead of copying it, resolving the correct card instance across boards.

Instructions

Move a card to a different column and/or lane, optionally on another board.

Specify a column, a lane, or both. Lanes only apply to boards with lanes enabled; use list_lanes to see available lanes.

A card can be committed to several boards at once. Favro's API treats a board change as "commit" (add to the target board, keep the original) by default, which looks like a copy; this tool uses "move" so a cross-board move actually relocates the card.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cardYesCard ID, sequential ID (#123), or name.
laneNoTarget lane (swimlane) ID or name.
boardNoSource board ID or name — where the card currently lives. Used to resolve the correct card instance when the card exists on more than one board. Defaults to the current board context.
columnNoTarget column ID or name (on to_board if given, else on the card's current board).
to_boardNoDestination board ID or name. Omit to move within the same board.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.7.2
  2. Removedv0.7.0
  3. Changed4 schema fields changedv0.3.2
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / board / description
      Added value: +"Board ID or name (needed for name lookups)"
    • addedInput schema / properties / card / description
      Added value: +"Card ID, sequential ID (#123), or name"
    • addedInput schema / properties / column / description
      Added value: +"Target column ID or name"
  4. First observedv0.5.0

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that the tool uses 'move' semantics rather than the API's default 'commit' (which looks like a copy), which is crucial behavioral context. It also notes the lane constraint. However, it does not mention error behavior, what happens if both column and lane are omitted (which the schema allows), or any preconditions like needing the correct board context. This is a decent disclosure but not comprehensive.

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 about five sentences and roughly 100 words. It front-loads the core action and then explains key nuances (lane applicability and cross-board move semantics). Each sentence adds value; none are redundant. It is slightly longer than the minimum needed but remains efficient and well-organized.

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?

Given the complexity of the tool (cross-board moves, optional lanes), the description covers the essential usage: how to specify targets, lane constraints, and the move-vs-commit behavior. It also points to list_lanes for discovering lanes. An output schema exists (though not shown), so return format is likely covered there. Minor gaps include error handling and the fact that the schema allows calling without any destination, which the description does not explicitly forbid. Overall, it is reasonably complete for correct invocation.

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?

The input schema already provides 100% coverage with detailed descriptions for all five parameters, so the baseline is 3. The description adds some context about which parameters to use together (e.g., 'Specify a column, a lane, or both') and clarifies that lanes only apply on lanes-enabled boards. However, it largely reinforces the schema rather than adding deep new meaning about parameter values or formats, so it stays at baseline.

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 action (move a card), the resource (card), and the destinations (column, lane, or board). It clearly distinguishes itself from sibling tools like create_card, update_card, and assign_card by focusing on relocation. It also highlights the important nuance of cross-board move vs copy, which further clarifies its unique purpose.

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 provides clear context: specify a column, lane, or both, and notes that lanes only apply to boards with lanes enabled, directing users to list_lanes. It explains the cross-board behavior and that to_board is optional, giving enough guidance for typical usage. It does not explicitly name alternative tools to avoid, but the purpose is clear enough that an agent would know when to use this instead of update_card or assign_card.

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