Skip to main content
Glama

Get one contact

clio_get_contact
Read-onlyIdempotent

Fetch a single contact by id with all email addresses, phone numbers, postal addresses, web sites and custom field values (field_name + value; a picklist value is an option id, see clio_list_custom_fields). Clio: GET /contacts/{id}.json.

Input Schema

NameRequiredDescriptionDefault
fieldsNoOverride the returned fields: a comma-separated list, nested resources in braces one level deep, e.g. id,name,matter{id,display_number}. Omit for a sensible default.
contact_idYesThe contact's numeric Clio id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and openWorld behavior, so the safety profile is covered. The description adds useful behavioral context by disclosing exactly which related data is returned (emails, phones, addresses, web sites, custom fields) and noting that picklist values are option ids requiring clio_list_custom_fields. It does not mention error behavior (e.g., 404 for missing contacts) or permission requirements.

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 two compact sentences with zero waste. The primary purpose and return scope are front-loaded, followed by the implementation endpoint reference.

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?

There is no output schema, so the description carries the burden of describing return values, and it does so by enumerating the included sub-resources and the custom field value format. For a simple read-by-id tool with full annotation coverage and complete parameter documentation, nothing essential is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already documents both contact_id and the optional fields override. The description adds meaning beyond the schema by explaining that custom field values come back as field_name + value and that picklist values are option ids, which helps the agent interpret results. It does not add detail about the fields parameter, but the schema handles that adequately.

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 states a specific verb (Fetch), resource (a single contact), and lookup key (by id), clearly distinguishing it from sibling list/create tools such as clio_list_contacts and clio_create_contact. It also enumerates the returned sub-resources, making the tool's scope unambiguous.

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 phrase 'by id' implicitly directs the agent away from list/search tools when the numeric id is known, and it explicitly points to clio_list_custom_fields for interpreting picklist values. However, it does not explicitly state when not to use this tool (e.g., when the id is unknown and clio_list_contacts should be used instead).

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.