Skip to main content
Glama

RTM MCP Server

A production-quality Model Context Protocol (MCP) server for Remember The Milk task management.

Enables Claude to manage your tasks through natural language conversation.

Features

  • Full RTM API Coverage: 30+ tools covering tasks, lists, tags, notes, and more

  • Smart Add Syntax: Natural language task creation ("Call mom ^tomorrow !1 #family")

  • Undo Support: All write operations return transaction IDs for undo

  • Async Performance: Built on httpx with connection pooling

  • Type Safety: Full Pydantic models and type hints

Related MCP server: Todoist MCP Server

Installation

uvx rtm-mcp

Using pip

pip install rtm-mcp

From Source

git clone https://github.com/ljadach/rtm-mcp.git
cd rtm-mcp
uv sync

Setup

1. Get RTM API Credentials

RTM API keys are issued through a separate developer portal (not your account settings):

  1. Go to RTM API Key Registration — you may need to log in first

  2. Click "Apply for an API Key"

  3. Fill in the form — app name (e.g. "Claude MCP"), description, anything works

  4. After submitting, you'll see your API Key and Shared Secret — save both

2. Run Setup

rtm-setup

This will:

  • Prompt for your API credentials

  • Open your browser for authorization

  • Save the auth token to ~/.config/rtm-mcp/config.json

3. Configure Claude Desktop

Add to ~/.config/claude/claude_desktop_config.json:

{
  "mcpServers": {
    "rtm": {
      "command": "uvx",
      "args": ["rtm-mcp"]
    }
  }
}

Usage

Once configured, you can ask Claude to manage your tasks:

  • "Show my tasks due today"

  • "Add a task to buy groceries tomorrow, high priority"

  • "Complete the grocery task"

  • "What high priority tasks do I have?"

  • "Move the meeting prep task to my Work list"

  • "Add a note to the project task"

Smart Add Syntax

When adding tasks, use RTM's Smart Add syntax:

Symbol

Meaning

Example

^

Due date

^tomorrow, ^next friday

!

Priority

!1 (high), !2 (medium), !3 (low)

#

Tag

#work, #urgent

@

Location

@home, @office

=

Estimate

=30min, =2h

*

Repeat

*daily, *every monday

Example: "Review report ^friday !1 #work =1h *weekly"

Available Tools

Tasks

  • list_tasks - List tasks with filters

  • add_task - Create a new task

  • complete_task / uncomplete_task - Mark done or reopen

  • delete_task - Remove a task

  • postpone_task - Move due date by one day

  • move_task - Move to different list

  • set_task_name - Rename task

  • set_task_due_date - Change due date

  • set_task_priority - Set priority level

  • set_task_recurrence - Set repeat pattern

  • set_task_start_date - Set start date

  • set_task_estimate - Set time estimate

  • set_task_url - Attach URL

  • add_task_tags / remove_task_tags - Manage tags

Notes

  • add_note - Add note to task

  • edit_note - Edit existing note

  • delete_note - Remove note

  • get_task_notes - View all notes

Lists

  • get_lists - List all lists

  • add_list - Create new list

  • rename_list - Rename list

  • delete_list - Delete list

  • archive_list / unarchive_list - Archive management

  • set_default_list - Set default list

Utilities

  • test_connection - Test API connectivity

  • check_auth - Verify authentication

  • get_tags - List all tags

  • get_locations - List saved locations

  • get_settings - View user settings

  • get_contacts / get_groups - Contact management

  • parse_time - Parse natural language time

  • undo - Undo previous operation

Configuration

Environment Variables

RTM_API_KEY=your_api_key
RTM_SHARED_SECRET=your_shared_secret
RTM_AUTH_TOKEN=your_token

Config File

~/.config/rtm-mcp/config.json:

{
  "api_key": "your_api_key",
  "shared_secret": "your_shared_secret",
  "token": "your_token"
}

Development

# Install dev dependencies
make dev

# Run linting
make lint

# Run tests
make test

# Run with coverage
make test/coverage

# Format code
make format

Docker

docker build -t rtm-mcp .
docker run -it --rm \
  -e RTM_API_KEY \
  -e RTM_SHARED_SECRET \
  -e RTM_AUTH_TOKEN \
  rtm-mcp

Claude Desktop config for Docker:

{
  "mcpServers": {
    "rtm": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
        "-e", "RTM_API_KEY",
        "-e", "RTM_SHARED_SECRET",
        "-e", "RTM_AUTH_TOKEN",
        "rtm-mcp"]
    }
  }
}

License

MIT License - see LICENSE for details.

Acknowledgments

Available Tools

36 tools
add_listC

Create a new list.

Args: name: Name for the new list filter: Optional RTM filter to make this a smart list

Returns: Created list details with transaction ID

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
filterNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. It mentions creation and return of details but does not disclose permissions, side effects, or constraints like maximum list count.

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?

Description is very concise with a clear Args and Returns format. Every sentence is necessary and no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and low schema coverage, the description is too sparse. It lacks context about errors, permissions, or integration with other features like smart lists.

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 coverage is 0%, so description must compensate. It explains 'name' as the list name and 'filter' as making it a smart list. This adds value but is minimal; more details on format or constraints would help.

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?

The description clearly states 'Create a new list,' which is a specific verb and resource. It distinguishes from siblings like add_note and add_task, but not from other list tools like rename_list. Still, it is unambiguous.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., add_task, rename_list). The description does not mention prerequisites or context.

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

