Skip to main content
Glama

google_api_call

Destructive

Invoke any Google Workspace REST method by Discovery ID when no dedicated tool exists. Find methods with google_api_search first.

Instructions

Invoke any Google Workspace REST method by Discovery id (escape hatch for operations without a dedicated tool). Find methods with google_api_search first. Subject to the same write-control policy as named tools. On reads, pass a fields query param (Google partial response) to keep the payload small. Returns JSON only — for binary/file content (media downloads, drive.files.export) use drive_download / drive_export instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
apiYesAPI alias: gmail, drive, calendar, sheets, docs, slides, forms, people, searchconsole, tasks, chat, meet, driveactivity, drivelabels, admin_directory, admin_reports, admin_datatransfer, groupssettings, analyticsadmin, analyticsdata, appsmarket, classroom, cloudidentity, cloudsearch, groupsmigration, keep, licensing, postmaster, reseller, script, vault, workspaceevents
bodyNoJSON request body
accountNoGoogle account alias (omit for the default account)
methodIdYesDiscovery method id, e.g. "drive.revisions.list"
pathParamsNoValues for {placeholders} in the method path
queryParamsNoQuery-string parameters; use an array for repeated params (e.g. resourceNames)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed9 schema fields changedv5.4.1
    • changedInput schema / properties / account / description
      Previous value: -"Google account alias"New value: +"Google account alias (omit for the default account)"
    • changedInput schema / properties / api / description
      Previous value: -"API alias: gmail, drive, calendar, sheets, docs, slides, forms, people, searchconsole, tasks, chat, meet, driveactivity, drivelabels, admin_directory, admin_reports, admin_datatransfer, groupssettings, appsmarket, classroom, cloudidentity, cloudsearch, groupsmigration, keep, licensing, postmaster, reseller, script, vault, workspaceevents"New value: +"API alias: gmail, drive, calendar, sheets, docs, slides, forms, people, searchconsole, tasks, chat, meet, driveactivity, drivelabels, admin_directory, admin_reports, admin_datatransfer, groupssettings, analyticsadmin, analyticsdata, appsmarket, classroom, cloudidentity, cloudsearch, groupsmigration, keep, licensing, postmaster, reseller, script, vault, workspaceevents"
    • addedInput schema / properties / api / maxLength
      Added value: +64
    • addedInput schema / properties / methodId / maxLength
      Added value: +256
    • addedInput schema / properties / methodId / minLength
      Added value: +1
    • removedInput schema / properties / pathParams / additionalProperties / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "number"
      -  }
      -]
    • addedInput schema / properties / pathParams / additionalProperties / type
      Added value: +[
      +  "string",
      +  "number"
      +]
    • changedInput schema / properties / queryParams / additionalProperties / anyOf
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "type": "boolean"
      -  },
      -  {
      -    "items": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "number"
      -        },
      -        {
      -          "type": "boolean"
      -        }
      -      ]
      -    },
      -    "type": "array"
      -  }
      -]New value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "type": "boolean"
      +  },
      +  {
      +    "items": {
      +      "type": [
      +        "string",
      +        "number",
      +        "boolean"
      +      ]
      +    },
      +    "type": "array"
      +  }
      +]
    • changedInput schema / required
      Previous value: -[
      -  "account",
      -  "api",
      -  "methodId"
      -]New value: +[
      +  "api",
      +  "methodId"
      +]
  2. First observedv0.0.0-semantically-released

TDQS

A4.4/5.0
Behavior4/5

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

Annotations declare destructive/openWorld/idempotent hints, so the safety profile is largely covered; the description still adds meaningful context the annotations don't — the tool is 'subject to the same write-control policy as named tools', returns 'JSON only', and advises a `fields` param on reads to limit payload. It stops short of permissions/error/rate-limit detail, so not a 5.

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?

Four tight sentences, all load-bearing: capability, discovery routing, policy note, read optimization, and output-type boundary. Front-loaded with the core purpose and no filler.

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 6-parameter, open-world mutation tool with no output schema, the description covers the key gaps: return format is JSON-only, the binary case is redirected, and the write-control policy is stated. It could say more about how methodId maps to path/query/body, but nothing essential is missing.

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 100%, so the parameters (api alias, methodId, pathParams, queryParams, body, account) are already documented in-schema. The description only adds the optional `fields` partial-response tip, which is helpful but marginal; baseline 3 is appropriate.

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?

States a specific verb (invoke) and resource (any Google Workspace REST method) plus the selection mechanism (Discovery method id), and explicitly frames itself as the escape hatch for operations without a dedicated tool. An agent can distinguish it from the *_discover and google_api_search siblings without opening any schema.

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

Usage Guidelines5/5

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

Explicitly routes the agent: 'Find methods with google_api_search first' for discovery, and 'for binary/file content (media downloads, drive.files.export) use drive_download / drive_export instead'. Both the when-to-use and the when-not-to-use alternative are named.

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