19 tools with consistently good naming (verb-prefix conventions followed), but descriptions vary in quality and completeness. Parameter schemas are well-defined with types and descriptions present for all tools. Output schemas are not explicitly documented in the source. Error handling is minimal, most tools lack recovery guidance or actionable error messages. Overall: solid foundational quality but gaps in error handling and output documentation.
Apply paragraph styling to a range.
Apply text styling to a range. Only the parameters you pass are changed; others are left untouched. Range indices come from `read_doc(format='json')`.
Duplicate a Google Doc. Useful for branded templates (proposals, reports). The new doc lives in the user's Drive. Requires drive.file scope.
Create a new Google Doc.
Create a new calendar event.
Delete a calendar event.
Output schemas not documented. Tool descriptions do not specify what fields are returned or the structure of results. LLMs cannot plan downstream calls or extract relevant data without knowing the response shape.
Error handling is absent or minimal. No recovery guidance in code. Tools do not indicate which errors are retryable, which require user intervention, or which are fatal. HttpError exceptions are caught but responses lack actionable guidance.
Destructive tools (delete_event) lack confirmation or dry-run support. No confirmation_request pattern to prevent accidental deletions.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 58 | <=2025-11-25 | v2 |
| 2026-03-09 | D | 58 | - | v1 |
Get full details of a specific calendar event.
Insert a horizontal rule (divider line) at the given index. Implemented as a paragraph with a bottom border, since the Docs API has no native horizontal-rule request.
Insert an inline image at the given index.
Insert a page break at the given index.
Insert a section break. Sections allow varying margins, columns, page orientation per region.
List all calendars the user has access to. Returns calendar ID, name, description, and access role.
List calendar events within a time window.
Rename a Google Doc. Requires drive.file scope.
Search Google Drive for Google Docs by name or content.
Update an existing calendar event. Only provided fields are changed.
Set the document header and/or footer. Note: The Docs API does NOT support inserting auto-updating page numbers. When `include_page_numbers=True`, the literal text " Page " is appended to the footer (or header if no footer_markdown) as a placeholder.
Update document-wide page setup.
Set the column count for a section. A section's start is at a section break (or document start). Use `read_doc(format='json')` to find sectionBreak elements and their indices.
Some tool descriptions are vague about side effects. delete_event description does not explicitly state the action is irreversible. update_event and create_event similarly lack emphasis on state modification.
No pagination support observed in list_events or search_docs. Both accept max_results but do not return pagination metadata (next_cursor, total_count, has_more). LLMs cannot handle large result sets safely.
Tool names 'copy_doc_from_template' and 'insert_page_break' are clear, but some parameters like 'index' in insert_image and insert_page_break lack concrete guidance on valid ranges or how to determine the index.