add_noteA

Add a note to a task.

Args: note_text: The note content note_title: Optional title for the note task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Created note details with transaction ID

ParametersJSON Schema
NameRequiredDescriptionDefault
note_textYes
note_titleNo
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided. Description states 'Add a note to a task' and mentions return details, but does not disclose any behavioral traits such as mutation effects, auth requirements, or side effects.

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?

Description is fairly concise, with a clear structure: action statement, parameter list, return section. Could be more front-loaded but overall efficient.

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 6 parameters and an output schema, the description explains each parameter's role and the return value, making it sufficiently complete for an agent to use.

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 description coverage is 0%, but the description lists each parameter with a brief purpose (e.g., 'note_text: The note content', 'note_title: Optional title'), adding meaning beyond the schema.

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?

Description clearly states 'Add a note to a task', a specific verb+resource. This distinguishes it from siblings like edit_note, delete_note, and get_task_notes.

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?

No explicit when-to-use or alternatives, but the context of sibling tools (edit_note, delete_note) implies this is for creation. Implied usage only.

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

add_taskA

Add a new task.

Supports Smart Add syntax when parse=True: - ^date for due date (^tomorrow, ^next friday) - !priority (!1, !2, !3) - #tag for tags (#work, #urgent) - @location - =time estimate (=30min, =1h) - *repeat pattern (*daily, *weekly)

Args: name: Task name (with optional Smart Add syntax) list_name: List to add to (uses default list if not specified) parse: Parse Smart Add syntax (default: True)

Returns: Created task details with transaction ID for undo

Examples: - add_task("Buy groceries") - add_task("Call mom ^tomorrow !1 #family") - add_task("Weekly review *weekly ^monday", list_name="Work")

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
list_nameNo
parseNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden. It discloses creation behavior, Smart Add parsing, and return of transaction ID for undo. However, it omits potential side effects like non-idempotency or auth requirements.

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 summary, syntax table, args, returns, and examples. Every sentence serves a purpose without redundancy.

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 complexity (Smart Add, 3 params, output schema), the description covers essentials but misses prerequisites (e.g., authentication) and error scenarios. Output schema exists, so return details are not required here.

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?

Schema coverage is 0%, but the description compensates fully by explaining each parameter (name, list_name, parse) with syntax details and examples, adding significant meaning beyond the bare schema.

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 'Add a new task' and details Smart Add syntax, distinguishing it from sibling tools like add_note, add_list, etc. The examples further reinforce the purpose.

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 description implies use for adding tasks, but lacks explicit guidance on when to use this tool versus alternatives like add_task_tags or set_task_due_date. No 'when not to use' or conditional context provided.

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

add_task_tagsB

Add tags to a task.

Args: tags: Comma-separated tags to add (e.g., "work,urgent") task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose whether tags are appended or replaced, nor does it mention any authorization or side effects beyond 'returns updated task details.'

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with an Args section and a Returns note, but it is somewhat verbose and could be more concise without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains how to identify the task via multiple parameters and states the return value. However, it lacks critical detail on whether adding tags replaces or appends to existing tags, which is a gap for a mutation tool.

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?

Although schema description coverage is 0%, the description adds meaning by explaining that 'tags' are comma-separated and providing an example, and clarifying that the other parameters serve as search criteria for the task.

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 'Add tags to a task.' using a specific verb and resource, distinguishing it from sibling tools like 'remove_task_tags' and other task-related operations.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives like 'remove_task_tags'. The description only lists parameters without contextual usage advice.

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

archive_listC

Archive a list.

Args: list_name: Name of the list to archive

Returns: Updated list details

ParametersJSON Schema
NameRequiredDescriptionDefault
list_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, so the description must cover behavioral traits. It fails to disclose what archiving entails (e.g., visibility changes, reversibility) or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and uses a structured Args/Returns format, but it is too terse and omits important context, sacrificing substance for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with an output schema (not shown), the description covers the basic action and return value. However, it lacks behavioral context and usage guidance.

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

Parameters2/5

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

Schema description coverage is 0%, but the description only repeats the parameter name ('list_name') with minimal clarification. No additional details like format or validation.

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 uses a specific verb ('Archive') and resource ('list'), clearly indicating the action and target. It distinguishes from siblings like 'delete_list' and 'unarchive_list'.

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

Usage Guidelines2/5

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

No guidance on when to use vs alternatives such as 'delete_list' or 'unarchive_list'. No context about prerequisites or effects.

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

check_authA

Check if authentication token is valid.

Returns: Auth status and user info

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, but the description clearly indicates a read-only operation that returns auth status and user info. It does not disclose potential side effects or authentication requirements for the token, but for a 0-parameter tool, the behavior is sufficiently 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?

Two short sentences with no redundant information, perfectly concise and front-loaded.

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 zero parameters and a simple output, the description adequately covers the purpose and return values. The presence of an output schema further reduces the need for description detail.

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?

There are no parameters, so the baseline score is 4. The description does not require parameter explanation, and the schema coverage is 100%.

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 checks if an authentication token is valid, specifying a specific verb and resource. It distinguishes from siblings as no other tool performs auth operations.

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 description does not provide explicit guidance on when to use this tool versus alternatives or context for using it before other operations. For a simple status check, the need is implicit but not articulated.

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

complete_taskB

Mark a task as complete.

