Skip to main content
Glama
mlemos
by mlemos

search_people

Search for people in Attio CRM by name, email, company, tags, or creation date. Filter results and sort by name or creation date to find specific contacts.

Instructions

Search for people in Attio CRM. Supports filtering by text (name or email), company, tags, and date ranges. Supports sorting by various fields. All filters are optional. Returns person details including name, email addresses, description, LinkedIn URL, tags, web_url, and created_at.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryNoText search in person name or email (e.g., "john", "smith", "john@acme.com"). Case-insensitive partial matching.
company_idNoFilter by company record_id (from search_companies or get_company). Returns people associated with this company.
tagsNoFilter people containing ANY of these tags (OR logic within tags). Example: ["VIP", "Investor"] matches people with VIP OR Investor tags.
tags_excludeNoFilter people NOT containing ANY of these tags (NOR logic within tags). Example: ["Inactive", "Archived"] excludes people with Inactive OR Archived tags.
created_afterNoFilter by creation date - only records created after this date (ISO 8601 format, e.g., "2024-01-01" or "2024-01-01T00:00:00Z").
created_beforeNoFilter by creation date - only records created before this date (ISO 8601 format, e.g., "2024-12-31" or "2024-12-31T23:59:59Z").
sort_byNoField to sort results by. Options: "created_at", "name".
sort_directionNoSort direction. Options: "asc" (ascending), "desc" (descending). Default: "desc".desc
limitNoMaximum number of results to return (default: 50, max: 500)
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that 'All filters are optional' and describes the return format, which is helpful. However, it omits critical behavioral details such as pagination handling (beyond the limit parameter), rate limits, authentication requirements, error conditions, or whether this is a read-only operation—significant gaps for a search tool with multiple parameters.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded, starting with the core purpose and key features in a single, efficient sentence. A second sentence adds return details, which is useful but could be slightly more streamlined. Overall, it avoids unnecessary fluff and communicates essential information without waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (9 parameters, no annotations, no output schema), the description is partially complete. It covers the purpose, filters, and return fields adequately, but lacks details on behavioral aspects like pagination, errors, or performance limits. Without annotations or an output schema, the agent might struggle with full operational understanding, though the description provides a reasonable foundation.

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?

The description adds some context by listing filter types (text, company, tags, date ranges) and sorting, but the input schema already has 100% coverage with detailed descriptions for all 9 parameters. The description does not provide additional syntax, examples, or constraints beyond what the schema specifies, so it meets the baseline for high schema coverage without adding substantial value.

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 specific verb ('Search for people') and resource ('in Attio CRM'), distinguishing it from sibling tools like create_person, get_person, update_person, and manage_person_tags. It specifies the search functionality with filtering capabilities, making the purpose unambiguous and differentiated from related operations.

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

Usage Guidelines3/5

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

The description implies usage through its listing of supported filters (text, company, tags, date ranges) and sorting, suggesting when this tool might be appropriate. However, it lacks explicit guidance on when to use search_people versus alternatives like get_person (for specific records) or create_person (for new entries), leaving some ambiguity for the agent.

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/mlemos/attio-simple-mcp-server'

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