Skip to main content
Glama

Google Workspace MCP Server

Your own MCP server for full Google Workspace access from Claude Desktop or Claude Code.

Gmail (send + read) · Drive · Calendar · Docs · Sheets · Slides · Forms · Tasks · Contacts

Built with FastMCP. Uses your own Google Cloud OAuth credentials. You own everything.


Setup

1. Google Cloud Console (you do this in your browser)

  1. Go to https://console.cloud.google.com → Create a new project

  2. Enable these APIs (APIs & Services → Library):

    • Gmail, Calendar, Drive, Docs, Sheets, Slides, Forms, Tasks, People, Google Meet

  3. Set up OAuth consent screen (APIs & Services → OAuth consent screen):

    • Choose External, add your email as test user

    • Add all workspace scopes

  4. Create OAuth credentials (APIs & Services → Credentials → Create → OAuth Client ID → Desktop Application)

  5. Copy the Client ID and Client Secret

2. Install & Run

# Set your credentials
export GOOGLE_OAUTH_CLIENT_ID="your-client-id-here"
export GOOGLE_OAUTH_CLIENT_SECRET="your-client-secret-here"

# Run with uv (no install needed)
cd google-workspace-mcp
uv run server.py

3. Connect to Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "google_workspace": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/google-workspace-mcp", "server.py"],
      "env": {
        "GOOGLE_OAUTH_CLIENT_ID": "your-client-id",
        "GOOGLE_OAUTH_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

4. Connect to Claude Code

claude mcp add google_workspace -- uv run --directory /path/to/google-workspace-mcp server.py

5. First authentication

First time you use any tool, a browser window opens for Google OAuth. Sign in, approve the permissions, done. Token is saved to ~/.gw-mcp/token.json and auto-refreshes.


Related MCP server: mcp-google-workspace

Tools (108 total)

Gmail (18)

  • gmail_search — search with Gmail query syntax

  • gmail_read_message — read full message content

  • gmail_read_thread — read all messages in a thread

  • gmail_sendsend emails (plain text or HTML, CC/BCC, threading)

  • gmail_draft — create drafts

  • gmail_send_draft — send an existing draft

  • gmail_list_labels — list all labels

  • gmail_create_label — create new labels

  • gmail_delete_label — delete labels

  • gmail_modify_labels — archive, mark read/unread, star, etc

  • gmail_get_attachment — download attachments

  • gmail_trash — move to trash

  • gmail_untrash — restore from trash

  • gmail_list_filters — list email filters

  • gmail_create_filter — create filter rules

  • gmail_delete_filter — delete filters

  • gmail_get_vacation — get vacation responder settings

  • gmail_set_vacation — set vacation responder

Calendar (8)

  • calendar_list_calendars — list all calendars

  • calendar_get_events — get events with time range and search

  • calendar_create_event — create events with attendees + Google Meet links

  • calendar_update_event — update existing events

  • calendar_delete_event — delete events

  • calendar_freebusy — query free/busy availability

  • calendar_list_recurring_instances — list instances of recurring events

  • calendar_quick_add — create event from text string

Meet (7)

  • meet_create_space — create a meeting space

  • meet_get_space — get meeting space by name

  • meet_list_participants — list participants

  • meet_get_artifacts — get recordings, transcripts, and transcript entries

  • meet_end_conference — end an active conference

  • meet_list_conference_records — list past meetings

  • meet_list_participant_sessions — list participant sessions

Drive (15)

  • drive_search — search files

  • drive_read_file — read file content (Docs, Sheets, text files)

  • drive_create_file — create files (plain text or Google Docs)

  • drive_list_folder — list folder contents

  • drive_share_file — share files with users

  • drive_create_folder — create folders

  • drive_copy_file — copy files

  • drive_export — export to format (PDF, CSV, etc)

  • drive_add_comment — add comments to files

  • drive_list_comments — list file comments

  • drive_list_revisions — list file version history

  • drive_list_permissions — list file permissions

  • drive_delete_permission — revoke file access

  • drive_trash — move to trash

  • drive_untrash — restore from trash

Docs (9)

  • docs_create — create new docs

  • docs_read — read doc content

  • docs_insert_text — insert text at position

  • docs_find_replace — find and replace

  • docs_append_text — append to end

  • docs_insert_table — insert tables

  • docs_insert_image — insert images

  • docs_format_text — format text (bold, italic, color, font)

  • docs_insert_bullets — insert bullet lists

  • docs_insert_page_break — insert page breaks

Sheets (12)

  • sheets_read — read cell ranges

  • sheets_write — write values

  • sheets_append — append rows

  • sheets_create — create spreadsheets

  • sheets_clear — clear ranges

  • sheets_get_info — get spreadsheet metadata

  • sheets_batch_update — batch update cells

  • sheets_add_sheet — add new sheet/tab

  • sheets_delete_sheet — delete sheet/tab

  • sheets_merge_cells — merge cells

  • sheets_add_chart — add charts

  • sheets_add_conditional_format — add conditional formatting

  • sheets_add_named_range — add named ranges

Tasks (8)

  • tasks_list_tasklists — list task lists

  • tasks_list — list tasks

  • tasks_create — create tasks (with subtask support)

  • tasks_update — update tasks

  • tasks_delete — delete tasks

  • tasks_create_tasklist — create task lists

  • tasks_move — move/reorder tasks

  • tasks_clear_completed — clear completed tasks

Contacts (11)

  • contacts_search — search by name/email/phone

  • contacts_list — list all contacts

  • contacts_create — create contacts

  • contacts_update — update contacts

  • contacts_delete — delete contacts

  • contacts_list_groups — list contact groups

  • contacts_create_group — create contact group

  • contacts_modify_group_members — add/remove group members

  • contacts_batch_create — batch create contacts

  • contacts_batch_delete — batch delete contacts

  • contacts_get_photo — get contact photo

Slides (10)

  • slides_create — create presentations

  • slides_read — read slide content

  • slides_add_slide — add slides with layouts

  • slides_add_text — add text to slides

  • slides_insert_shape — insert shapes

  • slides_insert_image — insert images

  • slides_insert_table — insert tables

  • slides_insert_video — insert videos

  • slides_format_text — format text

  • slides_get_thumbnail — get slide thumbnail

Forms (8)

  • forms_create — create forms

  • forms_read — read form structure

  • forms_list_responses — list form responses

  • forms_add_question — add questions

  • forms_update_question — update questions

  • forms_delete_question — delete questions

  • forms_move_question — reorder questions

  • forms_update_settings — update form settings


Build It Yourself Prompt

Want to rebuild this from scratch using Claude? Paste this into Claude Code Desktop:

Build me a Python MCP server using FastMCP at ~/Desktop/google-workspace-mcp/. It should give me full access to Google Workspace with these tools:

Gmail (18): search, read message, read thread, send (with CC/BCC, HTML, threading for replies), create draft, send draft, list labels, create label, delete label, modify labels (archive, star, mark read/unread), get attachment, trash, untrash, list filters, create filter, delete filter, get vacation responder, set vacation responder

Calendar (8): list calendars, get events (with time range + search), create event (with attendees, timezone, Google Meet link generation), update event, delete event, query free/busy, list recurring event instances, quick add from text string

Meet (7): create meeting space, get meeting space, list participants, get artifacts (recordings + transcripts), end active conference, list conference records, list participant sessions

Drive (15): search files, read file content (export Google Docs/Sheets/Slides to text), create file (plain text or Google Doc), list folder, share file, create folder, copy file, export to format, add comment, list comments, list revisions, list permissions, delete permission, trash, untrash

Docs (9): create, read, insert text at position, find and replace, append text, insert table, insert image, format text (bold/italic/color/font), insert bullet list, insert page break

Sheets (12): read ranges, write values, append rows, create spreadsheet, clear ranges, get spreadsheet metadata, batch update cells, add sheet/tab, delete sheet/tab, merge cells, add chart, add conditional formatting, add named range

Tasks (8): list task lists, list tasks, create task (with subtask support), update task, delete task, create task list, move/reorder task, clear completed tasks

Contacts (11): search by name/email/phone, list all, create, update, delete, list contact groups, create group, modify group members, batch create, batch delete, get contact photo

Slides (10): create presentation, read slide content, add slide with layout, add text to slide, insert shape, insert image, insert table, insert video, format text, get slide thumbnail

Forms (8): create form, read form structure, list responses, add question, update question, delete question, move/reorder question, update form settings

Requirements:

  • Separate file per service (tools_gmail.py, tools_calendar.py, tools_meet.py, tools_drive.py, tools_docs.py, tools_sheets.py, tools_tasks.py, tools_contacts.py, tools_slides.py, tools_forms.py) plus auth.py and server.py

  • auth.py handles Google OAuth2: reads GOOGLE_OAUTH_CLIENT_ID and GOOGLE_OAUTH_CLIENT_SECRET from env vars, opens browser on first use, saves token to ~/.gw-mcp/token.json, auto-refreshes

  • Use google-api-python-client and google-auth-oauthlib

  • pyproject.toml with uv, entry point gw-mcp = "server:main"

  • .gitignore for .venv, pycache, .env, token.json, credentials.json

  • README with setup instructions for Google Cloud Console, running with uv, and adding to Claude Desktop + Claude Code configs

Available Tools

108 tools
calendar_create_eventB

Create a calendar event. Use RFC3339 datetimes for timed events or YYYY-MM-DD for all-day. Set add_google_meet=True to auto-generate a Google Meet link.

ParametersJSON Schema
NameRequiredDescriptionDefault
endYes
startYes
summaryYes
locationNo
timezoneNoAmerica/Toronto
attendeesNo
calendar_idNoprimary
descriptionNo
add_google_meetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

With no annotations, the description must carry the burden. It states the core behavior (creating an event) and adds that add_google_meet auto-generates a Meet link. However, it omits other behavioral aspects like permissions, invite side effects, or return value expectations.

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

Conciseness5/5

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

Two sentences, front-loaded with the action, and every sentence provides useful details. No fluff or 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?

For a 9-parameter tool with 3 required params and zero schema descriptions, this description is inadequate. It covers only datetime and Meet link behavior, leaving most parameters undocumented. The output schema exists, so returns needn't be described, but parameter coverage is too sparse.

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 compensate. It clarifies start/end formats (RFC3339 vs YYYY-MM-DD) and the add_google_meet flag, but leaves summary, location, timezone, attendees, calendar_id, and description unexplained. Only 2 of 9 parameters receive added meaning.

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 calendar event', which is a specific verb and resource. It distinguishes from update/delete but not from the similar sibling calendar_quick_add, which also creates events.

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 like calendar_quick_add or calendar_update_event. The description only gives parameter formatting instructions, not context for tool selection.

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

calendar_delete_eventC

Delete a calendar event.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYes
calendar_idNoprimary

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/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 states the action 'Delete a calendar event' but does not mention whether the deletion is permanent, whether it affects the entire series or only instances, or any side effects. This is a significant gap 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.

Conciseness3/5

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

The description is a single, concise sentence with no unnecessary words, which is structurally fine. However, it is so brief that it omits critical information, making it under-specified rather than effectively 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?

For a destructive tool with no annotations and an output schema, the description is incomplete. It does not explain the implications of deletion, such as irreversibility, effects on recurring events, or what the response contains. An agent would have insufficient information to use this tool safely and correctly.

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

Parameters1/5

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

The schema description coverage is 0%, meaning the schema provides no explanations for event_id or calendar_id. The tool description adds no parameter details, such as how to obtain an event ID or what calendar_id defaults to. The description fails to compensate for the lack of schema descriptions.

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 the specific verb 'Delete' and identifies the resource as 'a calendar event,' making the tool's function immediately clear. It also distinguishes itself from sibling tools like calendar_update_event and calendar_get_events by clearly targeting a delete operation.

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, no mention of exclusions or prerequisites, and no indication of scenarios where deletion might be inappropriate (e.g., recurring events or events shared with others). It simply states the action without any usage context.

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

calendar_freebusyB

Query free/busy info for calendars. Returns busy time blocks.

ParametersJSON Schema
NameRequiredDescriptionDefault
time_maxYes
time_minYes
timezoneNoAmerica/Toronto
calendarsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/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 the key behavior of returning busy time blocks and uses 'Query' to imply a read-only operation. However, it lacks additional context such as timezone handling, default calendar selection, or whether free blocks are also returned, leaving significant behavioral details unspecified.

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 very short and front-loaded with the main action. However, the second sentence ('Returns busy time blocks') partially restates the first, and the description could add useful details without becoming verbose. It is appropriately concise but slightly redundant.

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?

The tool has 4 parameters and an output schema, but the description provides minimal guidance on invocation. It lacks parameter syntax, how calendars are chosen when null, and details about return format. An agent would need to infer too much from the schema alone, making the description incomplete.

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

Parameters1/5

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

Schema description coverage is 0%, so the description needed to compensate. It does not explain time_min/time_max format, timezone defaults, or the semantics of the calendars array. Param names provide minimal insight, but timezone and calendars require elaboration that is absent.

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 operation ('Query') and the resource ('free/busy info for calendars'), and notes it returns busy time blocks. This distinguishes it from sibling calendar tools like calendar_get_events or calendar_create_event, making the purpose 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 use for checking calendar availability, but it does not explicitly specify when to prefer this over calendar_get_events or calendar_list_recurring_instances. No alternatives or exclusions are mentioned, so guidance is only implicit.

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

calendar_get_eventsA

Get calendar events. Filter by time range (RFC3339 format) and/or text search.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo
time_maxNo
time_minNo
calendar_idNoprimary
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden of disclosure. It communicates the filtering behavior and RFC3339 time format, but does not mention default calendar behavior, result limits, or interaction of filters. These are minor gaps for a read-only operation.

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 two concise sentences, front-loaded with the main purpose and then filter options. There is no unnecessary content or repetition.

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 covers the core retrieval and filter functionality but lacks important context about default calendar ID, max_results behavior, and how filters combine. An output schema exists, but the description could still be more complete for a tool with five parameters.

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 provides zero description coverage, so the description must compensate. It explains time range (RFC3339) and text search, which clarifies time_min, time_max, and query. However, calendar_id and max_results are left unexplained, leaving a partial 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?

The description clearly states the tool's function with the verb 'Get' and resource 'calendar events', and specifies filtering by time range and text search. This distinguishes it from siblings like calendar_create_event and calendar_list_calendars.

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 calendar events with optional filters, but it does not explicitly mention when to use this tool over similar read tools like calendar_freebusy or calendar_list_recurring_instances. No alternatives or exclusions are provided.

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

calendar_list_calendarsA

List all calendars the user has access to.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the burden. It conveys that the tool is a read-only operation and that only calendars the user has access to are included. However, it does not disclose potential behavioral details like output structure or pagination. The qualifier 'has access to' adds useful context, but more could be said about return format.

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 a single concise sentence that conveys the essential purpose without any fluff. Every word adds meaning, and the sentence structure is clear and front-loaded.

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

Completeness4/5

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

Given the tool's simplicity (no parameters, no nested objects) and the presence of an output schema, the description is largely sufficient. It clearly defines what the tool does and its scope. It doesn't mention alternatives, but that's a minor omission for a basic listing operation.

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 zero parameters, so per the rubric, the baseline is 4. The description adds no parameter information, but none is needed. The schema is empty and fully covered, so there is no 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?

The description precisely states the action ('List all calendars') and the scope ('the user has access to'). It is unambiguous and distinguishes itself from sibling tools like calendar_get_events, which focus on events rather than calendar metadata.

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: to retrieve a list of accessible calendars. However, it does not explicitly state when to use it over alternatives, nor does it mention any exclusions or prerequisites. For a simple listing tool, the implication is clear enough, but it lacks direct guidance.

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

calendar_list_recurring_instancesC

List instances of a recurring event.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYes
time_maxNo
time_minNo
calendar_idNoprimary
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/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 implies a read-only operation but offers no details about pagination, time range handling, or other behavioral traits. The description is too minimal to ensure the agent fully understands the tool's behavior.

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 a single, focused sentence: 'List instances of a recurring event.' Every word earns its place, with no unnecessary filler or repetition. This is an excellent example of concise, front-loaded writing.

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 having an output schema, the description is insufficient for a tool with five parameters and no annotation support. It does not explain what constitutes a 'recurring event instance,' how time_min/time_max filter results, or the role of calendar_id and max_results. The tool is simple, but the description leaves too much unsaid for confident 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% description coverage for parameters, and the tool description does not compensate by explaining any of the five parameters. Parameter names like event_id and time_max are somewhat self-explanatory, but the description adds no semantic value beyond the schema, leaving unclear how parameters interact or are formatted.

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 'List instances of a recurring event' uses a specific verb and resource, clearly conveying the tool's function. It does not explicitly differentiate from sibling tools like calendar_get_events, but the focus on 'recurring event instances' distinguishes it effectively.

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 such as calendar_get_events. It simply states what the tool does, leaving usage context entirely to the agent's inference.

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

calendar_quick_addB

Create an event from natural language (e.g. 'Lunch with John tomorrow at noon').

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
calendar_idNoprimary

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, placing the full burden on the description. It doesn't mention that events go to the 'primary' calendar by default, how parsing errors are handled, whether authentication is needed, or any other behavioral traits beyond the basic creation. The example is helpful but insufficient.

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 a single sentence with a concrete example. Every word earns its place, and the structure is front-loaded with the primary action and parameter behavior.

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 tool is relatively simple with only two parameters and an output schema that covers return values. However, the natural language parsing behavior is underspecified, and the lack of annotation/behavioral detail leaves gaps for an agent deciding whether to invoke this tool.

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?

With 0% schema description coverage, the description must compensate. It partially does for 'text' via the example, but the optional 'calendar_id' parameter is completely undocumented in both schema and description, leaving its semantics unclear.

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 creates a calendar event, and the 'natural language' phrase plus example distinguishes it from the structured calendar_create_event sibling. However, it doesn't explicitly name the alternative or contrast with it.

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 natural language aspect implies when to use this tool (quick, friendly input) but there is no explicit guidance about when to prefer calendar_create_event or any exclusions. The usage context is inferred rather than stated.

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

calendar_update_eventB

Update an existing calendar event. Only provided fields are changed.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNo
startNo
summaryNo
event_idYes
locationNo
timezoneNoAmerica/Toronto
calendar_idNoprimary
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/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 disclosure burden. It discloses that only provided fields are changed (a partial-update semantic), which is useful. But it omits other behavioral aspects like permissions, error conditions, or how clearing a field is handled, and gives no context on defaults like timezone or calendar_id.

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. Front-loaded with the core action, followed by a precise behavioral qualifier. No filler words.

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?

For a mutation tool with 8 parameters, no annotations, and no parameter description coverage, this description is under-specified. It doesn't address time formats, default calendar behavior, or how to unset fields, though the presence of an output schema reduces the need to document return values.

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

Parameters1/5

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

Input schema has 8 parameters with 0% description coverage. The description doesn't name or explain any specific parameter; 'provided fields' is a generic reference that doesn't clarify formats, defaults, or relationships. For example, start/end format and timezone semantics are undocumented.

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 the specific verb 'Update' with the resource 'calendar event' and scopes it to 'existing' events, clearly distinguishing this from calendar_create_event and calendar_delete_event. The phrase 'Only provided fields are changed' further defines its partial-update 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?

No explicit when/when-not or alternative tool names are given. However, the word 'existing' implies this is for modifying current events rather than creating new ones, and the partial-update note implies usage guidance. This is implied but not explicit.

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

contacts_batch_createB

Create multiple contacts at once. Each dict: {givenName, familyName, email, phone, organization, title}.

ParametersJSON Schema
NameRequiredDescriptionDefault
contactsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior1/5

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

With no annotations provided, the description bears full responsibility for disclosing behavior, yet it only restates the action "create" which is already evident from the name. It fails to mention side effects, error handling, atomicity, batch limits, or required permissions, providing no meaningful behavioral transparency.

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 one sentence that front-loads the action and immediately provides a compact inline schema for the input. It is free of unnecessary words and every element contributes useful 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?

The tool is relatively simple and the input structure is described, but operational context is missing, such as batch size limits, behavior on partial failures, and whether the operation is atomic. The presence of an output schema means return values need not be detailed, but other behavioral gaps remain, leaving the description minimally adequate.

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 provides no descriptions for the contacts array items (0% coverage), so the description adds value by listing expected fields: "{givenName, familyName, email, phone, organization, title}". However, it does not specify data types, required vs. optional status, or formats, offering only partial compensation 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?

The description clearly states the tool's function: "Create multiple contacts at once." It specifies the verb (Create), resource (contacts), and scope (multiple), effectively distinguishing it from the sibling tool contacts_create for single contact creation. The preview of the contact dict structure adds further clarity.

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 batch usage with the phrase "multiple contacts at once," but it does not explicitly contrast with contacts_create or state when not to use this tool. No alternatives are mentioned, so usage guidance relies on inference rather than explicit direction.

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

contacts_batch_deleteB

Delete multiple contacts at once.

ParametersJSON Schema
NameRequiredDescriptionDefault
resource_namesYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 burden of behavioral disclosure. It only states 'Delete' without mentioning permanence, irreversibility, auth requirements, partial-failure behavior, or response implications. For a destructive operation, this is a significant gap.

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 a single, front-loaded sentence with no wasted words. It is appropriately sized for such a simple tool, though it could include slightly more detail without harming conciseness.

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?

A destructive batch delete operation with no annotations and zero parameter documentation is under-specified. Even though the output schema exists and the parameter count is low, the description fails to provide essential context such as the shape of resource_names or safety notes, making the tool risky to invoke correctly.

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 description coverage is 0%, yet the description does not explain what 'resource_names' means (e.g., format like 'contacts/123' vs simple IDs). The parameter name provides a hint, but without additional detail, an agent may not know what values to pass.

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 'Delete multiple contacts at once' has a specific verb+resource and clearly distinguishes from the sibling tool 'contacts_delete' by emphasizing 'multiple' and 'at once.' It unambiguously states what the tool does.

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 when deleting multiple contacts, but it does not explicitly contrast with 'contacts_delete' or provide when-not-to-use guidance. The batch context is implied but not formalized.

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

contacts_createC

Create a new contact with name, email, phone, organization, and title.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNo
phoneNo
titleNo
given_nameYes
family_nameNo
organizationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/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 disclosing behavior, but it only restates the mutation intent. It does not mention required permissions, idempotency, behavior on duplicate contacts, or what the response contains, which is a significant gap for a create 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 a single, front-loaded sentence that directly states the action and lists fields. It is appropriately concise with no wasted words, though it could have used the space to clarify required fields or parameter specifics.

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 has 6 parameters, 0% schema description coverage, and no annotations, the description is insufficient. It omits family_name, does not clarify the required given_name, and provides no context on contact creation behavior, uniqueness, or relationship to batch operations, making it difficult for an agent to use correctly without external knowledge.

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 explain the parameters. It mentions 'name' (which is ambiguous between given_name and family_name), email, phone, organization, and title, but omits family_name entirely. 'Title' is also ambiguous (job title vs. honorific), and no formats or constraints are clarified.

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 action ('Create a new contact') and lists the key fields (name, email, phone, organization, title), making the purpose understandable. However, it does not differentiate from sibling tools like contacts_batch_create, which also creates contacts.

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 instead of alternatives such as contacts_batch_create, contacts_update, or contacts_search. There are no usage conditions, prerequisites, or exclusions mentioned, leaving the agent without context for tool selection.

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

contacts_create_groupB

Create a new contact group.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 must carry the full burden of behavioral disclosure. It only states the action without mentioning permissions, idempotency, duplicate handling, side effects, or any other behavioral traits that would help the agent anticipate the consequences of invoking the 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 a single, direct sentence with no unnecessary words. It is front-loaded with the verb and object, making it immediately readable. For a simple one-parameter creation tool, this conciseness is ideal.

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?

Although an output schema exists, the description lacks essential contextual information: no usage guidelines, no behavioral details, and no constraints or prerequisites. For a tool with zero annotations, the description is insufficient to give the agent a complete understanding of when and how to use it safely and correctly.

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 input schema has 0% description coverage for the 'name' parameter, and the description does not mention or explain the parameter at all. While the parameter name is relatively self-explanatory in the context of creating a group, the description adds no semantic meaning or usage hints beyond the schema field 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 uses a specific verb ('Create') and resource ('contact group'), clearly stating the tool's function. It distinguishes from sibling tools like contacts_create (likely for contacts) and contacts_list_groups, making the purpose 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?

The description provides no guidance on when to use this tool versus alternatives, lacks exclusions, and does not mention prerequisites or typical use cases. The usage is left entirely to inference from the tool name and description, which is minimal.

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

contacts_deleteB

Delete a contact by resource name.

ParametersJSON Schema
NameRequiredDescriptionDefault
resource_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 the full burden of behavioral disclosure. It only states the deletion action but does not mention that deletion is permanent, irreversible, or any side effects. The description adds no context beyond what the tool name already implies, leaving the agent without critical safety information.

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 a single sentence that is concise and front-loaded. It avoids unnecessary words and communicates the core purpose effectively. Every word earns its place.

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 with one parameter, the description is minimally adequate. The tool has an output schema which likely explains return values, so not describing them is acceptable. However, it lacks information about irreversibility and any permissions required, which is important for a mutation tool without annotations.

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, but the description's phrase 'by resource name' adds meaning to the single parameter, resource_name. This indicates that the parameter identifies the contact to delete. However, it does not clarify the format or how to obtain the resource name, leaving some 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 the action (delete) and the target resource (a contact), and specifies how the target is identified (by resource name). This distinguishes it from sibling tools like contacts_batch_delete, which operates on multiple contacts. The verb 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 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. While the name implies single contact deletion, it does not explicitly mention when to use contacts_batch_delete for multiple contacts or any other contextual cues. There is no mention of prerequisites or exclusions.

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

contacts_get_photoA

Get the photo URL for a contact.

ParametersJSON Schema
NameRequiredDescriptionDefault
resource_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly states that the tool returns a photo URL, but it does not mention edge cases such as missing photos, error conditions, or required permissions. This is minimally sufficient for a simple read operation but lacks depth.

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 a single, front-loaded sentence with no filler or redundancy. It communicates the tool's core purpose efficiently and is appropriately sized for a simple getter tool.

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 tool is simple, has one parameter, and an output schema exists to document return values. However, the description lacks input semantics and usage guidance, so an agent may not know how to construct resource_name. It is adequate for basic selection but not fully complete for reliable 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 input schema has zero description coverage for resource_name, and the tool description only says 'for a contact,' implying the parameter identifies a contact but not how the string should be formatted or where it comes from. Since schema coverage is 0%, the description should compensate but does not provide enough parameter-level detail.

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 ('Get') and resource ('photo URL for a contact'), making the tool's purpose immediately clear. It also distinguishes this tool from sibling contacts tools like contacts_search, contacts_list, and contacts_update, as it is the only one focused on photo 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 this tool should be used when you need a contact's photo URL, but it provides no explicit guidance on when to use it versus alternatives or how to obtain the required resource_name (e.g., via contacts_search or contacts_list). The usage context is only implied, not fully explained.

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

contacts_listC

List all contacts sorted by last name.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden. It states the behavior (listing all contacts, sorted by last name) but omits the effect of the max_results parameter, which can limit the number returned. This is a notable behavioral gap, as an agent might assume 'all' always means the complete list, not just up to 50.

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 a single, concise sentence that front-loads the key information. There is no wasted verbiage, and it is easily scannable.

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?

Although a simple tool, the description is incomplete because it omits the impact of max_results on the result set. The output schema likely covers return structure, but the parameter's limiting behavior is essential for correct invocation. Without it, the tool may return unexpected results.

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

Parameters1/5

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

The schema has one parameter (max_results) with 0% description coverage. The description does not even hint at this parameter or its purpose. Since schema coverage is zero, the description fails to compensate and leaves the parameter ambiguous.

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 ('List'), the resource ('contacts'), and the scope ('all contacts'), with a specific sort order ('by last name'). This distinguishes it from sibling tools like contacts_search, which presumably filters, and contacts_list_groups, which lists groups rather than contacts.

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 given about when to use this tool versus alternatives. There is no mention of 'use this when you need the full contact list' or 'for searching, use contacts_search.' The only implied usage is that it lists all contacts, but no explicit exclusions or alternatives are provided.

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

contacts_list_groupsB

List all contact groups (labels).

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states 'List all contact groups (labels)' and provides no details about pagination, the max_results parameter, whether the list is ordered, or any side effects. While 'list' implies a read operation, the description lacks substantive 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 a single, concise sentence that immediately conveys the core action and resource. There is no redundant information, and the structure is clear and efficient for a simple utility.

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?

While an output schema exists and the tool is relatively simple, the description omits critical contextual information such as how max_results behaves, whether all groups are returned, or how this relates to other group-management tools. This leaves gaps for an agent deciding on invocation and interpreting results.

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 includes a max_results parameter with a default of 50, but the description does not explain its meaning, acceptable values, or effect on results. Since schema description coverage is 0%, the description should compensate, but it does not mention any parameter details.

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 action ('List') and resource ('all contact groups'), and even clarifies that groups are also called 'labels'. It is distinct from sibling tools like contacts_list and contacts_search, which operate on individual contacts rather than groups.

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. There is no mention of related tools like contacts_create_group or contacts_modify_group_members, nor any context about typical use cases such as retrieving a group overview before assigning contacts.

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

contacts_modify_group_membersB

Add or remove contacts from a contact group.

ParametersJSON Schema
NameRequiredDescriptionDefault
add_contactsNo
remove_contactsNo
group_resource_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must carry the full burden of behavioral disclosure. It only says 'add or remove contacts' without explaining side effects, idempotency, permissions, or how existing members are affected. For a mutation tool, this is a significant gap.

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 a single concise sentence with no wasted words. It is front-loaded with the action and appropriately sized, even though it is sparse in content.

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 (3 parameters, mutation, no annotations), the description is too sparse. It doesn't explain operation semantics, input expectations, or edge cases, and it fails to compensate for the lack of schema descriptions. An output schema exists, but the description still leaves critical unknowns.

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 compensate. It only hints that contacts are added/removed and that a group is involved, but it doesn't explain parameter formats, mutual exclusivity, or requiredness. The parameter names are self-explanatory, but the description adds little beyond them.

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 function: 'Add or remove contacts from a contact group.' It uses specific verbs and a specific resource, and it distinguishes from sibling tools like contacts_create_group or contacts_update. The name and description are well-aligned.

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 gives no guidance on when to use this tool instead of alternatives. It lacks prerequisites, exclusions, or references to sibling tools like contacts_batch_create/delete. The usage context is entirely implied, not stated.

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

contacts_updateA

Update a contact. Resource name from contacts_search/contacts_list (e.g. 'people/c123').

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNo
phoneNo
titleNo
given_nameNo
family_nameNo
organizationNo
resource_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations, the description must explain behavioral traits. It only says 'Update a contact' without disclosing whether the update is partial or full replacement, whether omitted fields are preserved, or any permission requirements. Minimal behavioral disclosure.

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, no filler. The key information (resource name source) is placed early and efficiently. Structure is ideal for a tool description.

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 it is a mutation tool with no annotations and a 0% schema description coverage, the description is too thin. It lacks update semantics (e.g., partial vs. full), which is critical for safe use. The output schema exists but does not compensate for the missing behavioral context.

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 compensate. It only adds meaning for resource_name, explaining its provenance. The other six parameters (email, phone, etc.) rely solely on their titles and are not elaborated in the description.

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: 'Update a contact.' The verb 'update' distinguishes it from sibling tools like contacts_create and contacts_delete. It also specifies the resource source, which makes the purpose unmistakable.

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?

It explicitly instructs that the resource name must come from contacts_search or contacts_list, giving clear context on how to obtain the required identifier. It does not mention exclusions or alternatives, but the usage context is clear enough.

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

docs_append_textC

Append text to the end of a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/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 disclosing behavior, but it only states the action without explaining side effects, formatting behavior, or whether it modifies the document structure. There is no mention of how appended text integrates with existing content.

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 a single concise sentence with no filler words, making it easy to parse. It is appropriately sized for the tool's simplicity.

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?

For a mutation tool with no annotations and multiple similar siblings, the description is underspecified. It lacks usage differentiation and behavioral context, though the existing output schema may cover return values.

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

Parameters1/5

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

The schema description coverage is 0%, and the description does not elaborate on the parameters. It does not clarify document_id format or the expected text content, leaving the agent without additional semantic context beyond the parameter names.

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 action ('Append text') and target ('end of a Google Doc'), providing a specific verb and resource. However, it does not distinguish this from sibling tools like docs_append_paragraph or docs_insert_text, which perform similar 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?

The description provides no guidance on when to choose this tool over alternatives. It simply states the operation without any context, exclusions, or references to sibling tools.

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

docs_createA

Create a new Google Doc with optional initial text content.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
body_textNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 mentions core behavior (creates a doc, optional initial text) but does not disclose side effects like Drive storage, authentication needs, or that it returns a document ID. For a simple create operation, this is borderline adequate but not rich.

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 a single, concise sentence that is immediately front-loaded with the key verb and resource. Every word adds value, with no unnecessary filler or redundant detail.

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

Completeness4/5

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

For a simple 2-parameter creation tool with an output schema, the description covers the essential action and optional parameter. It does not mention that the doc is created in Drive or any prerequisites, but given the tool's simplicity, this is reasonably complete.

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 compensate. It clarifies that body_text is optional and serves as initial content, but it does not explicitly explain the title parameter (though that is self-evident from the schema property name). It adds some value but not comprehensive parameter 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?

The description clearly states the action ('Create'), the resource ('a new Google Doc'), and an optional scope ('with optional initial text content'). This distinguishes it from siblings like docs_append_text or drive_create_file, which modify or create other file types.

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 creating a new Google Doc, but provides no explicit guidance on when to prefer this over related tools, no exclusions, and no alternative tool mentions. The context from sibling names helps, but the description itself lacks direct usage clarity.

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

docs_find_replaceB

Find and replace text in a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
find_textYes
match_caseNo
document_idYes
replace_textYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 needs to explain the tool's behavior but only states the basic action. It does not disclose whether all occurrences are replaced, case sensitivity handling, direct modification of the document, or any side effects, which is a significant gap 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.

Conciseness5/5

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

The description is a single, concise sentence with no filler. It is front-loaded with the core action and effectively sized for a reading agent.

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?

For a tool with 4 parameters, no annotations, and a basic description, the operation is under-specified. It lacks important context about how the replacement behaves or any prerequisites, though the existence of an output schema somewhat reduces the need to explain return values.

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 should compensate by explaining parameters. The description only implies find_text and replace_text via the phrase 'find and replace text' but does not clarify match_case or document_id. It adds minimal value beyond the parameter names themselves.

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 identifies the tool's function: finding and replacing text in a Google Doc. It uses a specific verb and resource, and it distinguishes itself from sibling tools like docs_insert_text or docs_format_text by focusing on the find-and-replace action.

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?

There is no guidance on when to use this tool versus alternatives or when not to use it. The description simply states the operation, leaving the agent to infer the appropriate context without any exclusions or alternative recommendations.

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

docs_format_textB

Apply formatting (bold, italic, underline, font size, color) to a text range in a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
boldNo
italicNo
end_indexYes
font_sizeNo
underlineNo
document_idYes
start_indexYes
strikethroughNo
foreground_colorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must disclose mutation effects. It only says 'Apply formatting' without explaining that it modifies existing text, whether formatting is overwritten or merged, what happens with invalid indices, or that it requires an authenticated document. This is a significant lack of transparency for a mutating 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 a single sentence that is front-loaded with the key action and scope. Every word is necessary, and there is 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 9 parameters and no annotations, the description is too sparse. It does not address parameter semantics beyond naming formatting types, nor does it provide usage context. The presence of an output schema covers return values, but the description remains incomplete for a tool of this complexity.

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% description coverage. The description identifies the formatting attributes (bold, italic, underline, font size, color) that correspond to parameters, but it omits strikethrough and does not explain the meaning of start_index/end_index (e.g., zero-based, exclusive end) or the color format. It adds some semantics but leaves critical parameter details ambiguous.

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 that this tool applies inline formatting (bold, italic, underline, font size, color) to a specified text range in a Google Doc. It distinguishes this from sibling tools like docs_set_paragraph_style (paragraph-level) and docs_set_alignment (alignment).

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?

There is no guidance on when to use this tool versus alternatives. It does not mention that this is for character-level formatting or that docs_batch_update might be more appropriate for multiple changes. No exclusions or prerequisites are stated.

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

docs_insert_bulletsC

Apply bullet or numbered list formatting to paragraphs in a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_indexYes
bullet_typeNoBULLET_DISC_CIRCLE_SQUARE
document_idYes
start_indexYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden. It does not disclose behavioral traits such as whether existing bullet formatting is replaced or toggled, how start_index and end_index map to paragraphs, or any side effects. The description only states the action without contextual detail.

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 a single concise sentence with no fluff. It is efficiently structured and front-loaded, but the brevity comes at the cost of omitting necessary details for correct usage.

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?

For a tool with 4 parameters, no annotations, and no output schema shown, the description is too thin. It fails to explain parameter meanings, bullet_type options, or the expected behavior when applying formatting to a range. The description is not sufficient for an agent to use the tool effectively.

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

Parameters1/5

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

The schema has 0% description coverage, and the tool description provides no parameter semantics. It does not explain that start_index and end_index refer to character offsets, what bullet_type accepts (beyond a default value), or the role of document_id. The description adds no value for parameter understanding.

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 function: 'Apply bullet or numbered list formatting to paragraphs in a Google Doc.' It uses a specific verb and resource, distinguishing it from sibling tools like docs_insert_paragraph (which inserts new paragraphs) and slides_insert_bullets (which works on slides).

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 like docs_set_paragraph_style or docs_format_text. The description implies usage for list formatting but does not state when it should be preferred or excluded.

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

docs_insert_imageB

Insert an image into a Google Doc from a URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNo
width_ptNo
height_ptNo
image_uriYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 states the primary function and does not disclose key behaviors such as URL accessibility requirements, default placement, whether the image is embedded or linked, or what happens on invalid URLs. This is a significant gap 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 a single, front-loaded sentence with no wasted words. It is concise and easy to parse, though it sacrifices informativeness for brevity.

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 tool (inserting an image into a specific document with size and positioning parameters) and the lack of annotations or schema descriptions, the description is insufficient. It does not explain placement semantics, prerequisites for the URL, or how the index parameter affects behavior. The presence of an output schema does not compensate for these gaps in selection and invocation 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%, so the description must compensate. It mentions 'from a URL' which sheds light on image_uri, but it does not explain document_id, index, width_pt, or height_pt. Most parameter meanings remain opaque, requiring the agent to guess or use defaults without clear guidance.

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 specific action (insert), the resource (image), the destination (Google Doc), and the source (URL). This distinguishes it from sibling tools like docs_insert_text or slides_insert_image.

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 when to use this tool (when inserting an image from a URL into a Google Doc) but provides no explicit alternatives or exclusions. It does not differentiate from similar insert tools in other services (e.g., slides_insert_image) or other docs inserts.

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

docs_insert_page_breakC

Insert a page break in a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/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 'Insert a page break' and does not explain the meaning of the 'index' parameter, any side effects on existing content, or permission requirements. The tool is a mutation but lacks detail.

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 one sentence with zero wasted words, making it appropriately concise for a simple tool. However, it is under-specified, which slightly detracts from its effectiveness.

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?

The tool is simple, but the description omits critical context about the 'index' parameter, such as whether it is 0-based or 1-based and what happens to surrounding content. Even though an output schema exists, the input semantics remain incomplete.

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

Parameters1/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 compensate for the undocumented parameters. However, the description does not mention 'document_id' or 'index' at all, leaving their semantics completely unexplained.

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 function with a specific verb and resource: 'Insert a page break in a Google Doc.' It distinguishes itself from sibling tools like docs_insert_paragraph and docs_insert_text by naming the exact action (page break).

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 other insert operations. There are no mentions of alternatives, prerequisites, or scenarios where this tool is preferred.

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

docs_insert_tableB

Insert a table into a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsYes
indexNo
columnsYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 disclosing behavioral traits. It only states the action (inserting a table) without mentioning insertion position via the 'index' parameter, size constraints, or effects on existing content. It does not contradict annotations, but it is far too sparse.

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 a single, direct sentence with no wasted words. It is appropriately front-loaded and concise for the basic action it describes.

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

Completeness1/5

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

For a mutation tool with 4 parameters and no annotations, the description is seriously incomplete. It lacks parameter explanations, insertion behavior, and usage guidance. An agent would not have enough information to invoke it correctly beyond guessing from the tool name and schema.

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 input schema has 0% description coverage, and the tool description adds no clarification for any parameter. While 'rows' and 'columns' are somewhat self-explanatory, 'index' remains ambiguous (default 1 but unclear if it's a 1-based position). The description fails to compensate for the schema's lack of detail.

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 ('insert') and a specific resource ('table') with a clear target ('Google Doc'), making it distinct from sibling tools like docs_insert_paragraph and docs_insert_image. It immediately conveys the tool's core function.

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 usage context is implied: use this tool to insert a table into a document. However, it does not provide explicit when-to-use or when-not-to-use guidance, nor does it differentiate from closely related tools like docs_insert_table_row or docs_add_table (if present).

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

docs_insert_textA

Insert text at a specific position in a Google Doc. Index 1 = beginning.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
indexNo
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description must carry the full burden of behavioral disclosure. It explains the 1-based indexing behavior, which is useful, but does not mention side effects like shifting existing content or that this is a mutation. It is not misleading, but incomplete for a tool with no annotation coverage.

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

Conciseness5/5

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

Two sentences with no wasted words. The description is front-loaded with the primary action and includes the essential indexing detail. Ideal for a simple tool.

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

Completeness4/5

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

For a tool with only 3 simple parameters and an output schema, the description provides sufficient context for correct invocation. It lacks details like format of inserted text, but these are not critical for the tool's straightforward purpose. Slightly above minimum viability.

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 compensate. It explains the 'index' parameter semantics (1 = beginning), but does not explicitly explain 'text' or 'document_id', though their meanings are obvious from their names. Partial compensation for a simple parameter set.

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 (insert text) and the target resource (Google Doc), with a specific modifier ('at a specific position') that distinguishes it from siblings like docs_append_text. The index base clarification ('Index 1 = beginning') adds precision.

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 implies when to use this tool (when insertion at a specific position is needed) by contrasting with append/paragraph tools, but it does not explicitly name alternatives or exclusion conditions. The context is clear enough for an agent to select it appropriately.

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

docs_readA

Read the full text content of a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

The word 'Read' implies a non-destructive operation, and 'full text content' indicates the return format. However, without annotations, the description does not disclose permissions, size limits, or error behavior beyond this basic indication.

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 a single, focused sentence with no 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?

For a simple read tool with an output schema, the description provides sufficient functional clarity. It lacks usage context but is otherwise complete for basic selection and 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 description does not mention the document_id parameter or its meaning. The schema provides only the parameter name and type without description, leaving the agent to infer that document_id is the Google Doc's identifier.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Read the full text content of a Google Doc,' providing a specific verb (read), resource (Google Doc), and scope (full text content). This clearly distinguishes it from sibling tools that modify or search docs.

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 given on when to use this tool versus alternatives like drive_read_file or docs_find_replace. The description merely states what it does without contextual or exclusionary information.

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

drive_add_commentC

Add a comment to a Drive file.

ParametersJSON Schema
NameRequiredDescriptionDefault
contentYes
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.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 for disclosure. It does not mention potential side effects, permission requirements, irreversibility, or whether the operation is a mutation, leaving the agent without 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 a single, succinct sentence with no redundant words. It is front-loaded, directly stating the action and target, making it highly scannable.

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?

While the tool has an output schema and only two parameters, the description lacks context about file types, user permissions, or relation to other Drive tools. Combined with absent annotations and minimal parameter info, the overall context is insufficient for an agent to invoke the tool confidently.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain the parameters file_id or content. The agent is left to infer from parameter titles alone, with no additional meaning provided about their format, purpose, or constraints.

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 action ('Add a comment') and the resource ('a Drive file'), providing a specific verb and object. However, it does not explicitly distinguish itself from sibling tools like drive_list_comments, though the action difference is inherent.

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?

There is no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. The description simply states what it does without contextualizing its use relative to other Drive comment tools.

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

drive_copy_fileC

Copy a file in Google Drive.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
file_idYes
folder_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. It only states 'Copy a file,' without detailing whether this creates a new copy, the role of optional name/folder_id, side effects, or return value. This is minimal but not entirely missing, as the action 'copy' implies duplication.

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 a single, short sentence with no unnecessary words. It is front-loaded and perfectly concise for the simple action it describes.

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?

The tool has three parameters, no annotations, and an output schema, yet the description is extremely sparse. Given the complexity, the description is not complete enough: it fails to explain parameter semantics, usage context, or expected behavior. The output schema may cover return values, but the description still leaves significant gaps.

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

Parameters1/5

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

The description adds no meaning beyond the input schema. With 0% schema description coverage, the agent has no idea what 'name' or 'folder_id' actually do. The description does not compensate for the undocumented parameters at all.

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 'Copy' with a clear resource 'a file in Google Drive.' It clearly distinguishes from sibling tools like drive_read_file, drive_create_file, or drive_share_file by specifying the copy action. The purpose is immediately clear 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 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. It does not mention that it duplicates a file, explain how it relates to drive_move or drive_create, or provide any exclusions or prerequisites. This leaves the agent without context for selection.

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

drive_create_fileC

Create a new file in Drive. Set as_google_doc=True to create a Google Doc.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
contentNo
folder_idNo
mime_typeNotext/plain
as_google_docNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carry the full burden of disclosing side effects, permissions, and behavior. It only states that a file is created and mentions the as_google_doc flag, with no information about defaults, overwriting behavior, error conditions, or access 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 two short sentences with no filler, front-loading the purpose and adding one useful hint. It is appropriately brief.

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 lack of annotations, 0% parameter documentation, and a complex ecosystem of sibling create tools, the description is far too minimal to give an agent everything it needs to invoke correctly. It lacks usage context, parameter details, and behavioral expectations.

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% description coverage for its 5 parameters. The description adds meaning for as_google_doc by explaining its effect, but it leaves name, content, folder_id, and mime_type unexplained, which is insufficient given the low schema coverage.

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 file in Drive' with a verb and resource, and adds a specific hint about as_google_doc. However, it does not explicitly differentiate from sibling create tools like drive_create_folder or docs_create, so it is clear but not fully distinguishing.

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 like drive_create_folder, docs_create, sheets_create, or drive_copy_file. The only hint is setting as_google_doc=True, but it does not explain when that is preferred over using docs_create directly.

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

drive_create_folderC

Create a folder in Google Drive.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
parent_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. It only says 'Create a folder' without mentioning permissions, parent folder behavior, naming conflicts, or side effects. This is a significant gap 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.

Conciseness5/5

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

The description is a single, direct sentence with no filler. It front-loads the core action and uses words efficiently, matching the 'zero waste' standard.

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 having only 2 parameters and an output schema, the description is too minimal. It omits details about the parent folder, default behavior, return values, and prerequisite conditions (e.g., permissions), which are necessary for correct invocation.

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

Parameters1/5

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

Schema description coverage is 0% (0% of parameters are described in the schema), and the description provides no additional meaning for 'name' or 'parent_id'. The description fails to compensate for the 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?

The description clearly states the verb ('Create') and the resource ('a folder in Google Drive'), distinguishing it from sibling tools like drive_create_file. It 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 Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives, such as drive_create_file for files or drive_list_folder for listing. No exclusions or alternative suggestions are mentioned.

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

drive_delete_permissionB

Remove a sharing permission from a file.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes
permission_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior2/5

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

The description discloses that this is a destructive action (removing a permission) but provides no additional context such as irreversibility, ownership requirements, or impact on file access. Since no annotations are present, the description carries the full burden and falls short of disclosing behavioral traits beyond the basic operation.

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 a single, direct sentence that states the core function without any unnecessary words or fluff. It is front-loaded and appropriately concise for the tool's simple purpose.

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 is functional but lacks important context such as how to obtain the permission_id (e.g., via drive_list_permissions) or any caveats about ownership or failed deletions. The presence of an output schema reduces the need to explain return values, but the description still feels incomplete for a mutation tool.

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 provides no descriptions for its parameters (0% coverage), and the description does not compensate by explaining the roles of file_id and permission_id. While the parameter names are self-explanatory, the description adds no meaning beyond what the schema field names already imply, so it fails to bridge the coverage 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?

The description clearly states the action 'Remove' and the object 'a sharing permission from a file', making the tool's purpose unambiguous. It distinguishes itself from sibling tools like drive_share_file (adds permission) and drive_list_permissions (lists permissions).

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 is provided about when to use this tool compared to alternatives. The use case is implied by the name and description, but there is no mention of prerequisites, such as needing to list permissions first to obtain the permission ID, or any exclusions.

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

drive_exportA

Export a Google Workspace file to a format (PDF, DOCX, CSV, XLSX, PPTX, PNG, etc).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes
mime_typeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations, the description bears full responsibility for behavioral disclosure. It only states the primary action and does not mention that the original file is left unmodified, required permissions/scopes, or the limitation that the file must be a native Google Workspace file. This is a significant transparency gap.

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 a single, front-loaded sentence with no fluff. Every word contributes to the core purpose, making it easy to parse and memorable.

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?

An output schema exists, so return values are defined elsewhere. For a simple 2-parameter tool, the description covers the basic purpose and format options, but lacks parameter-specific instructions and usage constraints, making it only adequately complete.

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 compensate. It provides human-readable format examples (PDF, DOCX, etc.) that hint at the mime_type parameter, but it does not explicitly map parameter names to their roles or specify actual MIME type syntax (e.g., 'application/pdf'). Partial guidance only.

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 the action ('Export') and the target ('a Google Workspace file to a format'), and the format examples (PDF, DOCX, CSV, etc.) make the scope clear. This distinguishes the tool from sibling tools like drive_read_file or drive_copy_file.

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 clearly implies when to use the tool: when a file needs to be converted to a different format. However, it does not explicitly mention alternatives or exclusions, such as when drive_read_file might be more appropriate for reading raw content.

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

drive_list_commentsB

List comments on a Drive file.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for behavioral disclosure. It only states 'list comments' without mentioning that it is a read-only operation, any pagination behavior, auth requirements, or return format. The description adds no behavioral context beyond the basic action.

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 a single concise sentence, front-loaded with the action, with no redundant words. It earns its place.

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 listing tool, the description is functional but lacks important context about ordering, pagination, or how to interpret results. Given that an output schema exists (not shown), return values needn't be described, but the absence of usage guidance and parameter semantics leaves gaps. It is minimally adequate.

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 compensate. While 'on a Drive file' implicitly identifies the file_id parameter, the max_results parameter is completely unexplained (no mention of pagination, defaults, or limits). The description adds minimal 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 uses a specific verb 'list' and resource 'comments on a Drive file', clearly distinguishing it from sibling tools like drive_add_comment or drive_list_revisions. It accurately states the tool's function.

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 like drive_read_file or drive_add_comment. The description lacks any context about appropriate use cases, prerequisites, or exclusions.

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

drive_list_folderB

List contents of a Drive folder.

ParametersJSON Schema
NameRequiredDescriptionDefault
folder_idNoroot
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 of behavioral disclosure, but it discloses nothing beyond the basic action. It does not clarify whether listing returns immediate children only, includes subfolders, how pagination/max_results behaves, or what permissions are 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 a single, front-loaded sentence with zero wasted words. It is appropriately concise for a simple tool, although it is sparse enough to border on under-specification.

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?

An output schema exists, so return-value documentation is covered elsewhere. However, the description leaves behavioral gaps—recursive vs. immediate listing, inclusion of files vs. subfolders, and max_results semantics—making it minimally viable with clear gaps.

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%, and the description fails to compensate by explaining folder_id or max_results. Although the parameter names and defaults in the schema are reasonably self-explanatory, the description adds no meaning beyond the bare function statement.

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 ('List') with a clear resource ('contents of a Drive folder'), precisely stating the tool's function. The verb and resource distinguish it from sibling tools like drive_search (searching across Drive) and drive_read_file (reading a file's content).

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 usage guidance, offering only a bare statement of function. It does not mention when to use this tool versus alternatives like drive_search, nor does it state any prerequisites or exclusions.

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

drive_list_permissionsB

List sharing permissions on a file.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/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 action without disclosing behavioral traits such as whether it is read-only, what permissions are returned (e.g., users, groups, public access), or any side effects. This is minimal transparency.

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 a single, clear sentence with no wasted words. It is appropriately sized for a simple listing operation.

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 tool has a single parameter and an output schema, so the description does not need to explain return values. However, it lacks any guidance on usage, prerequisites, or what 'sharing permissions' encompasses, making it minimally adequate but incomplete in context.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not explain the file_id parameter. It adds no meaning beyond the field name, failing to compensate for the schema's lack of description.

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 the specific verb 'List' with the resource 'sharing permissions on a file', clearly stating the action and scope. It distinguishes the tool from siblings like drive_share_file and drive_delete_permission by focusing on reading permissions rather than modifying them.

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. There is no mention of prerequisites, such as needing the file_id, or any comparison with related tools like drive_share_file or drive_delete_permission. The description simply states the action without context.

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

drive_list_revisionsB

List file revisions (version history).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only says 'List file revisions' without mentioning what is included (e.g., metadata, timestamps), pagination, sorting, or whether it is a read-only operation. Minimal behavioral detail is provided.

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 a single, concise sentence that is front-loaded and contains zero wasted words. It efficiently communicates the core action and resource.

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 tool is simple with one required parameter, and an output schema exists, reducing the need to explain return values. However, the lack of any usage guidelines or behavioral context makes the description only minimally viable for an AI agent deciding when and how to invoke it.

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%, and the description does not explicitly describe the file_id parameter. However, the phrase 'List file revisions' implies that file_id identifies the file whose revisions are listed, adding marginal meaning beyond the schema's bare parameter name and type.

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 a specific verb 'List' and resource 'file revisions' with the clarifying parenthetical 'version history'. It distinguishes itself from sibling tools like drive_read_file or drive_search, as no other sibling targets revision history.

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. It only states what the tool does, without any context, prerequisites, or exclusions, leaving the agent to infer usage from the name and sibling tools.

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

drive_read_fileA

Read the text content of a Drive file (Google Docs/Sheets/Slides exported, or raw text files).

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It does disclose that Google Docs/Sheets/Slides are exported and that raw text files are read directly, which adds useful behavioral context. However, it does not mention limitations (e.g., unsupported binary formats like PDFs) or any error behavior, which is a notable gap for a read 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 a single, concise sentence that front-loads the primary action and scope. Every word is functional, with no fluff or repetition.

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

Completeness4/5

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

For a tool with only one parameter and an output schema present, the description adequately covers the core functionality. It explains the input (a Drive file) and the output (text content). It lacks detail on edge cases like unsupported file types, but overall it is sufficiently complete for a simple read operation.

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 compensate. It neither explains what 'file_id' refers to nor provides examples or format hints. While the parameter name is self-explanatory, the description adds no specific meaning beyond the schema's 'string' type, leaving ambiguity about where to obtain a valid ID.

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 ('Read') and resource ('text content of a Drive file'), and clearly specifies the scope: Google Docs/Sheets/Slides exported, or raw text files. This distinguishes it from sibling tools like drive_export (which exports files) and drive_copy_file (which copies).

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

Usage Guidelines4/5

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

The description provides clear context on when to use the tool (when you need the text content of a Drive file), and it disambiguates from file export or copying. However, it does not explicitly state when not to use it or mention alternatives, so it falls short of a 5.

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

drive_share_fileB

Share a Drive file. Roles: 'reader', 'writer', 'commenter'.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoreader
emailYes
file_idYes
send_notificationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/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 says 'Share' without explaining that this modifies the file's permissions, may send notifications, or has other side effects. The role list is useful but not behavioral.

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 filler. Front-loaded with the action, followed by the role list. Every word is useful.

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 having an output schema, the description lacks context about side effects, prerequisites, or when to use this tool versus alternatives. It is minimally viable but leaves significant gaps for a mutation tool.

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 compensate. It adds semantics for 'role' by listing allowed values, but does not explain 'file_id', 'email', or 'send_notification'. The parameters are largely undocumented.

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 ('Share a Drive file') and resource, with a specific list of roles. This distinguishes it from sibling tools like drive_delete_permission or drive_list_permissions.

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 (e.g., drive_delete_permission). No mention of context, prerequisites, or exclusions.

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

drive_trashA

Move a file to the trash.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

The description discloses the core behavior ('move to trash') but nothing beyond that. With no annotations, it does not mention reversibility, permissions, or side effects. However, the action itself is transparent, and the sibling drive_untrash implies recoverability.

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 a single, concise sentence with no filler, front-loading the action and destination. Every word earns its place.

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

Completeness4/5

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

For a simple single-parameter operation, the description provides the essential action. However, it lacks any contextual guidance about when to use trash versus other file operations, and it does not mention the output schema (though that is provided separately).

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 provides only the file_id parameter with no description, and the tool description does not elaborate on it. With 0% schema coverage, the description must compensate but does not explain the parameter's format, scope, or requirements, leaving the agent to infer from the name.

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 function with a specific verb ('Move') and resource ('a file'), and the destination 'trash' distinguishes it from sibling tools like drive_untrash. It directly answers what the tool does.

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?

There is no guidance on when to use this tool, nor any exclusions or alternatives mentioned. The description only states what it does, not when to prefer it over other file operations, so the agent gets no contextual help.

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

drive_untrashC

Restore a file from the trash.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.5/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 the obvious action (restore) without revealing any side effects, permission requirements, or behavior concerning file location. This is minimal and 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.

Conciseness3/5

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

The description is a single, front-loaded sentence with no fluff, but it is under-specified. While concise, it lacks essential context, making it less useful than a slightly longer but more informative description. It is not egregiously padded, hence a middle score.

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?

For a tool with one parameter, no annotations, and a mutation side effect, the description is incomplete. It does not explain when to use the tool, what happens to the file after restoration, or any prerequisites. The presence of an output schema does not compensate for the missing behavioral context.

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

Parameters1/5

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

The input schema has 0% description coverage, and the description does not mention the 'file_id' parameter at all. The schema only indicates it is a string, leaving its purpose entirely unexplained. The description fails to compensate for the lack of parameter 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?

The description 'Restore a file from the trash.' clearly states the action (restore) and the resource (file in trash). It is specific and easily distinguished from sibling tools like drive_trash, which performs the opposite action.

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

Usage Guidelines1/5

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

There is no guidance on when to use this tool versus alternatives. The description does not mention conditions (e.g., file must be in trash), prerequisites, or exclusions, leaving the agent to infer usage entirely.

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

forms_add_questionC

Add a question to a form. Types: TEXT, PARAGRAPH, RADIO, CHECKBOX, DROP_DOWN, SCALE.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexNo
titleYes
form_idYes
optionsNo
requiredNo
paragraphNo
question_typeNoTEXT

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/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 'Add a question' and lists types, without mentioning side effects, required fields, or how the question is inserted (e.g., at the end by default). This is minimal and does not reveal any behavioral traits beyond the basic action.

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 very concise: two short sentences with no wasted words. The first sentence states the core action, and the second lists types, which is useful. However, it may be slightly under-specified, but as a conciseness measure, it is well-structured and front-loaded.

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

Completeness1/5

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

The tool has 7 parameters and no annotations, yet the description is only two sentences. It lacks critical context about how to specify choice options, where the question is inserted, the role of the 'required' flag, and what the output schema contains. This is completely inadequate for a tool with this complexity.

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 compensate for the 7 parameters. It only lists valid question types, which maps to the 'question_type' parameter, but provides no explanation for index, options, required, paragraph, or how they interact. This adds minimal value over 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 the action ('Add a question') and the resource ('a form'), making the primary purpose unambiguous. It lacks explicit differentiation from sibling tools like forms_update_question, but the verb 'add' versus 'update' provides enough distinction. The list of types adds useful 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 is given on when to use this tool versus alternatives such as forms_update_question or forms_move_question. The description does not mention any context, prerequisites, or exclusions, leaving the agent without clear decision-making support.

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

forms_createB

Create a new Google Form.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/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 responsibility for behavioral disclosure. It merely states the creation action without mentioning that it is a write operation, any permission requirements, side effects, or what the tool returns (e.g., the new form's ID). This lacks transparency for an agent.

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 a single, front-loaded sentence with no unnecessary words. It is appropriately concise for a simple create operation, and every word contributes to the meaning.

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?

The description is too minimal to be contextually complete for a tool with no annotations and no parameter descriptions. It does not mention the initial state of the created form, its relationship to sibling tools, or any expected output beyond the implicit creation. The agent is left to guess too much.

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%, and the description does not explain the 'title' or 'description' parameters. Although the parameter names are somewhat self-explanatory, the description adds no meaning about their roles, constraints, or defaults. It fails to compensate for the missing schema descriptions.

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 'Create a new Google Form' clearly states the action (create) and the resource (Google Form), and it distinguishes itself from sibling tools like forms_read or forms_add_question. The purpose is unambiguous and specific.

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. The description does not mention that it is for creating an initial form shell, nor does it exclude scenarios like adding questions or updating settings. There is no context about prerequisites or recommended usage.

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

forms_delete_questionC

Delete a question from a form by its 0-based index.

ParametersJSON Schema
NameRequiredDescriptionDefault
form_idYes
item_indexYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. While 'Delete' implies destructiveness and the 0-based index detail is useful, the description does not mention permanence, side effects on other questions, or any other behavioral traits beyond the operation itself.

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 a single concise sentence that is front-loaded with the action and resource. It avoids verbosity, but the brevity veers toward under-specification, which is penalized in other dimensions rather than here.

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?

For a destructive operation with no annotations and no parameter descriptions, the description is too sparse. It does not explain what happens after deletion, whether it can be undone, or what the response contains (though an output schema exists). The tool needs more context to be considered complete.

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 compensate. It adds meaningful semantics for item_index by specifying '0-based index', but it provides no explanation for form_id. With two parameters and coverage of only one, the compensation is partial at best.

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 ('Delete'), identifies the resource ('a question from a form'), and adds a distinct detail ('by its 0-based index'). This clearly differentiates it from sibling tools like forms_add_question, forms_update_question, and forms_move_question.

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, nor any prerequisites or exclusions. It simply states what the tool does, leaving usage decisions entirely to the agent.

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

forms_list_responsesC

List all responses submitted to a Google Form.

ParametersJSON Schema
NameRequiredDescriptionDefault
form_idYes
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.3/5.0
Behavior1/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, but it only restates the basic function. It does not mention response format, pagination, default max_results behavior, or any side effects. The description adds no value beyond the tool name.

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 a single concise sentence that is easy to parse. However, it is under-specified, omitting crucial details about parameters and usage, so the brevity comes at the cost of completeness.

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?

While the tool is relatively simple and an output schema exists, the description is incomplete. It fails to mention the max_results parameter or clarify how 'all' reconciles with pagination. The missing annotations could have been compensated in the description, but were not.

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

Parameters1/5

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

Input schema coverage in the description is 0% — it does not explain form_id or max_results. The schema itself provides minimal context (max_results default 50), but the description offers no additional meaning, failing to compensate for the lack of parameter documentation.

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 lists responses from a Google Form, distinguishing it from sibling tools that read form structure or manage questions. However, the phrase 'all responses' is misleading given the max_results parameter with a default of 50, which implies pagination or limiting.

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?

There is no guidance on when to use this tool versus alternatives like forms_read, which might also access form data. The description does not mention exclusions, prerequisites, or scenarios where this tool is preferred.

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

forms_move_questionB

Move/reorder a question in a form.

ParametersJSON Schema
NameRequiredDescriptionDefault
form_idYes
to_indexYes
from_indexYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 of disclosing behavior. It only states 'Move/reorder,' which implies mutation but does not explain index semantics, potential side effects, or whether the operation is reversible. No additional behavioral context is provided.

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 a single concise sentence that front-loads the core action and resource. There is no wasted text, making it highly efficient.

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?

The tool has 3 required parameters and no annotation support, yet the description is extremely brief. It does not cover index semantics, return values, or any edge cases. Even though an output schema exists, the lack of behavioral and parameter detail leaves the description incomplete for correct 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?

Schema description coverage is 0%, and the description does not explain any of the parameters (form_id, from_index, to_index). While the parameter names are somewhat self-explanatory, the description adds no meaning beyond the schema and fails to compensate for the lack of schema descriptions.

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 'Move/reorder' and clearly identifies the resource 'a question in a form.' This distinguishes it from sibling tools like forms_add_question, forms_update_question, and forms_delete_question, making the tool's purpose 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?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or context such as needing a form ID or constraints on indices. It simply states the action without usage context.

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

forms_readB

Read a form's structure, questions, and settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
form_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

Without annotations, the description carries the full burden of behavioral disclosure. It only says 'Read', which implies a non-mutating operation, but adds no detail about permissions, limitations, or edge cases. It essentially restates the tool name without enriching 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 a single, concise sentence with no filler words. It is front-loaded with the action and clearly enumerates the three aspects of the form being read. Every word earns its place.

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

Completeness4/5

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

For a simple read tool with an output schema (which explains return values), the description adequately conveys what the tool does. It lists the specific elements (structure, questions, settings) that will be read, making it reasonably complete. Some context about access requirements is missing but not critical.

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% description coverage for the single parameter form_id. The description does not explain how to obtain or format the form_id, nor does it connect the mentioned 'structure, questions, and settings' to the parameter. It fails to compensate for the low schema 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 tool reads a form's structure, questions, and settings, using the specific verb 'Read' and identifying the resource. This distinguishes it from sibling tools like forms_list_responses (which reads responses) and forms_update_settings (which modifies settings).

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 any exclusions or prerequisites. Usage is only implied by the verb 'Read', which is insufficient for a tool with many siblings.

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

forms_update_questionC

Update an existing question in a form.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNo
form_idYes
requiredNo
item_indexYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.1/5.0
Behavior1/5

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

With no annotations, the description carries the full burden of disclosing behavioral traits. It only says 'Update' without mentioning permissions, reversibility, effects on unspecified fields, or error conditions. This is a significant gap 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.

Conciseness2/5

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

The description is a single sentence, which is concise, but it is under-specified for a tool with four parameters. No details about parameters or behavior are included, so it is not appropriately sized for the tool's complexity.

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

Completeness1/5

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

Given the tool's complexity (4 params, mutation, output schema exists), the description is far too brief. It does not explain how to identify the question (item_index), what fields can be updated, or any behavioral implications. The presence of an output schema does not compensate for the lack of operational guidance.

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

Parameters1/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 compensate by explaining parameters. It does not; it only says 'update an existing question,' leaving form_id, item_index, title, and required entirely unexplained. The schema itself lacks descriptions, giving the agent no guidance.

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 uses a specific verb ('Update') and a clear resource ('existing question in a form'), which clearly states the tool's function. It distinguishes from sibling tools like forms_add_question and forms_delete_question, though it does not explicitly name alternatives.

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. The word 'existing' implies modifying a previously created question, but no explicit conditions, prerequisites, or exclusions are given.

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

forms_update_settingsB

Update form settings (make it a quiz, change description).

ParametersJSON Schema
NameRequiredDescriptionDefault
form_idYes
is_quizNo
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 that the tool updates settings but does not mention that this is a write operation, any potential side effects, permission requirements, reversibility, or how partial updates are handled. 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.

Conciseness4/5

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

The description is a single, efficient sentence that is front-loaded with the action and includes practical examples. It is appropriately concise for the tool's simplicity, though it could add a bit more behavioral context without becoming verbose.

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?

The tool is a mutation operation with no annotations, no output schema details visible, and a brief description. Given the presence of siblings that modify forms (e.g., forms_update_question), the description lacks crucial context about the scope of 'settings', permissions, and how it fits into the broader form-management workflow. The minimal information may lead to incorrect tool selection or 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 input schema has 0% description coverage, so the description must compensate. It explains two parameters (is_quiz as 'make it a quiz', description as 'change description') but completely omits the required form_id parameter. It also does not clarify update semantics (e.g., whether null values leave existing settings untouched), 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 the action ('Update form settings') and gives concrete examples ('make it a quiz, change description'), distinguishing it from sibling tools like forms_add_question or forms_update_question. The verb+resource combination 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 when to use this tool (when updating form-level settings) but provides no explicit when-not-to-use or alternative tool references. The examples of quiz and description help infer usage context, but there is no guidance on exclusions or prerequisites.

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

gmail_create_filterB

Create a Gmail filter. criteria: {from, to, subject, query, hasAttachment}. action: {addLabelIds, removeLabelIds, forward}.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
criteriaYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior1/5

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

No annotations are present, so the description carries the full burden of behavioral disclosure. It does not describe side effects, permissions required, or what constitutes success/failure. It merely restates the schema's field names (criteria, action) without adding any behavioral context, making it tautological for a create operation.

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: three short fragments with no filler. It front-loads the core purpose, then lists relevant fields, and every token earns its place. This is efficient and easily parseable.

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 an output schema existing, the description omits crucial context: it does not explain which subfields are required, how matching logic works, or provide examples. Given the nested objects and lack of annotations, the description is too sparse to fully enable correct usage, especially for a creation tool with potential side effects.

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 schema is generic (objects with additionalProperties), but the description compensates by listing the expected subfields: criteria: {from, to, subject, query, hasAttachment} and action: {addLabelIds, removeLabelIds, forward}. This adds meaning beyond the schema, though it does not explain the semantics of each field or their 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 states a clear action and resource: 'Create a Gmail filter.' This distinguishes it from sibling tools like gmail_list_filters and gmail_delete_filter, and the specific verb-resource pairing leaves no ambiguity about what the tool does.

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, no prerequisites, and no exclusions. It simply lists the input fields without any contextual advice, leaving the agent to infer usage from the tool name and sibling set.

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

gmail_create_labelC

Create a new Gmail label.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/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 simply says 'Create a new Gmail label' without mentioning permission requirements, duplicate name handling, naming constraints, or side effects. This is a significant gap 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 a single, front-loaded sentence with no waste. It is concise, but it may be under-specified rather than properly scoped, hence not a 5.

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 create tool with one parameter and an output schema present, the description is minimally adequate. However, it lacks details about label naming conventions or potential failure modes, which would be useful for a complete understanding.

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% description coverage; the description does not explain the 'name' parameter beyond the schema's minimal 'Name' title. Since there is only one param, the agent might infer its meaning, but the description adds no additional semantic context.

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 action ('Create') and the resource ('a new Gmail label'), distinguishing it from sibling tools like gmail_list_labels and gmail_delete_label. It is specific but could be enhanced by noting what makes this tool distinct (e.g., label naming rules).

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 is silently implied that you should use it when you need to create a label, but there is no explicit context, exclusions, or alternative tool references.

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

gmail_delete_filterC

Delete a Gmail filter.

ParametersJSON Schema
NameRequiredDescriptionDefault
filter_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/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. It does not mention that deletion is permanent, the need for filter_id, or any side effects on existing messages. The word 'Delete' implies destructiveness but lacks specifics.

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 a single, clear sentence with no wasted words. It is efficient and well-structured for a simple action, though its brevity borders on under-specification.

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 absence of annotations and minimal schema descriptions, this one-sentence description is insufficient for a deletion tool. It does not address prerequisites, success/failure behavior, or how filter_id relates to Gmail filters.

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

Parameters1/5

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

Schema coverage for filter_id is 0%, and the description does not mention the parameter at all. It fails to explain what filter_id represents or how to obtain it, leaving the agent without necessary semantic information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Delete a Gmail filter.' clearly states the action (delete) and the resource (Gmail filter), distinguishing it from sibling tools like gmail_create_filter and gmail_delete_label.

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 vs alternatives such as gmail_list_filters or gmail_create_filter. There are no prerequisites, context, or examples given.

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

gmail_delete_labelC

Delete a Gmail label.

ParametersJSON Schema
NameRequiredDescriptionDefault
label_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosing behavioral traits. It only states 'Delete a Gmail label' without mentioning permanence, side effects on messages, permissions required, or error behavior—a significant gap 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.

Conciseness3/5

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

The description is a single sentence, which is concise, but it is under-specified. It lacks crucial context for a destructive tool, so while it is not verbose, it fails to earn its place by omitting essential information.

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 has one parameter, no annotations, and an output schema, the description is too minimal to be complete. It covers the basic action but omits behavioral details and usage context, making it insufficient for confident selection and invocation.

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

Parameters1/5

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

The schema description coverage is 0%, and the description does not reference the label_id parameter at all. The schema only provides the parameter name and type, leaving the agent to infer how to specify the target label, making this clearly insufficient.

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 action (delete) and the resource (Gmail label), using a specific verb+resource combination. It does not explicitly differentiate from sibling tools like gmail_create_label or gmail_modify_labels, but the delete action is unambiguous given the name.

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, no prerequisites are mentioned, and there is no discussion of conditions or exclusions. The agent is left without context for selecting this tool over other Gmail label tools.

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

gmail_draftA

Create a Gmail draft. All fields are optional for work-in-progress drafts.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
toNo
bccNo
bodyNo
htmlNo
subjectNo
thread_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses that the tool creates a draft (a mutation) and that all fields are optional, which is a useful behavioral context. However, it does not mention side effects (e.g., the draft is saved but not sent) or describe the response structure, though an output schema exists.

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 highly concise with two short sentences that immediately convey the main purpose and an important operational nuance. There is no fluff or repetition.

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 having an output schema, the description lacks essential context for a tool with 7 parameters and no annotations. It does not explain what happens when a draft is created, how it can be accessed later, or the relationship to gmail_send_draft. The sparse description is minimal but not fully complete for a robust tool.

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 compensate, but it fails to explain individual parameters. The only parameter-related statement is 'All fields are optional,' which is already evident from the schema (required: 0). It does not describe fields like to, body, or thread_id, making the description inadequate for parameter understanding.

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: 'Create a Gmail draft.' This is a specific verb+resource that distinguishes it from siblings like gmail_send (which sends immediately) and gmail_send_draft (which sends an existing draft).

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 creating drafts, especially work-in-progress drafts, but does not explicitly state when to use this tool over alternatives. It points out that 'All fields are optional for work-in-progress drafts,' which gives context, but no clear when-to-use or when-not-to-use guidance.

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

gmail_get_attachmentB

Download a Gmail attachment and return its base64 data.

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYes
attachment_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/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 does disclose the output format (base64 data), which is useful, but there is no mention of size limits, error behavior, or the read-only nature beyond the verb 'download'. This is adequate but not richly 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?

A single sentence that is front-loaded with the action verb and resource, with zero wasted words. It efficiently conveys the primary action and output format.

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 two-parameter read tool, the description is minimally complete, but it lacks contextual prerequisites (e.g., attachment_id comes from reading the message) and does not compensate for missing parameter descriptions. The output schema may cover return details, but the description alone leaves gaps.

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%, and the description does not explain the two parameters beyond their self-evident names. It does not clarify the relationship between message_id and attachment_id or where to obtain them. The names are clear, but the description adds little semantic value.

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 ('Download') and resource ('a Gmail attachment') with a clear output format ('return its base64 data'). It unambiguously distinguishes this tool from siblings like gmail_read_message and gmail_search.

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, nor are prerequisites mentioned (e.g., obtaining message_id and attachment_id from a prior read call). The description only states what the tool does, not when to invoke it.

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

gmail_get_vacationA

Get current Gmail vacation/auto-reply settings.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden of behavioral disclosure. The verb 'Get' indicates a non-mutating operation, which is helpful, but the description does not explicitly state side-effect-free behavior or any other behavioral traits beyond simply retrieving settings. It is adequate but not detailed.

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 a single, well-structured sentence that front-loads the action ('Get') and clearly states the resource. No superfluous words; every word earns its place.

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 low complexity (0 parameters, no annotations), the description is mostly complete. The presence of an output schema covers return values. It could have added a note that this is a safe read-only operation and complements gmail_set_vacation, but the description is sufficient for a simple getter.

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 zero parameters, so there is nothing to document. The schema is empty, and the description does not need to add parameter meaning. Baseline 4 applies for 0-parameter tools.

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 the specific verb 'Get' and clearly identifies the resource as 'Gmail vacation/auto-reply settings'. It distinguishes this tool from siblings like gmail_set_vacation and other gmail actions, leaving no ambiguity about what the tool does.

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 as a read-only getter, especially given the counterpart gmail_set_vacation among siblings, but it does not explicitly state when to use this tool over alternatives or provide any exclusion guidance. There is no mention of use cases like checking current vacation status before updating.

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

gmail_list_filtersA

List all Gmail filters.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. 'List' implies a read-only operation with no side effects, but it does not disclose anything else (e.g., authentication, rate limits, return behavior). For a trivial list operation, this is adequate but not rich.

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 a single, efficient sentence that states the action and resource without any fluff.

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 a zero-parameter tool and an output schema providing return details, the description is compact but sufficient. It could mention scope ('all filters') but already does so. No critical information is missing for a simple list operation.

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 zero parameters, so the schema fully covers (100%) what is needed. Description adds no parameter details because there are none; baseline 4 applies.

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 'List all Gmail filters' uses a specific verb ('List') and resource ('Gmail filters'), clearly distinguishing it from sibling tools like gmail_create_filter, gmail_delete_filter, and gmail_list_labels. The word 'all' adds scope.

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 intended use is implied: when you need to see existing filters. However, it gives no explicit guidance on when to prefer this over alternatives, nor does it mention any exclusions or prerequisites.

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

gmail_list_labelsA

List all Gmail labels (system and user-created).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/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 clearly indicates that the operation is a read-only listing (no side effects) and adds valuable nuance by stating both system and user-created labels are included. However, it does not mention any potential limits (e.g., pagination, authorization scopes) or whether hidden labels are included, but for a list tool this is reasonably transparent.

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

Conciseness5/5

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

The description is a single, succinct sentence that front-loads the verb and resource. Every word contributes meaning, with no repetition or filler. It is perfectly sized for the tool's simplicity.

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 low complexity (zero parameters) and the presence of an output schema, the description is complete. It states what is listed (all labels) and the scope (system and user-created), which is sufficient for an agent to know what to expect. The output schema can handle any return-value details, so the description need not elaborate further.

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 zero parameters, and the schema description coverage is 100% (empty properties). The description adds no parameter-specific details because none are needed. Baseline for zero parameters is 4, and the description appropriately says nothing beyond the tool's action.

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 ('List') with a clear resource ('Gmail labels') and explicitly scopes to 'all' including both system and user-created. This distinguishes it from sibling tools like gmail_create_label or gmail_delete_label, which are mutation operations rather than a listing operation.

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 when to use the tool (when you need to retrieve all Gmail labels), but it does not explicitly state alternatives or exclusions. Sibling tools like gmail_list_filters serve a different purpose, yet no direct guidance is provided for choosing this over them. This is adequate but leaves the agent to infer context from the tool name and description.

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

gmail_modify_labelsA

Modify labels on a message. Use to archive (remove INBOX), mark read (remove UNREAD), star (add STARRED), etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
add_labelsNo
message_idYes
remove_labelsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are provided, so the description carries the transparency burden. It explains that the tool modifies labels and gives common use cases, which provides basic behavioral context. However, it does not disclose potential side effects (e.g., interactions between add and remove lists), permission requirements, or atomicity, leaving gaps 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.

Conciseness5/5

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

The description is a single, efficient sentence that immediately states the action and provides valuable examples. It is front-loaded with the core purpose and contains zero 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?

The tool is simple and an output schema exists, so return values need not be explained. However, the description does not mention the required message_id parameter or how to obtain it, nor does it address edge cases like simultaneous adds and removes. This leaves some context gaps for an agent to infer.

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 the description must compensate. It clarifies parameter usage through examples like 'remove INBOX' and 'add STARRED', which maps to the add_labels and remove_labels parameters. Yet it does not explicitly describe that these are arrays, that message_id is required, or the expected label name format, leaving partial but not full clarification.

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 modifies labels on a message, with a specific verb and resource. It distinguishes from siblings by focusing on label modification and provides concrete examples (archive, mark read, star) that clarify its unique purpose among the Gmail toolset.

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 includes 'Use to archive (remove INBOX), mark read (remove UNREAD), star (add STARRED), etc.', which directly indicates when to use the tool. However, it does not explicitly mention when not to use it or name alternative tools, so it misses the full 'when-not/alternatives' guidance.

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

gmail_read_messageB

Read the full content of a Gmail message by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

There are no annotations, and the description does not disclose side effects such as whether the message is marked as read, nor does it describe return content characteristics beyond 'full content'. The burden of behavioral disclosure falls entirely on the description, which it fails to meet.

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 a single sentence with no unnecessary words. It is front-loaded with the action and resource, making it extremely concise 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?

Given the tool's simplicity and the presence of an output schema, the description provides the essential purpose but lacks context about usage scenarios, such as whether attachments are included or if special permissions are needed. It is minimally viable but not enriched.

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% description coverage, and the description only adds 'by its ID' to imply that message_id is the Gmail message identifier. This is minimal compensation; it does not explain ID format, how to obtain it, or any constraints on the value.

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 function: 'Read the full content of a Gmail message by its ID.' It uses a specific verb ('Read') and resource ('Gmail message'), and 'by its ID' distinguishes it from reading threads or attachments.

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 like gmail_read_thread or gmail_get_attachment. It does not mention exclusions, prerequisites, or when other tools would be more appropriate.

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

gmail_read_threadA

Read all messages in a Gmail thread by its thread ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
thread_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It clearly indicates a read-only operation ('Read') but does not disclose any potential side effects, such as whether messages are marked as read, or what happens if the thread ID is invalid. For a read operation, this is acceptable but could be more explicit.

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 a single sentence with no filler or redundant information. It is concise and front-loaded, covering the essential purpose efficiently.

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 (one parameter, no annotations, output schema exists), the description provides the basic purpose but lacks context about when to choose this over gmail_read_message or gmail_search. It does not mention any prerequisites or limitations, making it a minimal but adequate description for a straightforward read operation.

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. However, it only repeats the parameter name ('by its thread ID') and adds no new meaning about the format, origin, or usage of the thread_id. The parameter title in the schema already says 'Thread Id', so the description provides no additional value.

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 ('Read') and resource ('Gmail thread'), and clearly distinguishes from sibling tools like gmail_read_message by specifying 'all messages in a thread' versus a single message. This makes the tool's purpose 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 the usage context (when you need all messages in a thread) but does not explicitly mention when not to use it or name alternative tools. The phrase 'all messages' hints at the distinction from single-message tools, but no explicit exclusions or alternatives are provided.

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

gmail_sendB

Send an email. Supports plain text and HTML, CC/BCC, and threading for replies.

ParametersJSON Schema
NameRequiredDescriptionDefault
ccNo
toYes
bccNo
bodyYes
htmlNo
subjectYes
thread_idNo
in_reply_toNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 mentions supported features but does not disclose side effects (e.g., sending an email is irreversible), authentication requirements, rate limits, or the fact that it creates a sent message. The description is too sparse 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.

Conciseness5/5

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

The description is a single, well-structured sentence that introduces the core action and key capabilities. Every word is useful; there is no fluff or 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?

Despite having an output schema, the tool has 8 parameters with zero schema descriptions, and the description fails to explain how to use them effectively (e.g., the relationship between threading parameters). It also lacks information about return behavior, error handling, or prerequisites. The description is too minimal for a tool with this complexity.

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 compensate. It adds meaning by mapping features to parameters: 'plain text and HTML' implies the 'html' boolean, 'CC/BCC' maps to 'cc' and 'bcc', and 'threading for replies' hints at 'thread_id' and 'in_reply_to'. However, it does not clarify formats (e.g., comma-separated recipients) or the distinction between thread_id and in_reply_to, 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 states 'Send an email' with a specific verb and resource, clearly distinguishing from sibling tools like gmail_send_draft (which sends a draft) and gmail_draft (which creates a draft). The additional features (HTML, CC/BCC, threading) 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 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 such as gmail_send_draft for sending existing drafts, or gmail_draft for creating drafts. There are no explicit usage 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.

gmail_send_draftB

Send an existing Gmail draft.

ParametersJSON Schema
NameRequiredDescriptionDefault
draft_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 full burden but only states the action. It fails to disclose side effects (e.g., whether the draft is marked as sent, irreversible), permission requirements, or any other behavioral context beyond the basic 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 a single focused sentence with no wasted words. However, given the tool's simplicity, a second sentence providing contextual guidance would have been valuable without harming conciseness.

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?

For a tool that sends an email (a meaningful side effect), the description is incomplete: it does not mention prerequisites like having a draft ID, potential irreversibility, or how to find drafts. The presence of an output schema doesn't compensate for missing usage context.

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% and the description only minimally clarifies that draft_id refers to an existing draft, without explaining the ID format, how to obtain it, or its relationship to other tools like gmail_draft or gmail_search.

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 a specific action ('Send') and resource ('existing Gmail draft'), distinguishing it from siblings like gmail_send (new email) and gmail_draft (draft management).

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 phrase 'existing Gmail draft' implies the tool is used when a draft already exists, but there is no explicit guidance on when to use this tool versus alternatives like gmail_send or gmail_draft, nor any when-not-to-use conditions.

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

gmail_set_vacationC

Set Gmail vacation/auto-reply responder.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo
htmlNo
enableYes
subjectNo
end_timeNo
start_timeNo
domain_onlyNo
contacts_onlyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

There are no annotations to convey safety or mutation hints, and the description merely says 'set' without disclosing side effects, authentication requirements, or behavior when toggling.

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 a single unambiguous sentence, but its brevity contributes to under-specification rather than conciseness, so a mid-range score is appropriate.

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?

For a tool with 8 parameters and an output schema, this description is incomplete—it does not explain what the vacation responder does, how enable interacts with other fields, or what the response contains.

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

Parameters1/5

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

With 0% schema description coverage, the description provides no additional meaning for the 8 parameters; parameter names are self-explanatory but the description does not clarify required fields, defaults, or relationships like time windows.

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 ('Set') with a clear resource ('Gmail vacation/auto-reply responder'), distinguishing it from sibling tools like gmail_get_vacation and gmail_send.

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 about when to use this tool versus alternatives, nor any context about prerequisites or intended use cases.

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

gmail_trashB

Move a Gmail message to the trash.

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations present, the description carries the full burden of behavioral disclosure. It simply states the action without detailing consequences, such as whether the message is recoverable, how labels are affected, or whether any confirmation is required.

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 a single, concise sentence that conveys the action and target with no extraneous words. It is appropriately sized for the tool's simplicity.

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 tool is simple with one parameter, but the description provides only the basic action. It does not mention the return value (though an output schema exists), error conditions, or any side effects, making it minimally sufficient but not fully informative.

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 includes one required parameter, message_id, with no description and 0% schema description coverage. The description does not elaborate on what message_id is or how to obtain it, leaving the agent without essential parameter context.

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') and the resource ('a Gmail message to the trash'), making the tool's purpose unambiguous. It also naturally distinguishes itself from the sibling tool 'gmail_untrash'.

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 usage guidance is provided. The description does not explain when to use this tool versus alternatives, nor does it mention any prerequisites such as requiring a valid message ID or the recoverability of trashed messages.

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

gmail_untrashB

Remove a Gmail message from the trash.

ParametersJSON Schema
NameRequiredDescriptionDefault
message_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 of behavioral disclosure. It states the basic operation but does not disclose side effects (e.g., whether the message is restored to the inbox), error conditions if the message is not in trash, or any reversibility details. The description is too minimal to inform the agent of potential state changes beyond the literal action.

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 a single concise sentence that directly conveys the operation. Every word is necessary and there is no redundant information. It is appropriately front-loaded with the primary action.

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 one-parameter tool, the description covers the core purpose but lacks critical context such as parameter usage, potential errors, and side effects. With no annotations and 0% schema coverage, the description is not fully complete, though it is adequate for a basic understanding.

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 input schema has one parameter, message_id, with 0% description coverage. The tool description does not mention the parameter at all, nor does it explain how to obtain it or what format it expects. Although the parameter name is self-explanatory, the description fails to compensate for the lack of schema-level 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?

The description clearly states the tool's function with a specific verb and resource ('Remove a Gmail message from the trash'). It is immediately distinct from sibling tools like gmail_search or gmail_trash, though it is the inverse of gmail_trash. This is a clear, unambiguous purpose.

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. It does not mention gmail_trash or other restore-like operations, nor any preconditions or exclusions. The usage context is merely implied by the tool name and description.

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

meet_create_spaceA

Create a new Google Meet meeting space. Returns meeting URI and code.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/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 discloses the action and return values, but does not mention side effects, permissions, persistence, or any other behavioral traits beyond the obvious creation. For a mutation tool, this is a minimal disclosure.

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?

A single sentence of 13 words that front-loads the action, includes the key resource, and specifies the return values. Every word earns its place with no fluff.

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

Completeness4/5

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

For a tool with no parameters and an output schema, the description is largely complete: it states what it creates and what it returns. Minor gaps exist, such as not mentioning whether the space is immediately usable or any prerequisites, but given the simplicity, these are not critical.

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 zero parameters, so the schema provides no input details. The description adds no parameter information, but with 0 params, the baseline is 4. It doesn't need to explain anything beyond that, and the return value note is about output, not parameters.

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 ('Create') and the resource ('new Google Meet meeting space'), and explicitly mentions the return values (URI and code). This distinguishes it from sibling tools like meet_get_space or meet_end_conference by focusing on creation.

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 context is clear: this tool is used to create a new meeting space. There are no explicit alternatives or exclusions, but for a simple create operation, the verb alone makes the usage apparent. Not quite a 5 because it doesn't state when not to use it or mention get_space as the retrieval alternative.

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

meet_end_conferenceB

End an active conference in a meeting space.

ParametersJSON Schema
NameRequiredDescriptionDefault
space_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description bears the full burden of behavioral disclosure. It only states the action and the precondition that the conference is active, but does not mention side effects (e.g., whether participants are removed, recordings stopped, or artifacts deleted), permission requirements, or reversibility.

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 a single, concise sentence with no unnecessary words. It is front-loaded and immediately communicates the tool's purpose.

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?

Although the tool is simple, the description lacks essential context: no usage guidelines, no parameter semantics, and no disclosure of side effects. The output schema exists, so return values are covered, but the input and behavioral aspects are insufficiently specified.

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

Parameters1/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 clarify parameters. It fails to explain what 'space_name' refers to or how to obtain it. The parameter is left entirely to the agent's inference.

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 ('End') and the resource ('an active conference in a meeting space'), which is specific and distinguishes it from sibling meet tools like meet_create_space or meet_get_space. It leaves no doubt about what this tool does.

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?

Usage is implied: use this tool to end an active conference. However, the description provides no explicit guidance on when to prefer this over alternatives, nor does it mention prerequisites (e.g., being the host) 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.

meet_get_artifactsA

Get recordings, transcripts, and transcript entries for a conference record.

ParametersJSON Schema
NameRequiredDescriptionDefault
conference_record_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/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 the read-only nature via 'Get' and lists the types of data returned, but does not mention permissions, prerequisites, or any limitations. No annotation contradiction.

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?

One sentence with 11 words, perfectly concise and front-loaded with the main action and objects.

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?

The tool has only one parameter and an output schema, so the description's focus on what is returned (recordings, transcripts, transcript entries) is sufficient for basic use. However, it lacks any statement about prerequisites or limitations, such as only being available for past conferences.

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 mentions 'for a conference record' which connects to the conference_record_name parameter, but does not explain how to obtain the name or any format constraints. Minimal added 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?

The description clearly states the tool gets recordings, transcripts, and transcript entries for a conference record, using a specific verb and resource. It distinguishes from sibling meet tools like meet_list_conference_records by specifying the artifact types.

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 the tool is used to retrieve artifacts for a specific conference record but does not explicitly state when to use it over alternatives or provide exclusions. It gives enough context that you need a conference_record_name, but no explicit guidance for tool selection.

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

meet_get_spaceA

Get details about a Google Meet meeting space by its resource name (e.g. 'spaces/abc-defg-hij').

ParametersJSON Schema
NameRequiredDescriptionDefault
space_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/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 says 'Get details'. It does not disclose whether this is read-only, what permissions are required, or any potential error behaviors. The description leaves the safety and side-effect profile entirely implicit.

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 a single concise sentence that includes a clarifying example. It is front-loaded with the action and resource, with no unnecessary 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?

The tool is simple with one parameter and has an output schema, so return values are adequately covered. However, the absence of usage guidance and behavioral transparency means the description is only minimally complete for an agent to correctly select and invoke the 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?

The schema only provides the parameter name and type. The description adds valuable meaning by explaining the expected format and giving a concrete example ('spaces/abc-defg-hij'), which compensates for the 0% schema description 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 uses a specific verb ('Get') with a clear resource ('Google Meet meeting space') and provides an example resource name. It unambiguously distinguishes this from sibling tools like meet_create_space or meet_list_conference_records.

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 you have a resource name and need details, but it does not explicitly state when to use this tool versus alternatives (e.g., listing conference records). No exclusions or alternative tool references are provided.

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

meet_list_conference_recordsB

List past conference records (meeting history).

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/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 responsibility. It only states the action without disclosing any behavioral traits like pagination, ordering, or what a 'record' contains. No edge cases or side effects are mentioned.

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 a single, front-loaded sentence with no fluff or repetition. Every word contributes to the core purpose.

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 absence of annotations and the presence of an output schema and sibling tools, the description is too minimal. It does not explain what a conference record includes, how listing works (e.g., date ranges), or differentiate itself from related Meet tools, leaving the agent under-informed.

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 one parameter (max_results) with no description (0% coverage), and the description does not mention it. The name is somewhat self-explanatory, but the description fails to compensate for the lack of schema documentation, leaving the default behavior ambiguous.

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 'list' with a clear resource 'past conference records (meeting history)', which distinguishes it from sibling tools like meet_list_participant_sessions. It unambiguously states what the tool does.

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 such as meet_list_participant_sessions or meet_get_artifacts. There are no exclusions or contextual hints beyond the basic purpose.

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

meet_list_participantsA

List participants and their sessions for a conference record (e.g. 'conferenceRecords/abc-defg-hij').

ParametersJSON Schema
NameRequiredDescriptionDefault
conference_record_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 discloses the basic operation but does not mention whether it's a read-only operation, any necessary permissions, or behavior for invalid conference record names. The description adds minimal behavioral context beyond the tool's name.

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 a single sentence that is direct and includes a practical example. It contains no unnecessary words or redundant 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?

The tool is simple with one parameter and an output schema, so the description doesn't need to explain return values. However, it lacks usage guidelines and behavioral details such as read-only semantics, which would be useful given no annotations. The example helps, but overall the description is minimally adequate.

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 schema has one parameter with no description (0% coverage). The tool description compensates by providing an example format ('conferenceRecords/abc-defg-hij'), which clarifies the expected structure of the conference_record_name parameter. This is helpful but could elaborate on how to obtain the name.

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 (list), the resource (participants and their sessions), and the scope (for a conference record). It distinguishes itself from sibling tools like meet_list_participant_sessions by focusing on participants rather than sessions alone.

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 such as meet_list_participant_sessions or meet_list_conference_records. It only states the function without any context on prerequisites, exclusions, or conditions.

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

meet_list_participant_sessionsB

List sessions for a specific participant in a conference.

ParametersJSON Schema
NameRequiredDescriptionDefault
participant_nameYes
conference_record_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 is responsible for disclosing behavioral traits. It implies a read-only operation via 'List' but does not explicitly state that it doesn't modify data, nor does it mention permission requirements or potential failure modes like missing participant/conference. This is a notable gap.

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 a single, front-loaded sentence that conveys the core purpose without unnecessary words. It is appropriately sized for a straightforward tool.

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?

Although an output schema exists and the tool is simple, the description lacks guidance on parameter semantics and behavioral context. With no annotations, the overall information is thin; a user is left to guess about prerequisites and edge cases, making the description incomplete for a production tool.

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 compensate. It only says 'specific participant in a conference', which aligns with the parameter names but adds no detail about formats, how to find conference_record_name, or what qualifies as a participant. The parameter names themselves are self-explanatory, yet the description doesn't enrich them.

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 ('List') and resource ('sessions for a specific participant in a conference'), clearly identifying the tool's function. It is distinct from sibling tools like meet_list_participants and meet_list_conference_records by focusing on participant-specific sessions.

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 needing sessions for a participant but does not explicitly state when to choose it over alternatives such as meet_list_participants or meet_list_conference_records. No exclusions or preconditions are mentioned, though the context makes the primary scenario clear.

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

sheets_add_chartC

Add a chart. Types: BAR, LINE, AREA, COLUMN, SCATTER, COMBO, STEPPED_AREA.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNo
sheet_idYes
chart_typeYes
data_rangeYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

The description provides no information about side effects, required permissions, placement of the chart, or return values. Since no annotations are present, the description carries the full burden of behavioral disclosure, but it only states the action and chart types. This is insufficient for an agent to anticipate what the tool actually does beyond the basic 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 short and front-loaded: one sentence plus a list of chart types. It wastes no words and quickly conveys the core purpose. However, the extreme brevity might be seen as under-specification, but conciseness as a dimension rewards efficient wording, which this achieves.

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, no annotations, no enum definitions) and the existence of an output schema, the description is insufficient. It does not explain input formats, chart placement, or how the chart relates to the spreadsheet structure. The description adds minimal context beyond the tool name and a type list, making it incomplete for reliable 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?

With schema description coverage at 0%, the description must clarify parameter meanings, but it only partially addresses chart_type by listing valid values. It does not explain spreadsheet_id, sheet_id, data_range, or title semantics, leaving most parameters ambiguous. The agent would need to guess what data_range format to use or what sheet_id refers to.

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's function: 'Add a chart.' Listing the supported chart types (BAR, LINE, AREA, etc.) adds specificity and distinguishes it from other 'sheets_add_*' tools like sheets_add_sheet or sheets_add_conditional_format. However, it could more explicitly state that the chart is added to a specific sheet within a spreadsheet, which is only implied by the parameter names.

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 such as sheets_add_sheet or slides_add_sheets_chart. The description merely lists chart types, so it does not explain the context of use, prerequisites, or exclusions. This leaves the agent to infer usage from the tool name alone.

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

sheets_add_conditional_formatC

Add conditional formatting. rule_type: NUMBER_GREATER, TEXT_CONTAINS, CUSTOM_FORMULA, BLANK, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
valuesYes
end_colYes
end_rowYes
bg_colorNo#FF0000
sheet_idYes
rule_typeYes
start_colYes
start_rowYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosing behavioral traits. It fails to mention whether this tool overwrites existing conditional formatting, requires specific permissions, or returns any confirmation. The only behavior implied is 'add', and the rule_type list is minimal context.

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, stating the purpose in the first sentence and following with rule type examples. It contains no fluff, though the brevity sacrifices useful detail. Still, it is well-structured for the minimal content it provides.

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?

For a complex tool with 9 parameters, no annotations, and zero schema descriptions, the description is far too sparse. Even with an output schema present, the agent lacks critical information about request construction, parameter formatting, and expected behavior, making the tool difficult to invoke correctly.

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 only offers examples for rule_type (NUMBER_GREATER, TEXT_CONTAINS, CUSTOM_FORMULA, BLANK, etc.) and provides no meaning or usage guidance for values, bg_color, range coordinates, or other required parameters. This is insufficient for a 9-parameter tool.

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's function with a specific verb and resource ('Add conditional formatting') and provides examples of rule types, distinguishing it from generic formatting tools. However, it does not explicitly name any sibling alternatives, so it stops short of full differentiation.

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 given on when to use this tool versus alternatives like sheets_format_cells or sheets_set_data_validation. There are no usage conditions, exclusions, or references to sibling tools, leaving the agent without context for tool selection.

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

sheets_add_named_rangeC

Create a named range in a spreadsheet.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
end_colYes
end_rowYes
sheet_idYes
start_colYes
start_rowYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

There are no annotations, so the description must bear the burden of behavioral disclosure. It only mentions 'create' which implies a write operation, but does not disclose side effects like overwriting existing ranges, coordinate conventions, or required permissions. This 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 a single, clear sentence with no unnecessary words. It is appropriately concise for the stated purpose, but the extreme brevity leaves out essential details, which slightly lowers the score from a perfect 5.

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?

For a tool with 7 required parameters, no annotations, and no parameter descriptions, the description is far too incomplete. It does not specify coordinate systems, how sheet_id relates to spreadsheet_id, or any output behavior. Even with an output schema present, the input semantics are severely underdocumented.

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

Parameters1/5

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

With schema description coverage at 0%, the description must explain the 7 parameters, but it does not. Parameter names like start_row and end_col are self-explanatory to humans, but the lack of any added detail (e.g., 1-based indexing, boundary inclusivity, or spreadsheets API conventions) leaves agents guessing. The description adds no 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 the action ('Create') and the resource ('a named range in a spreadsheet'). It is specific enough to distinguish this from sibling tools like sheets_add_protected_range or sheets_add_sheet, as it uniquely targets named ranges.

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 instead of others, no prerequisites, and no context about spreadsheet or sheet requirements. It simply states the action without any usage direction.

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

sheets_add_sheetB

Add a new sheet/tab to a spreadsheet.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for behavioral disclosure. It only states the basic effect and omits context such as required permissions, position of the new sheet, behavior on duplicate titles, 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.

Conciseness5/5

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

The description is a single, well-structured sentence that is front-loaded with the action and resource. It is appropriately concise with 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 add operation, the description and schema are minimally adequate, but the description lacks usage context, alternative clarifications, and behavioral details. The presence of an output schema helps, but the lack of any guidance on when to use it or what happens on conflict makes it incomplete.

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% and the description does not mention parameter names, formats, or meanings. The phrase 'to a spreadsheet' vaguely implies spreadsheet_id and 'new sheet/tab' implies title, but the description does not add meaningful detail beyond the schema field names.

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 ('Add'), the resource ('a new sheet/tab'), and the target ('to a spreadsheet'). This distinguishes it from sibling tools like sheets_create (which creates a spreadsheet) and sheets_delete_sheet (which removes a sheet).

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, nor does it mention prerequisites or exclusions. Sibling tools like sheets_duplicate_sheet and sheets_create exist, but the description does not clarify how this tool fits.

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

sheets_appendB

Append rows to a Google Sheet after existing data.

ParametersJSON Schema
NameRequiredDescriptionDefault
rangeYes
valuesYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. It states the append action but does not mention authentication requirements, reversibility, potential side effects, or error conditions. The description is too minimal to adequately inform an agent about the tool's runtime behavior.

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 a single, focused sentence that clearly states the action and context. It is front-loaded with the primary verb and object, contains no redundant wording, and every word 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?

Although this is a relatively simple append operation, the description lacks essential context for an agent, such as what 'range' should specify (e.g., a sheet name or a starting cell), the exact format of 'values' (array of arrays), and any constraints or edge cases. The presence of an output schema does not compensate for the sparse parameter 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%, and the description does not elaborate on any parameters. It mentions 'rows' which hints at the 'values' parameter, but gives no details on the expected structure of 'values' or the meaning of 'range' and 'spreadsheet_id'. The description adds minimal value beyond the parameter names.

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 function with a specific verb ('Append') and resource ('rows to a Google Sheet'), and explicitly notes the action occurs 'after existing data,' which distinguishes it from similar operations like overwriting. This effectively differentiates it from sibling tools such as sheets_write or sheets_clear.

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 the primary use case (adding new rows at the end of a sheet) but does not explicitly state when to prefer this over alternatives like sheets_write or sheets_batch_update. No exclusions or alternative tools are mentioned, so guidance is limited to what can be inferred.

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

sheets_batch_updateA

Write to multiple ranges in one request. data: [{"range": "A1", "values": [[...]]}].

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.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 carries the full burden. It explicitly indicates a write operation, but discloses no information about authentication requirements, overwrite semantics, error behavior, or rate limits. The data example is helpful but does not explain the full behavioral contract of the mutation.

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 a single sentence with a compact inline example. It is front-loaded with the core action and includes just enough detail to convey the data format. No extraneous 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?

Given the simplicity of the tool, the description provides a basic understanding, but it leaves gaps. It does not clarify whether the write overwrites existing values, whether ranges must be in A1 notation, or how errors from partial failures are handled. The presence of an output schema reduces the need to explain return values, but the data format and constraints are still under-specified.

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 schema provides no parameter descriptions (0% coverage), so the description compensates by illustrating the data parameter structure with an inline example. This clarifies that data should be an array of objects with 'range' and 'values' fields. The spreadsheet_id parameter is self-evident from its name.

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 writes to multiple ranges in one request, using a specific verb and resource. This distinguishes it from single-range write tools like sheets_write and raw_batch_update. The inclusion of a data format example further clarifies the tool's purpose.

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

Usage Guidelines4/5

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

The description implies the tool is for batching multiple range writes into a single request, which provides clear context on when to use it. However, it does not explicitly mention alternatives or exclusions, such as when to prefer sheets_write or sheets_raw_batch_update.

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

sheets_clearB

Clear values from a range in a Google Sheet.

ParametersJSON Schema
NameRequiredDescriptionDefault
rangeYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must fully disclose behavioral traits, but it only states that values are cleared. It does not mention whether the operation is irreversible, whether formatting or styles are affected, or if specific permissions are required. For a mutating tool, this is a significant gap.

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 a single, focused sentence with no filler or redundant information. It is appropriately concise and immediately readable, making it easy for an agent to parse.

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?

For a simple but destructive tool with no annotations, the description is under-specified. It does not cover edge cases like whether formatting is preserved, how the range should be formatted, or any side effects. The presence of an output schema does not alleviate the need for basic operational context.

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 provides zero description for the two parameters, and the description does not compensate. It mentions 'range' and 'Google Sheet' but does not explain the expected format for the range (e.g., A1 notation) or any additional semantics for spreadsheet_id. The description adds minimal value over the bare property names.

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 a specific verb ('clear') and resource ('a range in a Google Sheet'), explicitly limiting the action to values. This distinguishes it from sibling tools like sheets_write or sheets_append, which write or append data, making the purpose 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 is provided on when to use this tool versus alternatives (e.g., sheets_write, sheets_append, sheets_merge_cells). The description does not mention exclusions, prerequisites, or scenarios where another tool would be more appropriate. The context is entirely absent.

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

sheets_createA

Create a new Google Spreadsheet with optional custom sheet/tab names.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes
sheet_namesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/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 core action. It does not disclose behavioral traits such as required auth, side effects (e.g., whether existing data is overwritten), response format, or any defaults. For a mutation tool without annotations, this level of disclosure 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.

Conciseness5/5

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

The description is a single, front-loaded sentence that efficiently communicates the purpose and optional parameter without redundancy. Every word contributes meaning.

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 tool is relatively simple, and the description covers its basic purpose and optional parameter. However, with no annotations and no usage guidance, the context is incomplete for an agent needing to know prerequisites, side effects, or when to prefer alternatives. The existence of an output schema mitigates some missing return-value detail, but not enough to raise the score.

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?

Since schema description coverage is 0%, the description must compensate. It does add meaning by indicating 'title' is the spreadsheet name and 'sheet_names' are custom sheet/tab names, but it does not clarify parameter types, array formats, or defaults beyond what the schema already provides in property names.

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 'Create a new Google Spreadsheet with optional custom sheet/tab names' uses a specific verb ('Create') and resource ('Google Spreadsheet'), clearly distinguishing it from sibling tools like sheets_add_sheet which adds to an existing spreadsheet. It also mentions the optional custom sheets, making the tool's function immediately obvious.

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 clearly implies use when creating a new Google Spreadsheet, which provides clear context. However, it does not explicitly mention alternatives or when not to use it, such as distinguishing from sheets_add_sheet for adding tabs to an existing spreadsheet.

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

sheets_delete_sheetA

Delete a sheet/tab (by numeric sheet ID, not name).

ParametersJSON Schema
NameRequiredDescriptionDefault
sheet_idYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

With no annotations, the description carries the burden of warning about destructiveness. It does convey that the operation deletes a sheet, implying data loss, but does not disclose irreversibility, permission requirements, or effects on dependent formulas. The added 'not name' clarification is useful behavioral guidance beyond the 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?

The description is a single concise sentence, immediately front-loaded with the primary verb and resource. Every word earns its place, and the parenthetical clarification is compact and useful.

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?

The tool is simple (two required parameters) and has an output schema covering return values, so the description need not explain results. It addresses the main usage trap (ID vs name). Minor gaps include lack of an explicit warning about irreversibility or permission needs, but for a straightforward delete operation, the description is sufficiently complete.

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 clarifies that sheet_id is a numeric identifier and not a sheet name, which adds value beyond the integer type in the schema. However, it does not elaborate on spreadsheet_id, which remains self-explanatory from its name. Overall, partial compensation for the missing schema descriptions.

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 ('Delete') and the resource ('a sheet/tab'), and adds a critical differentiator ('by numeric sheet ID, not name') that distinguishes this from other potentially similar operations like sheets_delete_dimension. The verb+resource combination 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 Guidelines4/5

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

The phrase 'by numeric sheet ID, not name' implicitly instructs the agent on how to correctly specify which sheet to delete, preventing a common mistake. It does not explicitly name alternative tools or exclusions, but the clarification provides context for when this tool is appropriate (deleting an entire sheet, not rows/columns).

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

sheets_get_infoA

Get spreadsheet metadata — title, sheets/tabs, row and column counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/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 says 'Get', implying a read-only operation, and lists what is returned, which is helpful. However, it does not explicitly state that it does not modify the spreadsheet, nor does it disclose any permission requirements or error behavior. For a simple getter, this is acceptable but not exhaustive.

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 a single concise sentence with the main action front-loaded ('Get spreadsheet metadata') and concrete examples following. No unnecessary words or repetition.

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 (1 parameter) and the presence of an output schema, the description captures the essential behavior. It does not explain what happens with invalid IDs or permissions, but those are not critical for a basic metadata getter, and the output schema covers return values. Some mention of spreadsheet identifier format could have bumped this to 5.

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% description coverage for the single parameter spreadsheet_id. The description does not provide any additional meaning about the parameter, such as accepted formats (e.g., URL vs ID) or how to obtain it. The parameter name is self-explanatory, but the description should compensate for the schema gap and does not.

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: 'Get spreadsheet metadata' followed by specific examples (title, sheets/tabs, row and column counts). This uses a specific verb and resource, and is distinct from sibling tools like sheets_read which would handle cell values, not metadata.

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?

Usage context is implied by the phrase 'spreadsheet metadata' and the listed return items, which suggests using this for structural information rather than cell data. However, there is no explicit statement of when to use vs alternatives or exclusions, so it relies on the reader to infer the intended use case.

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

sheets_merge_cellsB

Merge cells in a sheet. Indices are 0-based, end is exclusive.

ParametersJSON Schema
NameRequiredDescriptionDefault
end_colYes
end_rowYes
sheet_idYes
start_colYes
start_rowYes
merge_typeNoMERGE_ALL
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must carry the full burden of behavioral disclosure. It mentions that indices are 0-based and end is exclusive, but omits critical side effects like the fact that merging typically keeps only the top-left value, potentially discarding other data. No authentication or error behavior is discussed.

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 consists of two concise sentences with no wasted words. It front-loads the core purpose and adds a key detail about index semantics, making it appropriately sized for a straightforward operation.

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?

For a mutation tool with 7 parameters and no annotations, the description is too thin. It leaves out essential behavioral context about merge outcomes, data preservation, and prerequisites. The output schema exists, but that does not compensate for the missing operational details.

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 compensate. The indexing note partially clarifies start_row, end_row, start_col, and end_col, but merge_type is entirely unexplained, and the parameter semantics are otherwise left to inference from the schema names alone.

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 'Merge cells in a sheet' with a specific verb and resource, distinguishing it from related operations like sheets_unmerge_cells. It also adds useful indexing details that clarify the exact operation 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?

There is no guidance on when to use this tool versus alternatives such as sheets_unmerge_cells or sheets_batch_update. The only implied usage is from the operation name itself, with no explicit exclusions or prerequisites.

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

sheets_readA

Read values from a Google Sheet. Use A1 notation for ranges (e.g. 'Sheet1!A1:D10').

ParametersJSON Schema
NameRequiredDescriptionDefault
rangeNoSheet1
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the burden. It states the read operation and the A1 notation requirement, which is useful. However, it does not disclose other behavioral aspects such as whether formulas or calculated values are returned, or any potential side effects (though likely none).

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 a concise two sentences, front-loaded with the main purpose followed by a usage example. Every word earns its place, with no filler or repetition.

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

Completeness4/5

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

For a simple read tool with an output schema available, the description covers the essential usage: what it does and how to specify the range. It could mention return values, but since output schema exists, that is not necessary. The tool is adequately specified for its 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?

Schema description coverage is 0%, but the description compensates by explaining the 'range' parameter with an A1 notation example. The 'spreadsheet_id' parameter is self-explanatory given the tool name and context. This adds meaning beyond the raw 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's purpose: 'Read values from a Google Sheet.' The verb 'read' and resource 'Google Sheet' are specific, and the A1 notation example further clarifies the action. It is distinguishable from sibling tools like sheets_write or sheets_append.

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 you want to read values from a sheet, but it does not explicitly mention alternatives or when not to use it. No exclusions or comparisons to sibling tools are provided, leaving the guidance mostly implicit.

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

sheets_writeC

Write values to a Google Sheet. Values is a 2D array like [['Name','Age'],['Alice',30]].

ParametersJSON Schema
NameRequiredDescriptionDefault
rangeYes
valuesYes
spreadsheet_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/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 mentions the format of values but does not state whether this overwrites existing data, how the range is interpreted, or any side effects. This is insufficient for a write operation.

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 succinct, with the core action in the first sentence and a helpful example in the second. No superfluous information, and every word serves a purpose.

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 has three required parameters and no annotations, the description is under-specified. It omits critical operational details like range syntax and overwrite behavior, making it difficult for an agent to use correctly without additional information. The presence of an output schema does not compensate for these usage gaps.

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 meaning to the 'values' parameter with a concrete 2D array example, which is helpful given 0% schema description coverage. However, it does not explain the format of 'range' (e.g., 'Sheet1!A1:B2') or how 'spreadsheet_id' should be specified (ID vs. URL), so compensation is partial.

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 writes values to a Google Sheet with a specific verb and resource. However, it does not differentiate from the sibling tool sheets_append, which also writes values, so it loses a point for not distinguishing between overwriting and appending.

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 like sheets_append or sheets_clear. The context of use and exclusions are entirely absent, leaving the agent to infer applicability.

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

slides_add_slideB

Add a slide. Layouts: BLANK, CAPTION_ONLY, TITLE, TITLE_AND_BODY, TITLE_AND_TWO_COLUMNS.

ParametersJSON Schema
NameRequiredDescriptionDefault
layoutNoBLANK
insertion_indexNo
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries full burden for behavioral disclosure. It only lists layout options and does not explain the behavior of insertion_index (e.g., default appends to end), impact on existing slides, or any side effects beyond adding a slide.

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 and front-loaded: the first sentence states the action, the second lists the layouts. Every word contributes 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?

For a simple slide-adding tool, it covers the core action and layout values, and an output schema likely explains return values. However, it misses usage guidance and insertion_index behavior, making it adequate but with clear gaps.

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 value by enumerating the allowed layout values, which are not present as enums in the schema. However, it does not explain the presentation_id or insertion_index semantics, and with 0% schema coverage, this leaves two of three parameters undocumented.

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 ('Add a slide') and identifies the resource type. Listing the valid layouts adds specificity and distinguishes it from siblings like slides_duplicate_slide or slides_delete_slide.

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. The description does not mention exclusions, prerequisites, or situations favoring another tool such as slides_duplicate_slide for copying an existing slide.

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

slides_add_textA

Add text to a slide. Creates a new text box if shape_id is empty.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes
shape_idNo
slide_idYes
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It mentions the creation of a text box when shape_id is empty, which is useful. But it does not specify whether text appends or replaces existing text in a shape, nor any other side effects, which is a gap 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.

Conciseness5/5

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

The description is two concise sentences, front-loaded with the primary action and then the key conditional behavior. No redundant or filler content.

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 covers the core operation and the shape_id variant, but leaves ambiguity about overwrite vs. append behavior for existing shapes and lacks explicit differentiation from slides_set_text. The output schema exists, so return values are not required, but the behavioral gaps reduce 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?

Schema descriptions are absent (0% coverage), so the description must compensate. It explains shape_id's conditional role, but presentation_id, slide_id, and text are only self-evident by name. The description only partially compensates for the missing schema metadata.

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 ('Add text to a slide') and the specific resource ('text'). It also differentiates from siblings like slides_set_text by noting it creates a new text box if shape_id is empty, which is a distinct usage scenario.

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 implies usage context: provide shape_id to add to an existing shape, leave it empty to create a new text box. However, it does not explicitly mention alternatives or when to prefer this tool over slides_set_text, so it has clear context but no exclusions.

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

slides_createC

Create a new Google Slides presentation.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. It only says 'Create' without mentioning side effects, return values, permissions, or whether the presentation is empty or has default content. For a mutation tool, this is insufficient transparency.

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 a single, direct sentence that is front-loaded and free of fluff. It is appropriately concise for the tool's simplicity.

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?

Although an output schema exists, the description is still incomplete. It does not clarify whether the tool creates an empty presentation, how the title is used, or any side effects. A more complete description would mention that a new blank presentation is created with the given title.

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

Parameters1/5

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

The description completely ignores the sole 'title' parameter. With 0% schema description coverage, the agent has no hints about what 'title' means (e.g., presentation name, slide headline, or file name). The description fails to add any parameter semantics.

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 ('Create') and the resource ('a new Google Slides presentation'), making it distinct from sibling tools like slides_add_slide or slides_add_text. It unambiguously identifies the tool's primary function.

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 such as slides_add_slide or docs_create. It does not state any prerequisites, context, or exclusions, leaving the agent without decision-making information.

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

slides_format_textB

Format text within a shape on a slide (bold, italic, size, color).

ParametersJSON Schema
NameRequiredDescriptionDefault
boldNo
italicNo
shape_idYes
end_indexYes
font_sizeNo
underlineNo
start_indexYes
presentation_idYes
foreground_colorNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of disclosing behavioral expectations. It does not state that formatting applies only to the specified text range, what happens if indices are invalid, or whether existing formatting is overridden. Critical side effects and preconditions (e.g., shape must contain text) are not mentioned.

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 a single sentence that front-loads the core purpose and lists key formatting options with zero redundancy. It is highly concise and well-structured.

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 (9 parameters, 0% schema coverage) and the range of sibling tools, this description is insufficiently complete. It does not explain how indices map to text ranges, what the output schema contains, or any limitations or error conditions. The sparse text leaves the agent without enough information to correctly invoke the tool in varied contexts.

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 should compensate for missing parameter explanations. It only lists broad formatting categories (bold, italic, size, color) and does not clarify the meaning of required parameters like start_index and end_index (e.g., whether these are character offsets) or the expected format for foreground_color. This leaves essential parameter semantics ambiguous.

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 function: 'Format text within a shape on a slide (bold, italic, size, color).' It uses a specific verb (format) and resource (text within a shape on a slide), and enumerates the formatting attributes. This distinguishes it from sibling tools like slides_set_text (which replaces text) and slides_insert_bullets (which adds bullets).

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 the tool is used for formatting text in a slide shape, but it does not provide explicit comparisons or exclusions relative to alternative tools. There is no guidance on when to prefer this over slides_set_text or how to handle cases like formatting only a portion of text versus all text. The context is somewhat clear from the description alone, but explicit alternative usage is absent.

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

slides_get_thumbnailC

Get a thumbnail image URL for a slide.

ParametersJSON Schema
NameRequiredDescriptionDefault
slide_idYes
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are present, and the description does not disclose behavioral traits such as whether the thumbnail URL is temporary, whether authentication is required, or any potential side effects. It only states what the tool returns.

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 a single, front-loaded sentence with no filler. Every word earns its place and conveys the core action precisely.

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 simplicity, an output schema exists and the description is accurate, but it is too terse to be fully complete. It lacks any context about when to use it, what the thumbnail URL is for, or any constraints, leaving an agent to infer behavior.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain the purpose or format of presentation_id or slide_id. The description adds no value beyond the parameter names in 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 a specific verb ('Get') and resource ('a thumbnail image URL for a slide'), distinguishing it from sibling tools that handle slide content, text, or layout.

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, such as slides_read or slides_list_elements. The intended usage is only implied by the description.

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

slides_insert_imageC

Insert an image onto a slide from a URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
x_ptNo
y_ptNo
slide_idYes
width_ptNo
height_ptNo
image_urlYes
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure. It only states the basic action and source/target, but does not disclose default positioning/sizing behavior, whether the image must be publicly accessible, error cases, or any side effects. This is minimal and insufficient for a mutation-like 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 a single concise sentence with no filler words. It front-loads the main action and object, making it easy to scan. Every word earns its place, and the brevity is appropriate for a simple operation.

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 having an output schema, the description is too minimal for a tool with 7 parameters and zero schema descriptions. It doesn't explain optional positioning/sizing parameters or any behavioral caveats. The description alone is not enough for an agent to call the tool correctly beyond the obvious required fields.

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

Parameters1/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 compensate for parameter semantics. It only hints at image_url ('from a URL') and slide_id ('onto a slide'), but provides no explanation of presentation_id, x_pt, y_pt, width_pt, or height_pt. The defaults visible in the schema are not mentioned, leaving the parameter meanings entirely to the agent's inference from property names.

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 ('Insert'), the target resource ('image onto a slide'), and the source ('from a URL'). This distinguishes it from similar slide tools like slides_insert_video and slides_insert_shape, and from docs_insert_image by specifying 'slide'.

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 given on when to use this tool versus alternatives such as slides_insert_video or docs_insert_image. The description does not mention exclusions, prerequisites, or scenarios where a different tool would be more appropriate.

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

slides_insert_shapeB

Insert a shape (RECTANGLE, ELLIPSE, TRIANGLE, STAR, ARROW_EAST, etc) onto a slide.

ParametersJSON Schema
NameRequiredDescriptionDefault
x_ptNo
y_ptNo
slide_idYes
width_ptNo
height_ptNo
shape_typeNoRECTANGLE
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for behavioral disclosure. It only says 'Insert a shape' and does not mention side effects, error behavior, constraints (e.g., valid shape types beyond examples), or whether the operation is additive. This is a significant gap 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 a single sentence with no waste, front-loading the core action. It is concise and easy to parse. However, it might be slightly too terse given the tool's complexity, but this is a minor deduction.

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?

For a tool with 7 parameters, no per-parameter descriptions, and no annotations, this description is incomplete. It does not explain expected inputs (like coordinate system or required IDs), the return value, or any prerequisites. The output schema exists but does not compensate for missing high-level context.

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%, and the description does not compensate. It only lists a few shape types, but fails to explain the meaning or units of x_pt, y_pt, width_pt, height_pt, or the roles of presentation_id and slide_id. The defaults in the schema are not surfaced in a way that clarifies their semantics.

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 inserts a shape onto a slide, with a specific verb ('Insert') and resource ('a shape'), and distinguishes it from sibling tools like slides_insert_image, slides_insert_table, and slides_insert_video. The mention of example shape types further clarifies the tool's scope.

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 when to use the tool—when inserting a shape—but provides no explicit guidance on when not to use it or how to choose between alternatives. It does differentiate from sibling insert tools but lacks direct usage context or exclusions.

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

slides_insert_tableC

Insert a table onto a slide.

ParametersJSON Schema
NameRequiredDescriptionDefault
rowsYes
x_ptNo
y_ptNo
columnsYes
slide_idYes
width_ptNo
height_ptNo
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.5/5.0
Behavior1/5

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

Without any annotations, the description carries the full burden of behavioral disclosure. It only states the action and does not mention side effects, position/size defaults, error conditions, or whether the operation is additive. This is a significant transparency gap 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 a single sentence with no wasted words, making it very concise and front-loaded. However, the brevity borders on under-specification, though that is penalized in other dimensions. Structure is acceptable for a simple statement.

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

Completeness1/5

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

Given the tool has 8 parameters, no annotations, and no schema descriptions, the description is severely incomplete. Even though an output schema exists, the description does not explain how the table is positioned or sized, or that it requires an existing slide context. This is far below the minimum viable description.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not provide any parameter details. It does not explain the meaning of rows, columns, x_pt, y_pt, width_pt, height_pt, or the IDs. The agent receives no guidance beyond the bare names in 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 'Insert a table onto a slide' uses a specific verb (insert) and a specific resource (table onto a slide). It clearly distinguishes from sibling tools like slides_insert_shape or slides_insert_image, which target different object types.

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?

There is no guidance on when to use this tool versus alternatives beyond the basic action. No mention of prerequisites like needing an existing presentation/slide, nor any exclusions. The description is too sparse to help an agent decide between this and related insert tools.

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

slides_insert_videoC

Insert a YouTube video onto a slide. video_id is the YouTube video ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
x_ptNo
y_ptNo
slide_idYes
video_idYes
width_ptNo
height_ptNo
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carries the full burden of behavioral disclosure, but it only states the basic action. It does not mention requirements such as video accessibility, embedding behavior, or side effects on the slide.

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 very short and front-loaded, with no wasted words. However, it is almost too terse, omitting explanations that would be expected for a 7-parameter tool.

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 having an output schema, the input context is incomplete. With 7 parameters and no annotations, the description fails to explain critical positional and sizing parameters, making it difficult for an agent to invoke the tool correctly.

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%, and the description only explains one parameter ('video_id is the YouTube video ID'), leaving all other parameters like x_pt, y_pt, width_pt, and height_pt unexplained. This does not sufficiently compensate for the lack of schema descriptions.

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 'Insert a YouTube video onto a slide' uses a specific verb and resource, clearly distinguishing it from sibling tools like slides_insert_image or slides_insert_shape.

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, nor any prerequisites or exclusions. The description simply states the action without context.

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

slides_readB

Read a presentation's metadata and text content from all slides.

ParametersJSON Schema
NameRequiredDescriptionDefault
presentation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/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 transparency burden. It does state that this is a read operation and covers all slides, which implies non-destructive behavior, but it lacks detail about potential side effects, permissions, or what 'metadata' includes.

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?

A single sentence that is front-loaded with the verb and object. Every word serves a purpose; 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?

For a simple, one-parameter read tool with an output schema, the description conveys the core function and scope. However, it lacks any mention of exclusions (e.g., do speaker notes count as text?) or alternative tools, making it minimally complete rather than comprehensive.

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 input schema has a single parameter, presentation_id, with 0% description coverage. The description does not reference the parameter or add context beyond the schema's obvious 'presentation_id' name, so it fails to compensate for the low 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 uses the clear verb 'Read' and specifies the resource: 'a presentation's metadata and text content from all slides.' This distinguishes it from mutation tools like slides_set_text and from more granular tools like slides_list_elements, making the purpose 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?

There is no guidance on when to use this tool versus alternatives such as slides_list_elements or docs_read. The description only states what it does, leaving the agent to infer usage context.

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

tasks_clear_completedB

Clear all completed tasks from a task list.

ParametersJSON Schema
NameRequiredDescriptionDefault
tasklist_idNo@default

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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. 'Clear' implies deletion but the description does not state that the operation is destructive/irreversible, what effects it has on the task list, or any permissions needed, so behavioral disclosure is 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?

A single sentence of 8 words, with no filler. It is front-loaded with the action and resource, and every word 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?

While the tool is simple, the description lacks critical context: it does not mention the input parameter's role, default behavior, or any side effects. An output schema exists but its content is not provided, so the description still needs to convey behavioral context. Overall, it covers the basic action but leaves important gaps.

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% for the sole parameter tasklist_id. The description vaguely references 'a task list' but does not explicitly map the parameter, explain the default '@default' value, or clarify required vs optional. Thus it fails to compensate for the missing schema details.

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 'Clear all completed tasks from a task list' uses a specific verb ('clear') and resource ('completed tasks'), and scopes it to a task list. It clearly distinguishes from siblings like tasks_delete (which might delete tasks individually) and tasks_update (which updates tasks).

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 doesn't mention that tasks_delete should be used for individual task removal or any exclusions/conditions, 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.

tasks_createA

Create a new task. Set parent for subtasks. Due date in RFC3339 format.

ParametersJSON Schema
NameRequiredDescriptionDefault
dueNo
notesNo
titleYes
parentNo
tasklist_idNo@default

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It does usefully state that setting parent creates a subtask and that due dates must be RFC3339, but it omits other behavioral details such as the handling of tasklist_id (which has a default of '@default') or any permissions/reversibility implications of creating a task.

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 only two sentences and front-loads the core action ('Create a new task'), followed by concise critical details. Every word earns its place with no fluff or repetition of schema 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?

The description covers the essential create action and two important parameter aspects, but given the tool has 5 parameters and no annotations, it should also explain the role of tasklist_id and perhaps note that parent expects a task ID. The output schema exists which covers return value, so that omission is not penalized. Overall, it is adequate but leaves clear gaps.

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 compensate by explaining all parameters. It only clarifies 'parent' (for subtasks) and 'due' (RFC3339 format), leaving 'title', 'notes', and 'tasklist_id' without additional meaning beyond their names and schema defaults. This is insufficient for a 5-parameter tool with no schema descriptions.

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 'Create a new task' with a specific verb and resource, distinguishing it from sibling tools like tasks_update, tasks_delete, and tasks_move. It also adds two concrete scoping details: 'Set parent for subtasks' and 'Due date in RFC3339 format', which help identify the tool's exact purpose.

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

Usage Guidelines4/5

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

The phrase 'Create a new task' provides clear context for when to use this tool, and the mention of parent and due date implies use cases for subtasks and dated tasks. However, it does not explicitly compare to alternatives such as tasks_create_tasklist or tasks_update, so it misses explicit exclusion guidance.

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

tasks_create_tasklistB

Create a new task list.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 says 'Create a new task list' without explaining side effects, required permissions, potential duplicates, or any other behavioral traits.

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 a single, short sentence that is immediately clear and front-loaded. Every word earns its place with no unnecessary content.

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 tool is simple with one parameter and an output schema, so the description is minimally viable. However, it lacks behavioral context and usage guidance, making it only adequate for a low-complexity tool.

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% and the description does not compensate by explaining the 'title' parameter. While the parameter name is fairly self-explanatory, the description adds no meaning beyond what the schema already provides.

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 ('Create') and resource ('a new task list'), clearly distinguishing this tool from sibling 'tasks_create' (which would create a task). It states exactly what the tool does.

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 when to create a task list vs. a task, nor any prerequisites or context.

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

tasks_deleteC

Delete a task.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYes
tasklist_idNo@default

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.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 does not disclose whether deletion is permanent, whether it affects subtasks, or if any permissions are required. The minimal phrase 'Delete a task' gives no behavioral context beyond the action itself.

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 very short, which is concise, but it is under-specified. It lacks necessary context, making it less useful than it could be while remaining within a single sentence.

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 having an output schema, the description does not cover important contextual aspects like deletion semantics (permanence, cascade effects), error conditions, or the role of the default tasklist_id. It is too minimal for a complete understanding.

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%, and the description does not explain the meanings of task_id or tasklist_id. The parameter names are somewhat self-explanatory, but the description adds no value beyond the schema fields themselves.

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 action (delete) and the resource (a task). It is unambiguous and aligns with the tool name, though it does not explicitly distinguish from sibling task tools like tasks_clear_completed or tasks_update.

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 such as tasks_update or tasks_clear_completed. Context of use is entirely absent.

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

tasks_listB

List tasks in a task list. Use '@default' for the primary list.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_resultsNo
tasklist_idNo@default
show_completedNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 must disclose behavioral traits. It only states the basic function and fails to mention default filtering behavior (e.g., show_completed defaults to false, meaning completed tasks are hidden) or any other operational details like pagination or ordering.

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 exceptionally concise, containing two sentences with no filler. It front-loads the core purpose and then provides the key usage tip about @default, demonstrating efficient communication.

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?

While an output schema exists, the description lacks important context such as the default task view (incomplete only) and how this tool relates to tasks_list_tasklists for discovering task list IDs. It is adequate for a simple list operation but leaves gaps for an agent to fully utilize the tool.

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?

With 0% schema description coverage, the description should compensate for all parameters. It only explains the special value '@default' for tasklist_id, leaving max_results and show_completed unexplained. The parameter names are somewhat self-evident, but the default behaviors are not clarified.

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 lists tasks within a task list, using a specific verb and resource. It differentiates from siblings like tasks_list_tasklists by specifying 'tasks in a task list' rather than task lists themselves.

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 a usage hint for the primary list ('Use @default') but does not explicitly contrast with alternatives like tasks_list_tasklists. Usage context is implied through the description but exclusions and alternative selection guidance are missing.

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

tasks_list_tasklistsA

List all Google Tasks task lists.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

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

Annotations are absent, so the description carries the full burden. It states 'all' task lists, implying an unfiltered read operation, but does not explicitly disclose read-only behavior, potential empty results, or any side effects. For a trivial listing, it is minimally sufficient but lacks depth.

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 a single concise sentence with no redundant filler. Every word earns its place, making it optimally sized for the tool's simplicity.

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 zero-parameter complexity and the presence of an output schema, the description fully covers the operation. It states what the tool does and the scope ('all'), leaving no additional behavior unexplained. No return-value details are needed because the output schema handles that.

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 zero parameters, so the baseline of 4 applies. The description adds no parameter-specific details because none exist; the schema already conveys everything (empty properties).

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 ('List') and resource ('Google Tasks task lists'), clearly distinguishing it from sibling tools like tasks_list (which lists tasks within a list) and tasks_create_tasklist (which creates a list). The scope 'all' adds precision, leaving no ambiguity about what is returned.

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. There is no mention of exclusions, prerequisites, or reference to sibling tools like tasks_list, making it unclear if the user needs the list of lists or the tasks within a specific list.

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

tasks_moveA

Move/reorder a task. Set parent to make it a subtask, previous to position after another task.

ParametersJSON Schema
NameRequiredDescriptionDefault
parentNo
task_idYes
previousNo
tasklist_idNo@default

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description must carry the full burden of behavioral disclosure. It does disclose the effects of 'parent' and 'previous' parameters. However, it omits side effects of moving (e.g., changes to task order), behavior when optional parameters are omitted, and whether this is a destructive operation. It adds some behavioral context but not enough to be fully transparent.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the core action ('Move/reorder a task') and then explains parameter semantics. Every sentence provides value without redundancy or filler. It is appropriately concise and well-structured.

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?

The tool has 4 parameters, no annotations, and an output schema, but the description still leaves significant gaps. It does not explain the default behavior of omitted optional parameters, the role of tasklist_id, or how the movement interacts with task lists. Given the bare schema, the description should provide more context to be considered complete, but it only addresses the two lateral parameters.

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 compensate for all parameters. It explains 'parent' and 'previous' but leaves 'task_id' and especially 'tasklist_id' (with a default of '@default') unexplained. An agent would not know the full range of values or the effect of omitting optional parameters. The description covers about half the parameters, which is insufficient given the complete absence of schema descriptions.

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 function with a specific verb and resource: 'Move/reorder a task.' It also explains the two key positional parameters (parent, previous), which distinguishes it from other task operations like tasks_update or tasks_create. This directly addresses what the tool does and how it differs from siblings.

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: you use this tool when needing to move or reorder a task, and it explains that setting parent creates a subtask, previous positions after another task. However, it does not explicitly state when not to use it or mention alternatives like tasks_update for field modifications. The context is clear but lacks explicit exclusions or alternative recommendations.

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

tasks_updateC

Update a task. Status can be 'needsAction' or 'completed'.

ParametersJSON Schema
NameRequiredDescriptionDefault
dueNo
notesNo
titleNo
statusNo
task_idYes
tasklist_idNo@default

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

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 carry full behavioral disclosure. It only reveals that status accepts 'needsAction' or 'completed', but omits whether omitted fields are preserved or overwritten, required permissions, or effects on other fields. This is a significant gap 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.

Conciseness5/5

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

The description is extremely concise, front-loaded with the action, and every sentence adds information. The second sentence provides concrete allowed status values without unnecessary elaboration.

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 having an output schema, the description is too thin for a 6-parameter mutation tool. It doesn't clarify the update semantics (partial vs full), handling of default values, or interrelationship with tasks_list/tasks_create. The tool's capabilities are drastically under-described.

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 compensate. It explains valid values for 'status' but leaves 'task_id', 'tasklist_id', 'due', 'notes', and 'title' unexplained. With 6 parameters and only 1 addressed, this is insufficient.

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?

'Update a task' uses a specific verb and resource, clearly indicating modification of an existing task. It distinguishes from sibling delete/move/create/list tools, though it doesn't explicitly address overlap with tasks_move or tasks_clear_completed.

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 vs alternatives. It doesn't mention prerequisites, exclusions, or suggest other tools for related operations. The description only states the action without contextual use cases.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 108 tool updatesv0.1.0
    • First observedcalendar_create_event
    • First observedcalendar_delete_event
    • First observedcalendar_freebusy
    • First observedcalendar_get_events
    • First observedcalendar_list_calendars
    • First observedcalendar_list_recurring_instances
    • First observedcalendar_quick_add
    • First observedcalendar_update_event
    • First observedcontacts_batch_create
    • First observedcontacts_batch_delete
    • First observedcontacts_create
    • First observedcontacts_create_group
    • First observedcontacts_delete
    • First observedcontacts_get_photo
    • First observedcontacts_list
    • First observedcontacts_list_groups
    • First observedcontacts_modify_group_members
    • First observedcontacts_search
    • First observedcontacts_update
    • First observeddocs_append_text
    • First observeddocs_create
    • First observeddocs_find_replace
    • First observeddocs_format_text
    • First observeddocs_insert_bullets
    • First observeddocs_insert_image
    • First observeddocs_insert_page_break
    • First observeddocs_insert_table
    • First observeddocs_insert_text
    • First observeddocs_read
    • First observeddrive_add_comment
    • First observeddrive_copy_file
    • First observeddrive_create_file
    • First observeddrive_create_folder
    • First observeddrive_delete_permission
    • First observeddrive_export
    • First observeddrive_list_comments
    • First observeddrive_list_folder
    • First observeddrive_list_permissions
    • First observeddrive_list_revisions
    • First observeddrive_read_file
    • First observeddrive_search
    • First observeddrive_share_file
    • First observeddrive_trash
    • First observeddrive_untrash
    • First observedforms_add_question
    • First observedforms_create
    • First observedforms_delete_question
    • First observedforms_list_responses
    • First observedforms_move_question
    • First observedforms_read
    • First observedforms_update_question
    • First observedforms_update_settings
    • First observedgmail_create_filter
    • First observedgmail_create_label
    • First observedgmail_delete_filter
    • First observedgmail_delete_label
    • First observedgmail_draft
    • First observedgmail_get_attachment
    • First observedgmail_get_vacation
    • First observedgmail_list_filters
    • First observedgmail_list_labels
    • First observedgmail_modify_labels
    • First observedgmail_read_message
    • First observedgmail_read_thread
    • First observedgmail_search
    • First observedgmail_send
    • First observedgmail_send_draft
    • First observedgmail_set_vacation
    • First observedgmail_trash
    • First observedgmail_untrash
    • First observedmeet_create_space
    • First observedmeet_end_conference
    • First observedmeet_get_artifacts
    • First observedmeet_get_space
    • First observedmeet_list_conference_records
    • First observedmeet_list_participant_sessions
    • First observedmeet_list_participants
    • First observedsheets_add_chart
    • First observedsheets_add_conditional_format
    • First observedsheets_add_named_range
    • First observedsheets_add_sheet
    • First observedsheets_append
    • First observedsheets_batch_update
    • First observedsheets_clear
    • First observedsheets_create
    • First observedsheets_delete_sheet
    • First observedsheets_get_info
    • First observedsheets_merge_cells
    • First observedsheets_read
    • First observedsheets_write
    • First observedslides_add_slide
    • First observedslides_add_text
    • First observedslides_create
    • First observedslides_format_text
    • First observedslides_get_thumbnail
    • First observedslides_insert_image
    • First observedslides_insert_shape
    • First observedslides_insert_table
    • First observedslides_insert_video
    • First observedslides_read
    • First observedtasks_clear_completed
    • First observedtasks_create
    • First observedtasks_create_tasklist
    • First observedtasks_delete
    • First observedtasks_list
    • First observedtasks_list_tasklists
    • First observedtasks_move
    • First observedtasks_update

TDQS

B3.2/5.0

Scored across 108 tools

Disambiguation5/5

Every tool follows a clear 'service_action' pattern and targets a distinct resource operation (e.g., Gmail search vs send vs draft). No overlapping tools exist; even within large services like Sheets, each action has a unique purpose.

Naming Consistency5/5

All tools use snake_case with consistent Google-service prefixes (gmail_, drive_, docs_, sheets_, etc.) followed by a descriptive action verb. The naming is uniform and predictable across all 108 tools.

Tool Count1/5

108 tools is an extreme count, far exceeding the 50+ threshold for 'extreme mismatch'. Even for a multi-service Google Workspace integration, this volume overwhelms agents and makes tool selection impractical.

Completeness5/5

Each service has broad CRUD/lifecycle coverage: Gmail covers send/read/labels/filters/vacation; Drive covers search/read/create/permissions/trash; Sheets covers read/write/format/charts; and Calendar covers events/freebusy/recurring. No obvious missing operations for typical workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

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