Provide either task_name (for search) or all three IDs.

Args: task_name: Task name to search for (fuzzy match) task_id: Specific task ID taskseries_id: Task series ID (required with task_id) list_id: List ID (required with task_id)

Returns: Completed task details with transaction ID for undo

ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/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 only mentions the return value includes a transaction ID for undo, implying reversibility. However, it does not disclose what happens if the task is already completed, if the task doesn't exist, or any side effects of the mutation. The word 'Mark' understates the destructive nature of the operation.

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 concise, using a single sentence for purpose and bullet-point-like lines for parameters and return. It front-loads the main verb. Every sentence adds information, with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters, no annotations, but an output schema, the description explains parameter grouping and return value with undo info. However, it lacks any mention of error conditions, prerequisites (e.g., list must exist), or what the output schema contains beyond a transaction ID.

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?

With 0% schema description coverage, the description adds value by explaining the two parameter options and that task_name uses fuzzy match. It clarifies the relationship between task_id, taskseries_id, and list_id. However, it does not provide format constraints or expected values beyond the schema types.

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?

The description clearly states the verb 'Mark a task as complete' and the resource 'task'. It effectively distinguishes from the sibling tool 'uncomplete_task' by using the antonym 'complete'. However, with many task-related siblings, it doesn't explicitly disambiguate beyond the basic action.

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 description provides explicit instruction on parameter usage: 'Provide either task_name (for search) or all three IDs.' This helps the agent choose between the two input methods. However, it lacks guidance on when not to use the tool (e.g., if task already completed) or when to prefer alternatives like 'uncomplete_task'.

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

delete_listA

Delete a list.

Note: Lists with tasks cannot be deleted. Move or delete tasks first.

Args: list_name: Name of the list to delete

Returns: Deletion confirmation with transaction ID

ParametersJSON Schema
NameRequiredDescriptionDefault
list_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior3/5

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

No annotations provided. Description notes the task constraint and return type but does not explicitly state irreversibility or potential side effects. Adequate but could be more thorough.

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?

Very concise: two-sentence note followed by structured Args/Returns. No unnecessary words; front-loaded with core action and constraint.

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?

Covers essential context: action, single parameter, return structure, and prerequisite (empty list). Could mention ownership or scope, but sufficient given simplicity.

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?

Input schema has no property descriptions (0% coverage). The description's Args section adds meaning by explicitly stating the parameter's purpose ('Name of the list to delete'), compensating for the schema gap.

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?

Description clearly states the action 'Delete a list' with a specific resource. The note and args further clarify the scope.

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

Usage Guidelines5/5

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

Explicitly states when not to use (lists with tasks) and provides alternative actions ('Move or delete tasks first'). Distinguishes from siblings like archive_list.

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

delete_noteB

Delete a note from a task.

Args: note_id: ID of the note to delete task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Deletion confirmation with transaction ID

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It states the action (delete) and return value (confirmation), but omits important details such as whether deletion is irreversible, if there are cascading effects, permission requirements, or any side effects. Minimal disclosure for a destructive operation.

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 concise, using a single paragraph with labeled parameter lines. It avoids unnecessary words. Could be slightly more structured, but it is efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple delete operation, the description covers the purpose, parameters, and return value. However, it lacks context on error behavior, prerequisites (e.g., note must exist), and usage of optional parameters. An output schema is present but not detailed in the description. Adequate but not comprehensive.

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 0%, so the description must add meaning. It lists each parameter with a brief description (e.g., 'note_id: ID of the note to delete'), which provides basic semantics beyond just type. However, it does not explain valid combinations or relationships between optional parameters, so the added value is moderate but not rich.

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 explicitly states 'Delete a note from a task,' which is a specific verb+resource. This clearly distinguishes it from sibling tools like add_note, edit_note, and get_task_notes. No ambiguity.

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 description implies usage by stating the action, but there is no explicit guidance on when to use this tool versus alternatives (e.g., when to delete a note vs. delete a task). The context of sibling note tools makes it somewhat clear, but explicit when/when-not guidelines are missing.

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

delete_taskA

Delete a task.

Args: task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Deletion confirmation with transaction ID for undo

ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations provided. Description notes the return includes a transaction ID for undo, implying reversibility, but omits auth requirements or whether deletion is permanent/soft.

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?

Concise with clear Args and Returns sections. Could be slightly shorter by removing redundant 'task' prefixes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers return value and parameter descriptions well. However, lacks information about required parameter combinations (at least one identifier likely needed) and behavior on recurring tasks.

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?

All four parameters are explained with their roles (e.g., 'task_name: Task name to search for'), adding significant meaning beyond the schema's type definitions.

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?

The description clearly states it deletes a task, a specific verb and resource. It distinguishes from siblings like delete_list and delete_note, but could be more precise about task context.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like complete_task or archive_list. Missing prerequisites like task existence.

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

edit_noteB

Edit an existing note.

Args: note_id: ID of the note to edit note_text: New note content note_title: New title (optional) task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated note details

