Skip to main content
Glama

task_write

Create or update a task (non-destructive). action: create | update. Deletion is a separate tool (delete_task). (consolidated surface — same handlers as the legacy tools) Required per action — create: content | update: id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNo[update] Task ID (required)
notesNo[create] Additional notes or details for the task [update] Update notes (or 'null' to clear)
actionYeswhich operation to run
contentNo[create] Task content (required) [update] New task content
due_dateNo[create] Due date in ISO format (e.g., '2026-01-28' or '2026-01-28T15:00:00+09:00') [update] Update due date in ISO format (or 'null' to clear)
due_timeNo[create] Due time in HH:MM format (e.g., '15:00'). If not provided, task is treated as all-day. [update] Update due time in HH:MM format (or 'null' to make all-day)
locationNo[create] Location where the task takes place [update] Update location (or 'null' to clear)
is_all_dayNo[create] Mark as all-day event — suppresses time-of-day rendering. [update] Toggle all-day mode.
start_dateNo[create] Start date for date range tasks in ISO format (e.g., for multi-day events) [update] Update start date in ISO format (or 'null' to clear)
category_idNo[create] Category ID (UUID) to organize the task [update] Update category ID (or 'null' to remove category)
repeat_ruleNo[create] Recurrence rule (e.g., 'daily', 'weekly', 'monthly', 'yearly', or RRULE format) [update] Update recurrence rule (or 'null' to make non-recurring)
travel_timeNo[create] Minutes of travel time to allow before due_date. [update] Update travel-time minutes.
completed_atNo[update] Mark as completed (ISO format) or 'null' to uncomplete
is_importantNo[create] Mark task as important (default: false) [update] Update important status
location_latNo[create] GPS latitude. Pair with location_lng. [update] Update GPS latitude.
location_lngNo[create] GPS longitude. Pair with location_lat. [update] Update GPS longitude.
reminder_timingNo[create] Minutes before due time to send reminder (e.g., 10 for 10 minutes before). Default: 30. Only used when has_notification is true. [update] Minutes before due time to send reminder (e.g., 10 for 10 minutes before). Only used when has_notification is true.
has_notificationNo[create] Enable reminder notifications (default: false) [update] Enable/disable reminder notifications
reminder_timingsNo[create] Multiple reminder offsets in minutes before due time (e.g., [10, 60] fires 10 min and 1 hour before). Overrides reminder_timing if provided. [update] Multiple reminder offsets in minutes before due time (e.g., [10, 60]). Pass empty array [] to clear.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • addedInput schema / $schema
      Added value: +"https://json-schema.org/draft/2020-12/schema"
  2. Added

TDQS

A4.3/5.0
Behavior4/5

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

The annotations already convey that the tool is non-destructive (destructiveHint false) and not read-only. The description adds useful context: it explicitly states 'non-destructive,' notes that the tool is a 'consolidated surface — same handlers as the legacy tools,' and clarifies that deletion requires a different tool. It also discloses action-dependent requirement structure. This goes beyond what annotations alone provide, though it does not delve into side-effect details like notifications or field-clearing behavior.

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 compact (around 40 words) and front-loads the primary purpose. Every element contributes value: the main verb phrase, the action enum, the deletion alternative, the legacy-tool context, and the required-fields summary. The structure is somewhat choppy with parenthetical fragments, but it remains efficient and scannable.

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 tool's complexity (19 parameters, action-dependent behavior), the description provides a solid high-level overview: main operation, non-destructive nature, separation of deletion, and per-action requirements. It does not enumerate all parameters (relies on schema for that), but it covers the critical decision points. Slightly more explicit guidance about integration with tasks_read or update semantics (like 'null' to clear) would improve completeness, but the schema already handles those details.

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 a concise summary of required fields per action ('create: content | update: id'), which is a helpful extraction and reduces cognitive load for a 19-parameter tool. While each parameter is already described in the schema with [create]/[update] tags, the description's rule-of-thumb makes it easier to quickly understand the action-dependent requirements.

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 clearly states the tool's core function: 'Create or update a task (non-destructive).' It specifies the action parameter values (create | update) and distinguishes from sibling tool delete_task by explicitly noting it is a separate tool for deletion. This provides a specific verb+resource with clear differentiation.

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 usage guidance by specifying required fields per action ('create: content | update: id') and names an alternative tool for deletion ('Deletion is a separate tool (delete_task)'). However, it does not explicitly mention when to use this tool versus tasks_read for reading, but the tool name and write-focused description make this implicit. It could be strengthened with a direct 'for reading, use tasks_read' exclusion, but current guidance is adequate.

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.

TDQS

A3.5/5.0
Disambiguation4/5

Most tools clearly target distinct resources (tasks, docs, graph, sync, env_sync, handoffs, judgments, projects, vault). A few pairs could confuse, like sync_push vs vault_sync (which has a push action) and env_sync_write vs env_sync_txn_push, but descriptions mostly clarify boundaries.

Naming Consistency3/5

Names are predominantly snake_case with a noun_verb pattern (e.g., sync_push, task_write), but there are notable inconsistencies: plural/singular mismatches (dev_docs_read vs dev_doc_write, tasks_read vs task_write), verb-first names (list_papers, get_setup_guide, judgment_submit), and a dotted sub-namespace (env_sync.secret_pull) mixed with flat names (env_sync_txn_push).

Tool Count2/5

35 tools is a large surface for a personal note/sync server. While it spans many domains (auth, tasks, docs, sync, env_sync, graph, etc.), the sheer number feels heavy and likely overwhelms agents with too many choices, especially when several tools are consolidated sub-action surfaces.

Completeness3/5

Most domains have reasonable CRUD coverage (tasks, dev docs, graph, sync, env_sync, vault). However, noticeable gaps exist: memory has no write tool (only read), papers only support listing (no create/update/delete), assumptions have write but no dedicated read or delete, and judgment is effectively submit-and-list only.

Resources