Attio Simple MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ATTIO_API_KEY | Yes | Your Attio API key, obtained from Attio Settings > Developers > API Keys. | |
| ATTIO_WORKSPACE_SLUG | No | Your Attio workspace slug (optional, used for generating web URLs). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_workspace_schemaA | Get Attio workspace schema. Default returns summary with key fields and select options. Use scope="full" for all fields, or scope="object"/"list" for specific items with all fields. |
| search_companiesA | Search for companies in Attio CRM. Supports filtering by text (name or domain) and date ranges. Supports sorting by various fields. All filters are optional. Returns company details including name, domains, description, LinkedIn URL, web_url, and created_at. |
| search_peopleB | 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. |
| get_companyA | Get complete details of a company by record_id. Returns all attributes. Set include_all=true to also fetch notes, tasks, comment threads, meetings, and list entries, or use individual flags (include_notes, include_tasks, etc.). |
| get_personA | Get complete details of a person by record_id. Returns all attributes. Set include_all=true to also fetch notes, tasks, comment threads, meetings, and list entries, or use individual flags (include_notes, include_tasks, etc.). |
| create_companyA | Create a new company in Attio CRM. Only the company name is required. Optionally provide domains, description, and LinkedIn URL. Returns the created company record including the new record_id. |
| update_companyA | Update an existing company in Attio CRM by record ID. You can update name, description, and/or LinkedIn URL. Only provided fields will be updated; omitted fields remain unchanged. To manage domains, use add_company_domain and remove_company_domain tools instead. Returns the updated company record. |
| create_personA | Create a new person in Attio CRM. You must provide at least one name field (first_name, last_name, or full_name) or at least one email address. All fields are optional, but you need either a name or email to identify the person. Returns the created person record including the new record_id. |
| update_personA | Update an existing person in Attio CRM by record ID. You can update name fields (first_name, last_name, full_name), description, and/or LinkedIn URL. Only provided fields will be updated; omitted fields remain unchanged. To manage email addresses, use add_person_email and remove_person_email tools instead. Returns the updated person record. |
| manage_company_domainsC | Manage domains on a company. Supports four operations: "set" (replace all domains), "add" (append new domains), "remove" (delete specific domains), and "clear" (remove all domains). |
| manage_person_emailsC | Manage email addresses on a person. Supports four operations: "set" (replace all emails), "add" (append new emails), "remove" (delete specific emails), and "clear" (remove all emails). |
| manage_person_tagsA | Manage tags on a person. Supports four operations: "set" (replace all tags), "add" (append new tags), "remove" (delete specific tags), and "clear" (remove all tags). Tags are auto-created if they don't exist in the workspace. |
| create_noteB | Create a new note attached to a record in Attio CRM. Notes can be attached to people, companies, or any other object type. Supports plaintext and markdown formatting. |
| get_noteA | Get a single note by ID from Attio CRM. Returns the full note details including title, content, parent record information, and creation metadata. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Attio Workspace Schema (Complete) | Complete schema for the Attio workspace including all objects, lists, fields, types, required flags, and valid options for select/status fields. This is the FULL schema with all attributes. For filtered views, use the get_workspace_schema tool. |
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose with no ambiguity. For example, create_company, get_company, update_company, and search_companies are well-differentiated, and manage_company_domains handles specific domain operations without overlapping with update_company. The descriptions reinforce these distinctions, making misselection unlikely.
Tool names follow a consistent verb_noun pattern throughout, such as create_company, get_person, search_people, and update_company. The manage_* tools also adhere to this pattern, and there are no deviations in naming conventions, ensuring predictability and readability.
With 14 tools, the server is well-scoped for CRM operations, covering companies, people, notes, and schema. Each tool earns its place by providing specific functionality without redundancy, such as separate tools for creation, retrieval, updating, searching, and managing attributes like domains and emails.
The tool set offers comprehensive CRUD and lifecycle coverage for companies and people, including creation, retrieval, updating, searching, and attribute management. Minor gaps include the lack of delete operations for companies, people, or notes, but agents can likely work around this by using other methods or the server's inherent limitations.