ParametersJSON Schema
NameRequiredDescriptionDefault
note_idYes
note_textYes
note_titleNo
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the behavioral burden. It states the tool edits a note and returns updated details, but it fails to disclose whether updates are incremental or full replacements, error handling for invalid note_id, or any side effects.

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 fairly concise with a structured parameter list and a returns clause, making it easy to scan. However, the parameter list is somewhat lengthy, and some descriptions could be tighter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, no annotations, no output schema), the description partially covers the essentials but omits usage context, error conditions, and behavioral details like what happens with optional parameters. It provides enough for basic understanding but not full completeness.

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 description adds brief explanations for parameters like 'ID of the note to edit' and 'New note content', which provides some meaning beyond the schema (0% coverage). However, some parameters (e.g., task_name, task_id) lack clear roles in editing a note, causing ambiguity.

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 'Edit an existing note', specifying the verb ('edit') and resource ('existing note'), which distinguishes it from sibling tools like add_note or delete_note.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives, nor does it mention prerequisites or scenarios to avoid. It only lists parameters without context.

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

get_contactsB

Get contacts for task sharing.

Returns: List of contacts

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden but only states 'Returns: List of contacts'. It does not disclose authentication needs, rate limits, or what constitutes a contact (e.g., user vs group).

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 extremely concise at two sentences. It wastes no words, but the second sentence is redundant with the title. Could include more behavioral context without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and an output schema exists, the description minimally explains the purpose. However, it lacks context about what contacts are and how they relate to task sharing, especially compared to siblings like get_groups.

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?

The input schema has zero parameters with 100% coverage, so the description adds no parameter details. Baseline for zero parameters is 4; however, it could hint at implicit filters (e.g., 'for task sharing' implies a specific subset).

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?

The description states 'Get contacts for task sharing', which clearly indicates the verb and resource. It distinguishes this tool from siblings, as no other contact-related tool exists on the server.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. There is no mention of context or exclusions, leaving the agent without decision support.

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

get_groupsA

Get contact groups.

Returns: List of groups with member counts

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, but the description implies a read-only retrieval. More detail could be given (e.g., mentions it returns member counts) but remains acceptable.

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 concise sentences, front-loaded with purpose, no unnecessary words.

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 parameters and an output schema present, the description sufficiently covers the tool's basic behavior and return value.

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?

No parameters exist; baseline score of 4 applies as schema coverage is 100% and description adds no extra param info.

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?

Description clearly states 'Get contact groups' with a specific verb and resource, distinguishing it from sibling tools like get_contacts or get_lists.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives; lacks explicit context or exclusions.

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

get_listsA

Get all RTM lists.

Args: include_archived: Include archived lists (default: false) include_smart: Include smart lists (default: true)

Returns: List of all lists with metadata

ParametersJSON Schema
NameRequiredDescriptionDefault
include_archivedNo
include_smartNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. Indicates a read operation but does not explicitly state safety or side effects. Adequate but minimal.

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?

Highly concise with clear structure: one-line purpose, args, and returns. Every part is essential.

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?

Covers scope (all lists), parameters, and return type. With output schema present, no further details needed.

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 0% but description explains both parameters with defaults and behavior, compensating for lack of schema documentation.

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?

Description clearly states 'Get all RTM lists' with specific verb and resource. Distinguishes from sibling tools like add_list, delete_list, etc.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as get_groups or list_tasks. Lacks context for selection.

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

get_locationsA

Get all saved locations.

Returns: List of locations

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior2/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 only states the return type ('List of locations') but lacks any behavioral details such as authentication requirements, pagination, or data recency. This is insufficient for a tool with no 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?

The description is extremely concise (two lines) and front-loaded with the action. Every word earns its place; no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no parameters, output schema present), the description is minimally adequate. However, it could benefit from a brief sentence on the nature of 'locations' (e.g., user-created or system-defined) to enhance completeness.

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?

There are zero parameters, so the baseline is 4. The description adds no parameter information, but none is needed as the schema covers everything (100% coverage).

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 action and resource: 'Get all saved locations.' This is specific and distinguishes it from sibling tools like get_contacts or get_lists, which return different entity types. There is no ambiguity.

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?

No explicit guidance on when to use this tool versus alternatives. However, the tool name and sibling context imply it is used specifically for retrieving locations, not other entities. A higher score would require explicit context or exclusions.

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

get_settingsB

Get user settings.

Returns: User preferences and settings

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided; description only states it 'Returns user preferences and settings'. It fails to disclose behavioral traits like authentication needs, side effects, or read-only nature.

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?

Extremely concise with one clear sentence and a return description. Every word is purposeful; no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description need not detail return values. However, it lacks any contextual completeness such as prerequisites or usage hints, making it adequate but minimal.

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?

No parameters exist, so schema coverage is 100%. The description adds no meaningful value beyond the schema, warranting the baseline score of 3.

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?

Description clearly states 'Get user settings', a specific verb+resource. It distinguishes from sibling get_* tools (e.g., get_contacts, get_lists) by targeting settings specifically.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description does not mention contexts, prerequisites, or exclusions.

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

get_tagsA

Get all tags in use.

Returns: List of tags with usage counts

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description covers behavioral aspects by stating it returns a list with usage counts. This implies a read-only operation, which is sufficient for a simple retrieval tool.

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 extremely concise with two clear sentences. The first sentence front-loads the purpose, and the second elaborates on the return value without waste.

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 simplicity (no parameters, explicit output), the description fully explains what it does and what it returns. It is complete for its purpose.

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?

The tool has no parameters, so baseline is 4. The description does not add parameter-level info, but it is not needed since schema coverage is 100% (empty schema).

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 retrieves all tags in use, which is a specific verb and resource. It distinguishes from sibling tools like add_task_tags and remove_task_tags, which modify tag associations.

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 description does not provide explicit guidance on when to use this tool versus alternatives. While its purpose is clear, it lacks context such as prerequisites or when not to use it.

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

