Skip to main content
Glama

query_tasks

Find tasks by ID, project, due date, priority, or keyword. Combine filters to narrow results and get exactly what you need.

Instructions

Unified task query tool with flexible multi-dimensional filtering.

All parameters are optional. When no filters are provided, returns all tasks. Multiple filters can be combined - tasks must match ALL specified criteria (AND logic).

Args: task_id: Get a specific task by ID. When combined with project_id, uses direct API call (most efficient). When used alone, searches all tasks for matching ID. Can be combined with other filters to verify task properties. project_id: Limit search to specific project (use "inbox" for inbox tasks). When combined with task_id, enables direct API lookup. date_filter: Filter by date - one of: - "today": Tasks due today - "tomorrow": Tasks due tomorrow - "overdue": Overdue tasks - "next_7_days": Tasks due within the next 7 days - "custom": Tasks due in a specific number of days (requires custom_days) custom_days: Number of days from today (only for date_filter="custom") e.g., 0 for today, 1 for tomorrow, 3 for 3 days from now priority: Filter by priority level: "none", "low", "medium","high"(case-insensitive): search_term: Search keyword in title, content, or subtask titles (case-insensitive)

Examples: query_tasks() → All tasks query_tasks(task_id="abc123", project_id="xyz789") → Get specific task query_tasks(task_id="abc123") → Find task by ID across all projects query_tasks(date_filter="today") → Tasks due today query_tasks(priority="high") → High priority tasks query_tasks(date_filter="today", priority="high") → High priority tasks due today query_tasks(search_term="meeting") → Tasks containing "meeting"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_idNo
priorityNo
project_idNo
custom_daysNo
date_filterNo
search_termNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It fully discloses behavior: all parameters optional, when no filters returns all tasks, AND logic when combining filters, special behavior for task_id with and without project_id, and the meaning of date_filter values. It also notes case-insensitivity for priority and search_term. This is thorough and transparent.

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?

The description is well-structured with a clear opening, logical parameter breakdown, and a helpful examples section. Although lengthy, every part adds value—parameter details and examples are essential for a flexible tool with 6 parameters. It is organized and front-loaded with the core purpose.

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?

Given the tool's complexity (6 optional parameters, no enums), the description is complete. It covers all parameters, behaviors, combinations, and provides examples. Since an output schema exists, the lack of return value explanation is acceptable. The description leaves no ambiguity about how to invoke the tool for common scenarios.

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

Parameters5/5

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

The input schema provides only basic parameter names and types with no descriptions (coverage 0%). The description compensates by explaining every parameter in detail, including valid values, constraints (e.g., custom_days requires date_filter='custom'), and semantics like 'inbox' for project_id. Examples further clarify usage. This far exceeds the schema's information.

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 it is a 'Unified task query tool' with 'flexible multi-dimensional filtering,' which is specific and distinguishes it from sibling tools like get_completed_tasks or get_all_habits. It explains exactly what it does: query tasks with various filters, and includes multiple examples.

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 extensive usage context, stating all parameters are optional, that filters combine with AND logic, and includes seven concrete examples showing various use cases. However, it does not explicitly mention when to use this tool versus alternatives like get_completed_tasks for completed tasks, so it lacks explicit exclusions but gives clear context.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Code-MonkeyZhang/ticktick-mcp-enhanced'

If you have feedback or need assistance with the MCP directory API, please join our Discord server