Skip to main content
Glama
conorbronsdon

Google Workspace (GWS) MCP Server

tasks_tasks_move

Idempotent

Move a task to a new position within its list or to another list by specifying parent, previous, or destination tasklist IDs.

Instructions

Move a task within its list or to another list. Use parent/previous to set position; destinationTasklist to change list.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskYesTask ID to move
parentNoNew parent task ID (move as subtask under this task)
previousNoNew sibling task ID (move immediately after this task)
tasklistYesSource task list ID
destinationTasklistNoDestination task list ID (omit to move within the source list)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.4.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description adds useful behavioral context: it clarifies that parent/previous set position and destinationTasklist changes the list, and that omitting destinationTasklist moves within the source list. This goes beyond the schema by explaining the relationship between parameters and the move semantics. It doesn't contradict annotations.

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 sentences, no filler. The first sentence states the core action and scope; the second sentence maps parameters to their roles. Every word earns its place, and the most important information is front-loaded.

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 move operation with 5 parameters and no output schema, the description covers the essential semantics: what the tool does, how to set position, and how to change list. It doesn't explain edge cases like whether parent and previous can be combined, or what happens to subtasks when moving, but given the schema covers parameter descriptions and annotations cover safety/idempotency, the description is reasonably complete. A small gap is the lack of guidance on mutual exclusivity of parent/previous.

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 adds a little extra meaning by explaining the roles of parent/previous and destinationTasklist in the move operation, but it doesn't add details like constraints (e.g., whether parent and previous are mutually exclusive, or what happens if both are provided). Baseline 3 is appropriate since the schema does the heavy lifting.

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 ('Move') and resource ('a task'), and immediately clarifies the two distinct scopes: within its list or to another list. It also names the key parameters that control behavior (parent/previous for position, destinationTasklist for list change), which distinguishes it from sibling tools like tasks_tasks_update or tasks_tasks_insert.

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 gives clear context on when to use the tool: when moving a task within a list or to another list. It explicitly says to use parent/previous to set position and destinationTasklist to change list. However, it doesn't explicitly state when NOT to use it or name alternatives (e.g., use tasks_tasks_update for editing task fields, not moving), so it misses the explicit exclusion part.

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