get_task_notesB

Get all notes for a task.

Args: task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: List of notes for the task

ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It mentions it is a read operation but does not disclose any behavioral traits such as side effects, prerequisites, rate limits, or whether the operation is idempotent.

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 concise with a docstring structure including Args and Returns. It is front-loaded with the purpose. However, it could be slightly more efficient by removing the redundant 'Args' line.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the presence of an output schema, the description lacks critical usage context. It does not explain how the four optional parameters work together, whether one is sufficient, or typical use cases. For a retrieval tool with multiple optional identifiers, this is incomplete.

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?

With 0% schema coverage, the description adds basic meaning by labeling each parameter (e.g., 'Task name to search for'). However, it does not clarify how parameters relate or whether any combination is required, leaving ambiguity.

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 'Get all notes for a task', which is a specific verb and resource. It distinguishes itself from sibling tools like add_note, delete_note, and edit_note by focusing on retrieval.

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 description implies usage for retrieving notes but does not provide explicit guidance on when to use each parameter or alternatives. There is no mention of orchestration with other note tools.

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

list_tasksA

List tasks with optional filtering.

Args: filter: RTM filter string (e.g., "dueBefore:tomorrow", "tag:work", "priority:1") list_name: Filter to a specific list name include_completed: Include completed tasks (default: false)

Returns: List of tasks with metadata

Examples: - list_tasks() → all incomplete tasks - list_tasks(filter="dueBefore:tomorrow") → tasks due soon - list_tasks(filter="tag:work AND priority:1") → high priority work tasks - list_tasks(list_name="Personal") → tasks in Personal list

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNo
list_nameNo
include_completedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.4/5.0
Behavior3/5

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

The description mentions returning 'List of tasks with metadata' and defaults for include_completed. With no annotations, it should disclose that this is a read-only operation and mention any limits or performance considerations, which it does not.

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 concise with clear sections (Args, Returns, Examples) and no wasted words. Each sentence serves a 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 has 3 optional parameters and an output schema, the description covers all necessary aspects. It is complete for the complexity level.

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?

Schema coverage is 0%, but the description fully explains each parameter with syntax examples (e.g., filter, list_name, include_completed). This provides more value than the bare schema.

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 'List tasks with optional filtering' and provides examples that illustrate the scope. It distinguishes itself from sibling tools like add_task or get_task_notes by focusing on listing and filtering tasks.

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 examples and parameter descriptions that implicitly guide usage, such as showing different filter patterns. However, it lacks explicit when-to-use or when-not-to-use guidance relative to other tools.

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

move_taskC

Move a task to a different list.

Args: to_list_name: Destination list name task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: Current list ID (from_list_id)

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
to_list_nameYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits, but it only states 'move' and returns 'Updated task details'. It does not clarify whether the task is removed from the original list, required permissions, or side effects like reordering. Significant behavioral context is missing.

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 concise with one sentence for purpose and a parameter list. It is front-loaded and avoids redundancy. However, it could be improved by adding short explanations for parameters without significant bloat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (5 parameters, mutation, no annotations, and an output schema not explained), the description is insufficient. It lacks detail on identifier selection logic, error handling, and output structure, requiring the agent to guess.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must add meaning. It merely lists parameter names without explaining relationships (e.g., task_name vs task_id vs taskseries_id) or constraints. Only list_id gets a brief hint ('Current list ID (from_list_id)'). This adds little value beyond the schema.

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 action 'Move a task to a different list', with a specific verb and resource. This distinguishes it from sibling tools like complete_task or delete_task, which have different purposes.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives (e.g., other task-moving scenarios). There is no mention of prerequisites, conditions, or explicit exclusions, leaving the agent to infer usage from context.

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

parse_timeA

Parse a natural language time string.

Args: text: Time to parse (e.g., "tomorrow", "next friday", "in 2 hours") timezone: Optional timezone (e.g., "America/New_York")

Returns: Parsed time in various formats

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
timezoneNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses that it parses natural language time strings and returns various formats, but does not detail side effects, rate limits, or specific output formats beyond vague 'various formats.'

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 concise with no extraneous words. It uses a structured Args/Returns format that is easy to scan, making it efficient for an AI agent.

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 simplicity (2 parameters, no nested objects) and the existence of an output schema, the description covers the essential functionality. It could mention edge cases or failure modes, but it is mostly complete.

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 0%, so the description compensates by explaining the 'text' parameter with examples like 'tomorrow' and the 'timezone' parameter with an example timezone. This adds significant meaning beyond the bare schema types.

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 purpose: parsing natural language time strings. It uses a specific verb ('Parse') and resource ('time string'), and it distinguishes well from sibling tools like task operations.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives. It does not mention any prerequisites, when not to use it, or related tools that might be more appropriate.

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

postpone_taskA

Postpone a task (moves due date by one day).

Args: task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details with new due date

ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

