Skip to main content
Glama
A1-x-Tech

A1 Google Contacts MCP

Copy an Other contact into My Contacts

copy_other_contact

Copy an Other contact into your primary contacts. Pick which details to transfer, and get the new contact's resource name for continued editing.

Instructions

Copies an 'Other contact' (from list_other_contacts) into the user's saved contacts — the only write that exists for Other contacts. copy_mask picks which fields carry over (names, emailAddresses, phoneNumbers; default all three). Returns the NEW saved person — use its resourceName ('people/c...') for further edits; the original otherContacts entry remains. Copying the same entry twice creates duplicate saved contacts. Requires BOTH the contacts and contacts.other.readonly OAuth scopes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
copy_maskNoFields to copy into the new saved contact (default all three).
read_maskNoPerson fields to return (default names, emailAddresses, phoneNumbers, organizations, memberships). Only masked fields come back — an absent field may be unmasked, not empty.
resource_nameYesThe Other-contact's full resource name, e.g. "otherContacts/c123" — from list_other_contacts.
Behavior5/5

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

Goes well beyond the annotations: it explains that the operation returns the new saved person, that the original otherContacts entry remains, that duplicate executions create duplicates, and that two OAuth scopes are required. These are critical behavioral details not present in the boolean hints alone.

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?

Every sentence earns its place: the core operation, field-selection behavior, return-value guidance, side effects, duplicate risk, and scopes are packed into a compact but information-dense description. The key action is front-loaded.

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?

For a mutation tool with no output schema, the description covers the input source, the mask semantics, the return value's resourceName, the non-destructive nature, the idempotency caveat, and required permissions. Agents have enough context to invoke it correctly.

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 100% and the schema descriptions already explain defaults and allowed values. The description adds marginal value by restating the copy_mask default and the resource_name source, but it does not explain read_mask beyond what the schema provides, so it meets the baseline but does not exceed it.

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 ('Copies'), a precise source ('Other contact'), and a destination ('user's saved contacts'), and explicitly identifies this as 'the only write that exists for Other contacts.' This clearly distinguishes it from siblings like list_other_contacts and create_contact.

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?

Directly tells the agent when to use this tool by declaring it is the only write operation for Other contacts, and gives the source via 'from list_other_contacts.' It also describes the copy_mask selection fields and duplicate behavior, providing actionable when-to-use 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/A1-x-Tech/mcp-google-contacts'

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