Skip to main content
Glama

Accept/reject one or more suggestions

apply_suggestions

Resolve pending Google Docs suggestions in one atomic update: accept proposed text or reject to keep original. Handles overlapping or adjacent suggestions as a cluster and reports genuine conflicts.

Instructions

Resolve one or more pending suggestions (from list_suggestions) in ONE atomic update: accept keeps the proposed text, reject keeps the original. Pass one resolution to resolve a single suggestion, or several at once — required for suggestions that overlap or adjoin each other (a "cluster"), which cannot be resolved one at a time without corrupting neighbours. You MUST include every suggestion in any cluster you touch; a partially-resolved cluster is refused (status "incomplete"). documentTitle is checked against the live document first (status "wrong_doc" on mismatch, e.g. an id from a different, similarly-titled document). Copy each suggestion's preview from list_suggestions into its expectedChange (verified before applying). If the result includes a conflicts array, two suggestions genuinely conflicted (one inserts text inside another's deletion, both accepted) — it was auto-resolved by keeping the insertion; surface this to the user as NOT a clean merge.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tabNoTarget a specific tab by tabId or title (from list_tabs). Defaults to the first tab.
accountNoGoogle account email to use. Defaults to GDOCS_DEFAULT_ACCOUNT, or the sole account.
documentIdYesGoogle Doc id
resolutionsYesone entry per suggestion to resolve
documentTitleYesThe document's title, from list_suggestions. Shown for confirmation only.
Behavior5/5

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

Without annotations, the description discloses critical behaviors: atomic update, cluster requirement with 'incomplete' refusal, documentTitle live check returning 'wrong_doc', expectedChange verification, and conflicts array auto-resolution. It also instructs how to handle conflicts, ensuring transparency for a mutating 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 long but every sentence carries necessary information. It is structured logically: definition, usage guidance, constraints, verification, and conflict handling. No redundancy or filler—each detail earns its place for a complex tool.

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?

With no output schema, the description adequately covers expected statuses ('incomplete', 'wrong_doc') and the conflicts array behavior. It also references list_suggestions and list_tabs, fitting within the broader tool context. The tool's complexity is fully addressed, leaving no major gaps.

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

Parameters5/5

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

Although schema coverage is 100%, the description adds substantial meaning beyond the schema. It explains how to construct resolutions, specifically that expectedChange must contain the suggestion's preview from list_suggestions, and that documentTitle is checked against the live document. These operational details are essential for correct use.

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: 'Resolve one or more pending suggestions... accept keeps the proposed text, reject keeps the original.' It names the action (resolve/accept/reject), the resource (suggestions), and ties it to list_suggestions, distinguishing it from sibling tools.

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

Usage Guidelines5/5

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

Explicit guidance on when to use the tool: 'Pass one resolution to resolve a single suggestion, or several at once — required for suggestions that overlap or adjoin each other.' It also warns against partial cluster resolution, specifies must include every suggestion, and explains the wrong_doc status check, providing clear operational context.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dasasian/gdocs-mcp'

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