Describes the core behavior (moves due date by one day) and that it returns updated task details. However, no mention of edge cases like tasks without a due date, recurring tasks, or side effects. Without annotations, more detail would be helpful.

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 concise with a clear one-line purpose, followed by Args and Returns sections. No unnecessary words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 optional parameters and no schema descriptions, the description provides basic parameter explanations and return info. Missing context on behavior when multiple parameters are set, error handling, or default assumptions.

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 coverage is 0%, so description carries the burden. The Args section provides brief descriptions for each parameter (e.g., 'Task name to search for'), adding meaning over the schema names. But does not explain interaction or which parameter takes precedence when multiple are provided.

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 action ('postpone a task') and the effect ('moves due date by one day'). It distinguishes from siblings like set_task_due_date which sets a specific date, and move_task which changes list.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as set_task_due_date for postponing by more than one day. No context about prerequisites or exclusions.

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

remove_task_tagsA

Remove tags from a task.

Args: tags: Comma-separated tags to remove task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description bears full responsibility. It does not disclose behavioral traits such as whether removal is permanent, effects on recurring tasks, or error handling for non-existent tags.

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 concise, front-loaded with the action, and includes parameter and return value details in a well-structured format. Every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool, the description covers the core operation and parameters. However, missing behavioral details limit completeness, despite the presence of an output schema.

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?

With zero schema description coverage, the description compensates by explaining parameter purposes: tags (comma-separated), task_name, task_id, taskseries_id, list_id. This adds meaningful context beyond the input schema.

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 'Remove tags from a task', using a specific verb and resource. This distinguishes it from sibling tools like 'add_task_tags'.

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 description provides no guidance on when to use this tool versus alternatives or any prerequisites. While the purpose is clear, there is no explicit context for usage.

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

rename_listA

Rename a list.

Args: list_name: Current name of the list new_name: New name for the list

Returns: Updated list details

ParametersJSON Schema
NameRequiredDescriptionDefault
list_nameYes
new_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior2/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 only states the basic operation without disclosing side effects, idempotency, or error conditions. The return is mentioned but likely covered by output schema.

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?

Extremely concise: a single declarative sentence for purpose, followed by a clear arg/return block. No extraneous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple rename operation, with output schema covering returns. However, it omits important context like whether the list must exist, or behavior when the new name is a duplicate.

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 description coverage is 0%, but the description adds semantic context for both parameters: 'Current name of the list' and 'New name for the list', clarifying their roles beyond the bare type 'string'.

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 'Rename a list.' uses a specific verb and resource, clearly distinguishing it from sibling tools like add_list, archive_list, or delete_list.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool vs alternatives, no prerequisites, and no conditions under which renaming is appropriate.

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

set_default_listB

Set the default list for new tasks.

Args: list_name: Name of the list to set as default

Returns: Confirmation message

ParametersJSON Schema
NameRequiredDescriptionDefault
list_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description must disclose behavioral traits. It only mentions the action and return type (confirmation). No information about side effects, permissions required, or error cases (e.g., list not existing). The agent lacks critical behavioral context.

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 extremely concise: two sentences plus args/returns. The purpose is front-loaded. Every part is necessary and no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and an output schema, the description is adequate but not complete. It does not address scenarios like invalid list names or whether the setting is per-user, which could be inferred from context but not explicitly stated.

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 schema has 0% description coverage, so the tool description must explain parameters. It states 'list_name: Name of the list to set as default', which adds meaning beyond the type but is minimal. No constraints like case-sensitivity or existence are mentioned.

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 sets the default list for new tasks, using a specific verb and resource. It distinguishes from sibling tools like add_list (create), rename_list, or archive_list.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. With many sibling list operations, the description should indicate context, such as 'Use this to define which list new tasks are added to by default' and contrast with other list management tools.

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

set_task_due_dateB

Set or change task due date.

Args: due: Due date (natural language: "tomorrow", "next friday", "2024-12-25") Use empty string to clear due date. task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
dueYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations provided, the description must carry the full disclosure burden. It only describes basic functionality and return value but fails to mention authentication needs, side effects, or permissions required. The description is insufficient for a mutation tool.

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 relatively concise and uses a structured Args/Returns format. The primary purpose is front-loaded. Minor redundancy exists in listing all params, but overall it efficiently conveys information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters and an output schema, the description lacks guidance on how to identify the task (e.g., which combination of task_name, task_id, etc. is required). While the return type is covered by the output schema, the tool's operation dependencies are incomplete.

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 has 0% description coverage, so the description must compensate. It adds meaningful examples and clear-empty behavior for 'due', but other parameters (task_name, task_id, etc.) are merely listed without additional context or purpose explanation, leaving gaps.

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 purpose: 'Set or change task due date.' It specifies the action (set/change) and the resource (task due date). This uniquely identifies its function among siblings like set_task_name, set_task_start_date, etc.

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 description provides examples for the 'due' parameter (natural language dates, empty string to clear) but does not explicitly state when to use this tool versus alternatives, nor when not to use it. Usage is implied but lacks explicit context for selection.

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

set_task_estimateA

Set task time estimate.

Args: estimate: Time estimate (e.g., "30 minutes", "1 hour", "2 hours 30 minutes"). Empty to clear. task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
estimateYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, and the description only states the basic action and that an empty value clears the estimate. It does not disclose side effects, overwrite behavior, or permissions needed.

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 structured with Args and Returns sections and is relatively concise, though the first line repeats the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 5 parameters and multiple identification methods, the description is adequate but lacks clarity on parameter priority, error handling, and the full return structure (output schema not shown).

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?

