Skip to main content
Glama
tom275275

Google Workspace MCP Server

by tom275275

manage_contacts_batch

Perform batch operations to create, update, or delete Google contacts. Provide the user email, action, and specific contact details or IDs.

Instructions

Batch create, update, or delete contacts. Consolidated tool replacing batch_create_contacts, batch_update_contacts, and batch_delete_contacts.

Args: user_google_email (str): The user's Google email address. Required. action (str): The action to perform: "create", "update", or "delete". contacts (Optional[List[Dict[str, str]]]): List of contact dicts for "create" action. Each dict may contain: given_name, family_name, email, phone, organization, job_title. updates (Optional[List[Dict[str, str]]]): List of update dicts for "update" action. Each dict must contain contact_id and may contain: given_name, family_name, email, phone, organization, job_title. contact_ids (Optional[List[str]]): List of contact IDs for "delete" action.

Returns: str: Result of the batch action performed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
updatesNo
contactsNo
contact_idsNo
user_google_emailYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.14.3

TDQS

A4.3/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 behavioral disclosure burden. It explicitly names the create, update, and delete operations and states the return type, but it does not discuss permissions, partial failures, irreversibility of deletion, or what happens on invalid input. This is adequate but not deeply 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 front-loaded with a clear purpose statement, then organized into concise parameter explanations. No sentence is filler, and the Args block earns its place given the schema provides no property descriptions.

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 description covers all parameters, action-to-parameter mapping, required fields, allowed keys, and the return value. It does not explicitly state that the action-specific parameter is effectively required for that action despite being marked Optional in the signature, nor does it describe error behavior. Overall, it is nearly complete for correct invocation.

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

Parameters5/5

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

Schema description coverage is 0%, and the description fully compensates by explaining each parameter's purpose, which action it applies to, the valid action values, allowed contact fields, and the requirement that update dicts contain contact_id. This goes well 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 opening line, 'Batch create, update, or delete contacts,' uses a specific verb and resource and clearly describes the tool's consolidated scope. The note that it replaces batch_create_contacts, batch_update_contacts, and batch_delete_contacts distinguishes it from more granular sibling contact tools.

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 states that this is the consolidated batch tool and maps each action to the relevant parameter group. It does not explicitly say to use manage_contact for single-contact operations, but the batch framing and replacement note provide clear contextual guidance.

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

Deploy Server

Other Tools