With 0% schema description coverage, the description adds meaningful parameter explanations, including the format of the estimate and the purpose of each identification parameter, going beyond the schema.

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 verb 'Set' and the resource 'task time estimate', distinguishing it from sibling tools like set_task_due_date or set_task_priority.

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 description lists parameters but provides no explicit guidance on when to use this tool instead of alternatives, or how to choose among the multiple identification parameters.

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

set_task_nameB

Rename a task.

Args: new_name: New name for the task task_name: Current task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
new_nameYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/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 only states it renames a task and returns updated details, but omits critical traits such as permission requirements, error handling (e.g., what happens if the task is not found or name is duplicate), or side effects (e.g., does it update a history log?). The lack of behavioral context leaves the agent guessing.

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 short (two sentences plus an Args/Returns block) and front-loaded with the core action. The structured format is easy to parse. However, the Args section largely repeats parameter names without adding value, and the Returns section is minimal. Still, it is appropriately sized and wastes no space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the input schema (5 parameters, optional nulls, no descriptions) and the number of sibling tools, the description lacks essential context: how to correctly select and combine identifier parameters, what the return structure looks like, and how this action interacts with the system (e.g., permissions, side effects). The description is too sparse to fully guide invocation.

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

Parameters2/5

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

The schema has 0% coverage, so the description must explain parameter semantics. It lists parameters like new_name, task_name, task_id, etc., but does not clarify their roles: e.g., how to identify the task (one of task_name, task_id, taskseries_id, or list_id?), or what happens if multiple are provided. The meaning is only barely deducible from parameter names, which is insufficient for correct invocation.

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 starts with 'Rename a task,' which clearly states the verb (rename) and the resource (task). This distinguishes it from sibling tools like set_task_due_date or set_task_priority, which modify other attributes. The purpose is specific and unambiguous.

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 description implies usage through the tool name and description, but provides no explicit guidance on when to use this tool versus alternatives, nor does it mention when not to use it. It also lacks explanation of the conditions under which renaming is appropriate (e.g., task must exist). The usage is implied but not clarified.

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

set_task_priorityC

Set task priority.

Args: priority: Priority level (1/high, 2/medium, 3/low, 0/N/none) task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
priorityYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so the description must fully disclose behavior. It indicates mutation ('set') but omits details on required permissions, side effects (e.g., overwriting existing priority), or idempotency.

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 extremely concise with a clear one-line purpose followed by an arg list. No unnecessary words, every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and a mutation tool, the description lacks completeness. It does not cover prerequisites (e.g., task must exist), auth context, or what happens on duplicate priority setting. The output schema exists but doesn't substitute for behavioral context.

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?

With 0% schema description coverage, the description adds some value by listing accepted priority values (1/high, etc.) but fails to explain when to use task_name vs task_id vs taskseries_id, leaving ambiguity among the 5 parameters.

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?

The description clearly states the verb 'set' and resource 'task priority', making the action unambiguous. However, it does not differentiate from sibling tools like set_task_due_date or set_task_name, missing an opportunity to clarify scope.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like set_task_name or complete_task. The description only states what it does, not when or why to use it.

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

set_task_recurrenceB

Set task recurrence pattern.

Args: repeat: Recurrence pattern (e.g., "every week", "every 2 days", "every monday", "after 1 week"). Empty string to clear. task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
repeatYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, and the description does not disclose side effects, such as overriding existing recurrence, or authorization needs. It implies mutation but lacks behavioral details.

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 with a clear Args/Returns structure. It conveys essential information without unnecessary verbosity, though could be tightened slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters and no annotations, the description covers the basic purpose and parameter meanings but lacks explanation of error conditions, behavior on existing recurrence, or output schema details. Output schema exists but is not referenced.

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?

Despite 0% schema coverage, the description adds meaning for the repeat parameter with examples and notes that an empty string clears recurrence. However, the relationship between optional identification parameters is unclear.

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 'Set task recurrence pattern' with a specific verb and resource. It provides examples of recurrence patterns, differentiating it from sibling tools like set_task_due_date or postpone_task.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, or prerequisites. The description does not mention when to use set_task_recurrence vs other task modification tools.

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

set_task_start_dateC

Set task start date.

Args: start: Start date (natural language). Empty to clear. task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
startYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so the description bears full burden. It only mentions that start date can use natural language and be cleared, but lacks details on side effects, permissions, or error conditions.

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 short and to the point, with an organized Args list. It could be improved by integrating the list into a sentence structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite multiple optional task identifiers, the description does not clarify how they interact or whether one is preferred. The return type is mentioned but output schema likely already covers it.

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 0%, so the description partially compensates by explaining 'start' as natural language and clearing behavior. Other parameters are merely named, adding no semantics beyond the schema.

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?

The description clearly states the tool sets a task's start date, which distinguishes it from siblings like set_task_due_date. However, it does not explicitly differentiate itself from closely related tools.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as set_task_due_date. The multiple task identification parameters are listed without preference or conditions.

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

set_task_urlC

Set task URL.

Args: url: URL to attach to task. Empty to clear. task_name: Task name to search for task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Updated task details

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It mentions that an empty URL clears the field, but omits side effects, permissions, or idempotency. For a mutation tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured as a parameter list but repeats phrases like 'to search for'. It is not overly wordy but could be more tightly written. Adequate but not concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters, no annotations, and a mutation operation with an output schema, the description does not fully explain how to uniquely identify a task or the return value format. Missing critical usage context.

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?

Given 0% schema description coverage, the description briefly explains each parameter: 'url: URL to attach to task. Empty to clear.' and others. This adds some meaning, but lacks detail on search behavior or tie-breaking. Baseline is 3.

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?

The description 'Set task URL' clearly states the action and resource. It distinguishes from siblings like set_task_name or set_task_due_date by focusing on URL. However, it does not explicitly differentiate from other set tools.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives or search tools. It lacks context on prerequisites or exclusive conditions.

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

test_connectionA

Test connection to RTM API.

Returns: Connection status and response time

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Discloses it returns connection status and response time, which is sufficient for a simple test tool. No annotations provided, but the description is clear about its non-destructive nature.

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?

Extremely concise: one line for purpose and one line for return value. No unnecessary words.

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 simplicity (no parameters, clear purpose, output schema exists), the description fully covers what an agent needs to know.

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?

No parameters exist, so the description does not need to add parameter semantics. Schema coverage is 100%, and no parameter info is required.

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?

Description clearly states the action ('Test connection') and the target ('RTM API'), distinguishing it from sibling tools that perform CRUD operations on tasks, lists, etc.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives; for example, it does not suggest using it before other API calls to verify connectivity.

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

unarchive_listB

Unarchive a list.

Args: list_name: Name of the list to unarchive

Returns: Updated list details

ParametersJSON Schema
NameRequiredDescriptionDefault
list_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided; the description only states the action and return value but lacks details on side effects, permissions, or error conditions typical for a mutation tool.

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?

Description is short and includes structured Args/Returns sections, but the Args section is redundant. Still, it is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and output schema, the description is adequate but lacks details on error handling or relationship to archive_list.

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

Parameters2/5

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

Schema description coverage is 0%; the description adds 'Name of the list to unarchive', which barely adds meaning beyond the parameter name itself.

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 verb 'Unarchive' and the resource 'a list', which is distinct from sibling tools like 'archive_list'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., archive_list) or prerequisites (e.g., list must be archived first).

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

uncomplete_taskC

Reopen a completed task.

Args: task_name: Task name to search for (searches completed tasks) task_id: Specific task ID taskseries_id: Task series ID list_id: List ID

Returns: Reopened task details

ParametersJSON Schema
NameRequiredDescriptionDefault
task_nameNo
task_idNo
taskseries_idNo
list_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.6/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits, but it only provides a high-level action ('Reopen a completed task'). It lacks critical details such as side effects (e.g., does it change status, recalendar?), error conditions, or what happens if the task is already open.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is relatively concise with a clear first sentence and a structured Args/Returns list. However, the list is somewhat verbose (e.g., repeating 'task_name', 'task_id'), and the return type could be integrated more smoothly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has four optional parameters and no required ones, the description should explain how to correctly identify the task (e.g., uniqueness constraints). The output schema exists but is not described in detail (only 'Reopened task details'), leaving ambiguity about the response format.

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

Parameters2/5

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

Schema coverage is 0%, so the description must compensate. It lists four parameters with brief explanations (e.g., 'Task name to search for (searches completed tasks)'), but does not clarify their relationships (e.g., how they combine or which is preferred). This adds minimal value beyond the raw schema.

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?

The description clearly states 'Reopen a completed task' using a specific verb and resource, making the tool's purpose immediately understandable. However, it does not explicitly differentiate from sibling tools like complete_task or undo, which could cause confusion.

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

Usage Guidelines2/5

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

No explicit usage guidance is given. The description does not mention when to use this tool versus alternatives (e.g., undo, complete_task), nor does it specify prerequisites such as the task must be completed before reopening.

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

undoB

Undo a previous operation.

Use the transaction_id returned from write operations.

Args: transaction_id: Transaction ID from previous operation

Returns: Undo confirmation

ParametersJSON Schema
NameRequiredDescriptionDefault
transaction_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description should disclose behavioral traits. It only states 'Undo a previous operation' without explaining limits, reversibility, or side effects.

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 concise and front-loaded with the purpose, but it could be slightly expanded to include behavioral details without losing efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and the presence of an output schema, the description is adequate but would benefit from clarifying the scope of undoable operations.

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 schema has 0% description coverage; the description adds meaning by stating the parameter is from a previous operation, but it does not specify format or constraints beyond the schema.

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?

The description clearly states the tool reverts a previous operation using a transaction_id, but it does not differentiate from sibling tools like 'complete_task' or 'delete_task' which might also have undo-like behavior.

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 description implies usage when a transaction_id from a write operation is available, but it lacks explicit guidance on when not to use the tool or mention of alternatives.

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

TDQS

A3.6/5.0
Disambiguation5/5

Each tool has a unique, clearly defined purpose. For example, add_task, complete_task, delete_task, and set_task_due_date are distinct operations without overlap. Even property setters like set_task_estimate and set_task_priority are unambiguous.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using lowercase with underscores (e.g., add_task, list_tasks, set_task_due_date). No mixing of conventions, making the surface predictable.

Tool Count4/5

36 tools is higher than typical, but each serves a specific function in a comprehensive task management tool. The count is justified by the feature depth, though it could be streamlined slightly.

Completeness5/5

Covers full lifecycle for tasks (add, list, complete, uncomplete, delete, move, all property sets), lists (CRUD + archive), notes (add, edit, delete), tags (add, remove), plus utilities (undo, parse_time, check_auth). No obvious gaps for the domain.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/ljadach/rtm-mcp'

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