Skip to content
Elaichi Elaichi

crm

Attio

Connect Attio to Elaichi and hand every teammate a governed MCP endpoint — 97 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.

Attio

AI tools

Attio tools for your AI agents

97 tools are ready to mint as an MCP endpoint the moment you connect Attio — governed by the same roles, restrictions, and audit log as everything else in Elaichi.

list_all_attio_me

Check validity of an access token in Attio. Returns active status, scopes, client_id, token_type, expiration, issue time, workspace_id, workspace_name, workspace_slug, and workspace_logo_url.

list_all_attio_companies

List company records in Attio with filtering and sorting options. Returns fields including id, created_at, and values such as name, domains, description, and social links.

get_single_attio_company_by_id

Get company record in Attio using id. Returns id (workspace_id, object_id, record_id), created_at, web_url and values containing company attributes.

create_a_attio_company

Create company record in Attio. Returns id, created_at, web_url and values.

update_a_attio_company_by_id

Update a company record in Attio by id. Returns fields: id (with workspace_id, object_id, record_id), created_at (creation timestamp), web_url (Attio record URL), and values (attributes such as domains, name, description, team, categories, locations, select options, etc.). The logo_url attribute cannot be updated via API, and updating multiselect attributes will prepend values; use the assert endpoint to overwrite or remove values.

delete_a_attio_company_by_id

Delete a company record in Attio by id. Returns an empty object on success or, if not found, returns status_code, type, code, and message in the response.

attio_companies_assert

Create or update a company in Attio using the unique matching_attribute. Returns id (with workspace_id, object_id, record_id), created_at, web_url, and values containing all company attributes as arrays of value objects. matching_attribute is required.

attio_companies_attribute_values

List attribute values for a company record in Attio. Requires id and attribute. Returns attribute value objects including active_from, active_until, created_by_actor, attribute_type, and type-specific fields. show_historic cannot be true for COMINT or enriched attributes; if attempted, a 400 error is returned.

attio_companies_record_entries

List all entries for which the company record is the parent in Attio. Requires id. Returns list_id, list_api_slug, entry_id, and created_at for each entry in the response.

list_all_attio_people

List person records in Attio. Returns id details (workspace_id, object_id, record_id), created_at, web_url, and values with core fields including email_addresses, name, job_title, company, social links, and other attributes.

get_single_attio_person_by_id

Get a person record in Attio using id. Returns id (including workspace_id, object_id, record_id), created_at, web_url, and values with detailed attributes like name, email_addresses, company, and more.

create_a_attio_person

Create a person record in Attio. Throws on unique attribute conflicts such as email_addresses. Returns id (with workspace_id, object_id, record_id), created_at, web_url, and values including email_addresses, name, description, company, phone_numbers, primary_location, and more for the person record in the response.

update_a_attio_person_by_id

Update a person record in Attio using id. Returns updated id, created_at, web_url, and values (attribute details such as email_addresses, name, company, etc.). Multiselect attribute values are prepended. avatar_url cannot be updated.

delete_a_attio_person_by_id

Delete a person record in Attio by id. Returns an empty object on success. If the record is not found, response includes status_code, type, code, and message fields indicating the error.

attio_people_assert

Assert a person record in Attio using matching_attribute. Creates or updates based on unique attribute. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values with key attributes for the person. Requires matching_attribute.

attio_people_attribute_values

List all values for a specific attribute on a person record in Attio. Requires id and attribute. Returns an array of values with fields such as active_from, active_until, created_by_actor, attribute_type, and value or attribute-specific fields. Historic values can only be queried if the attribute is not COMINT or enriched, otherwise, a 400 error is returned.

attio_people_record_entries

List all entries for a specific person record in Attio. Requires id. Returns list_id, list_api_slug, entry_id, and created_at for each entry in the response.

list_all_attio_deals

List deals in Attio. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values for each deal.

get_single_attio_deal_by_id

Get a specific deal record in Attio. Requires id. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values (name, stage, owner, value, associated_people, associated_company) describing the deal.

create_a_attio_deal

Create deal record in Attio. Throws error on unique attribute conflicts. Returns data.id (workspace_id, object_id, record_id), created_at, web_url, and values.

update_a_attio_deal_by_id

Update a deal record in Attio by id. Returns id (with workspace_id, object_id, record_id), created_at, web_url, and values (including name, stage, owner, value, associated_people, associated_company) in the response. Note: Multiselect attributes are prepended, not overwritten.

delete_a_attio_deal_by_id

Delete a deal record in Attio. Requires id. Returns success on deletion or error fields status_code, type, code, and message if the record is not found.

attio_deals_assert

Create or update a person record in Attio using a unique matching_attribute. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values including email_addresses, name, description, company, phone_numbers, and other key person attributes. Requires matching_attribute.

attio_deals_attribute_values

List deal record attribute values in Attio. Requires record_id and attribute. Returns fields such as active_from (when the value became active), active_until, created_by_actor, and attribute_type. Includes all value types as defined in Attio's schema.

attio_deals_record_entries

List all entries for which the deal record in Attio is the parent. Requires id. Returns list_id, list_api_slug, entry_id, and created_at fields for each entry in the response.

list_all_attio_notes

List notes in Attio. Returns id (with workspace_id and note_id), parent_object, parent_record_id, title, content_plaintext, content_markdown, tags, created_by_actor, and created_at fields for each note.

get_single_attio_note_by_id

Get a note in Attio by id. Returns id (workspace_id, note_id), parent_object, parent_record_id, title, content_plaintext, content_markdown, tags, created_by_actor, and created_at fields. Requires id.

create_a_attio_note

Create a note in Attio. Requires parent_object, parent_record_id, title, format, and content. Returns id, parent_object, parent_record_id, title, content_plaintext, content_markdown, tags, created_by_actor, and created_at in the response.

delete_a_attio_note_by_id

Delete a note in Attio by id. The response is empty on success. If the note does not exist, it returns fields status_code, type, code, and message indicating the error.

list_all_attio_tasks

List all tasks in Attio. Returns tasks with fields: id (workspace_id, task_id), content_plaintext, deadline_at, is_completed, linked_records, assignees, created_by_actor, created_at. Results are sorted by creation date from oldest to newest.

get_single_attio_task_by_id

Get a single task in Attio by id. Returns id, content_plaintext, deadline_at, is_completed, linked_records, assignees, created_by_actor, and created_at fields in the response. id is required.

create_a_attio_task

Create a new task in Attio. Requires content, format, deadline_at, is_completed, linked_records, and assignees. Returns id (workspace_id, task_id), content_plaintext, deadline_at, is_completed, linked_records, assignees, created_by_actor, and created_at.

update_a_attio_task_by_id

Update a specific task in Attio by id. Returns id, content_plaintext, deadline_at, is_completed, linked_records, assignees, created_by_actor, and created_at in the response. Only deadline_at, is_completed, linked_records, and assignees can be updated.

delete_a_attio_task_by_id

Delete a task in Attio by id. Returns an empty object on success. If the task is not found, returns status_code, type, code, and message fields indicating the error.

list_all_attio_attribute_options

List select options for a specific attribute in Attio using target, identifier, and attribute. Returns id (workspace_id, object_id, attribute_id, option_id), title, and is_archived fields for each option.

create_a_attio_attribute_option

Create a select option on an attribute for a target and identifier in Attio. Returns id fields workspace_id, object_id, attribute_id, option_id, title, and is_archived status.

update_a_attio_attribute_option_by_id

Update a select option on an attribute on an object or list in Attio. Requires target, identifier, attribute, and id. Returns workspace_id, object_id, attribute_id, option_id, title, and is_archived fields.

list_all_attio_attributes

List attributes for a specific object or list in Attio. Requires target and identifier. Returns id, title, description, api_slug, type, is_system_attribute, is_writable, is_required, is_unique, is_multiselect, is_default_value_enabled, is_archived, default_value, relationship, created_at, and config for each attribute in the response.

get_single_attio_attribute_by_id

Get information about a specific attribute in Attio using target, identifier, and id. Returns attribute properties such as id, title, description, api_slug, type, system and writability flags, requirements, uniqueness, multiselect, default value details, relationship, created_at, is_archived, and config.

create_a_attio_attribute

Create an attribute in Attio for a specific object or list using target and identifier. Returns id, title, description, api_slug, type, is_system_attribute, is_writable, is_required, is_unique, is_multiselect, is_default_value_enabled, is_archived, default_value, relationship, created_at, and config in the response. When creating on an object, the object_configuration:read-write scope is required; for a list, the list_configuration:read-write scope is required. Attributes of type 'status' are not supported on objects.

update_a_attio_attribute_by_id

Update a specific attribute in Attio for a given object or list. Requires target, identifier, and id. Returns title, description, api_slug, type, is_system_attribute, is_writable, is_required, is_unique, is_multiselect, is_default_value_enabled, is_archived, default_value, relationship, created_at, and config fields in the response.

list_all_attio_workspace_members

List all workspace members in Attio. Returns id (with workspace_id and workspace_member_id), first_name, last_name, avatar_url, email_address, created_at, and access_level fields for each member.

get_single_attio_workspace_member_by_id

Get a workspace member in Attio using id. Returns workspace_id, workspace_member_id, first_name, last_name, avatar_url, email_address, created_at, and access_level in the response.

list_all_attio_lists

List all lists accessible with the current access token in Attio. Returns id, api_slug, name, parent_object, workspace_access, workspace_member_access, created_by_actor, and created_at fields for each list.

create_a_attio_list

Create a list with name, api_slug, parent_object, workspace_access, and workspace_member_access in Attio. Returns id (workspace_id, list_id), api_slug, name, parent_object, workspace_access, workspace_member_access, created_by_actor, and created_at.

get_single_attio_list_by_id

Get a single list by id in Attio. Returns id with workspace_id and list_id, api_slug, name, parent_object array, workspace_access level, workspace_member_access details, created_by_actor info, and created_at timestamp.

update_a_attio_list_by_id

Update an existing list by id in Attio. Returns id (workspace_id, list_id), api_slug, name, parent_object, workspace_access, workspace_member_access, created_by_actor, and created_at fields.

list_all_attio_statuses

List statuses for a specific status attribute in Attio. Requires target, identifier, and attribute. Returns id (workspace_id, object_id, attribute_id, status_id), title, is_archived, celebration_enabled, and target_time_in_status for each status.

create_a_attio_status

Create a status in Attio for a specific attribute. Requires target, identifier, and attribute. Returns id (workspace_id, object_id, attribute_id, status_id), title, is_archived, celebration_enabled, and target_time_in_status in the response.

update_a_attio_status_by_id

Update a status in Attio for a specific target, identifier, attribute, and id. Returns id fields (workspace_id, object_id, attribute_id, status_id), title, is_archived, celebration_enabled, and target_time_in_status in the response.

list_all_attio_entries

List entries in a specific list in Attio. Requires list. Returns id (workspace_id, list_id, entry_id), parent_record_id, parent_object, created_at, and entry_values for each entry.

create_a_attio_entry

Create an entry in Attio by adding a record to a list. Requires list. Returns id (workspace_id, list_id, entry_id), parent_record_id, parent_object, created_at, and entry_values fields for the created entry. Throws on unique attribute conflicts.

update_a_attio_entry_by_id

Update a list entry in Attio using list and id. Appends new multiselect values if provided, does not overwrite existing ones. Returns id, parent_record_id, parent_object, created_at, and entry_values for the updated entry.

delete_a_attio_entry_by_id

Delete an entry in Attio. Requires list and id. No content is returned in the response.

get_single_attio_entry_by_id

Get a specific list entry in Attio. Requires list and id. Returns id (with workspace_id, list_id, entry_id), parent_record_id, parent_object, created_at, and entry_values containing attribute data.

attio_entries_assert

Assert a list entry by parent in Attio for the given list. Requires list. Returns id (workspace_id, list_id, entry_id), parent_record_id, parent_object, created_at and entry_values for the created or updated entry, or errors if multiple match or not found.

attio_entries_overwrite

Update a list entry in Attio using list and id. Overwrites multiselect values. Returns id details, parent_record_id, parent_object, created_at, and entry_values showing updated attribute values.

attio_entries_attribute_values

List all values for a specific attribute on an entry in Attio. Requires list, id, and attribute. Returns key fields like active_from, active_until, created_by_actor, attribute_type, and value-dependent properties for each value.

list_all_attio_objects

List all system-defined and user-defined objects in Attio. Returns id (workspace_id, object_id), api_slug, singular_noun, plural_noun, and created_at for each object.

get_single_attio_object_by_id

Get an object in Attio using id. Returns id (with workspace_id and object_id), api_slug, singular_noun, plural_noun, and created_at fields in the response. Requires id.

create_a_attio_object

Create a new object in Attio. Requires api_slug, singular_noun, and plural_noun. Returns id (object_id, workspace_id), api_slug, singular_noun, plural_noun, and created_at in the response.

update_a_attio_object_by_id

Update an object in Attio. Requires id. Returns id (with workspace_id and object_id), api_slug, singular_noun, plural_noun, and created_at fields in the response.

list_all_attio_threads

List threads in Attio. Returns id with workspace_id and thread_id, comments with key comment details for each thread, and created_at. To view record threads, object_configuration:read and record_permission:read are required; for list entry threads, list_configuration:read and list_entry:read are required. All key thread fields are returned in the response.

get_single_attio_thread_by_id

Get all comments in a specific thread in Attio. Requires id of the thread. Returns thread id, workspace_id, created_at, and an array of comments with content, author, entry, record, and status fields.

get_single_attio_comment_by_id

Get a specific comment in Attio by id. Returns fields including id (workspace_id, comment_id), thread_id, content_plaintext, entry, record, resolved_at, resolved_by, created_at, and author.

create_a_attio_comment

Create a comment in Attio. Requires format, content, author, and one of thread_id, record, or entry. Returns id (workspace_id, comment_id), thread_id, content_plaintext, entry, record, resolved_at, resolved_by, created_at, and author.

delete_a_attio_comment_by_id

Delete a comment in Attio by id. If deleting a comment at the head of a thread, all messages in the thread are also deleted. Success returns an empty object in the response.

list_all_attio_webhooks

List all webhooks in Attio. Returns target_url, subscriptions (event_type and filter), id (workspace_id and webhook_id), status, and created_at for each webhook.

get_single_attio_webhook_by_id

Get a webhook in Attio. Requires id. Returns target_url (delivery destination), subscriptions (event types with filter conditions), id (workspace_id and webhook_id), status (webhook state), and created_at (creation timestamp).

create_a_attio_webhook

Create a webhook in Attio by specifying target_url and subscriptions. Returns target_url, subscriptions, id (with workspace_id and webhook_id), status, created_at, and secret. The secret is only shown when initially setting up the webhook.

update_a_attio_webhook_by_id

Update a webhook in Attio. Requires id. Returns target_url (delivery URL), subscriptions (event types and filters), id (workspace_id, webhook_id), status (active, degraded, inactive), and created_at (creation timestamp) in the response.

delete_a_attio_webhook_by_id

Delete a webhook in Attio using id. Returns an empty object if successful, or status_code, type, code, and message if webhook is not found.

list_all_attio_auth_session

Identify the current access token, its Attio workspace, and permissions. Returns fields describing token status, scope, workspace details, issued and expiration times, client_id, issuer, and authorizing workspace member.

list_all_attio_users

List user records in Attio. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values (person, primary_email_address, user_id, workspace) for each record.

get_single_attio_user_by_id

Get a user record in Attio by providing id. Returns id (with workspace_id, object_id, record_id), created_at (creation time), web_url (link to the user in Attio), and values (user attributes, such as person, primary_email_address, user_id, workspace).

create_a_attio_user

Create a user record in Attio. Returns id identifying the created user, created_at timestamp, web_url to the user in Attio, and values including person, primary_email_address, user_id, and workspace. Throws on unique attribute conflicts.

update_a_attio_user_by_id

Update a user record in Attio by id. Returns id with workspace_id, object_id, record_id, created_at, web_url, and values including person, primary_email_address, user_id, and workspace arrays. The avatar_url attribute cannot be updated via this endpoint.

delete_a_attio_user_by_id

Delete a user record in Attio. Requires id. Returns an empty object on success or, if not found, returns status_code, type, code, and message fields indicating the error.

attio_users_assert

Create or update a user record in Attio using the matching_attribute query parameter. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values (with attributes like person, primary_email_address, user_id, workspace). Requires matching_attribute.

attio_users_attribute_values

List all values for a specific attribute on a user record in Attio. Requires record_id and attribute. Returns fields such as active_from, active_until, created_by_actor, value, and attribute_type for each value. If show_historic is set to true, historic values are returned unless the attribute is a COMINT or an enriched attribute on people/company objects.

attio_users_record_entries

List all entries for which the user record in Attio is the parent. Requires id. Returns list_id, list_api_slug, entry_id, and created_at fields in the response.

list_all_attio_workspaces

List workspace records in Attio. Returns each record's id (workspace_id, object_id, record_id), created_at, web_url, and values with current and historical attribute values, including workspace_id, name, users, company, and avatar_url.

get_single_attio_workspace_by_id

Get a specific workspace record in Attio using id. Returns id (with workspace_id, object_id, record_id), created_at, web_url, and values object containing attributes, users, company, and avatar_url.

create_a_attio_workspace

Create a workspace record in Attio. Returns id (workspace_id, object_id, record_id), created_at, web_url for direct access, and values holding all workspace attributes for the created record. Throws on unique attribute conflicts.

update_a_attio_workspace_by_id

Update a workspace record in Attio by id. Returns id (workspace_id, object_id, record_id), created_at (record creation time), web_url (link to record in Attio), and values (updated attribute arrays with details such as value, target_object, target_record_id, created_by_actor, active_from, active_until, and attribute_type). For multiselect attributes, supplied values are prepended; to overwrite or remove values, use the Assert workspace endpoint.

delete_a_attio_workspace_by_id

Delete a workspace record in Attio by id. Returns an empty object on success or status_code, type, code, and message fields if the record is not found.

attio_workspaces_assert

Create or update a workspace record in Attio. Requires matching_attribute. Returns id (workspace_id, object_id, record_id), created_at, web_url, and attribute values including workspace_id, name, users, company, and avatar_url for the workspace.

attio_workspaces_attribute_values

List attribute values for a workspace record in Attio. Requires record_id and attribute. Returns fields such as active_from, active_until, created_by_actor, value, attribute_type, among others depending on attribute type.

attio_workspaces_record_entries

List all entries for which the specified workspace record in Attio is the parent. Requires id. Returns list_id, list_api_slug, entry_id, and created_at for each entry in the response.

list_all_attio_records

List records for a specific object in Attio. Requires object. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values containing all attribute data for each record.

get_single_attio_record_by_id

Get a specific record in Attio using object and id. Returns id (including workspace_id, object_id, record_id), created_at, web_url, and values fields representing all attribute values for the record.

create_a_attio_record

Create a record in Attio for a specific object. Requires object. Returns id (workspace_id, object_id, record_id), created_at, web_url, and values in the response. Will throw on unique attribute conflicts.

delete_a_attio_record_by_id

Delete a record in Attio by object and id. Returns an empty object if successful, or status_code, type, code, and message if the record is not found.

attio_records_attribute_values

List all values for a specific attribute on a record in Attio. Requires object, id, and attribute. Returns active_from, active_until, created_by_actor, attribute_type, and other relevant value fields for each attribute value.

attio_records_record_entries

List all entries for which this record is the parent in Attio. Requires object and id. Returns list_id, list_api_slug, entry_id, and created_at for each entry.

update_a_attio_record_by_id

Update a record in Attio by object and id. Appends new multiselect attribute values instead of replacing them. Returns id (workspace_id, object_id, record_id), created_at, web_url, and all updated attribute values for the record in the response.

attio_records_overwrite

Update a specific record in Attio by object and id. Overwrites any existing multiselect values. Returns id (workspace_id, object_id, record_id), created_at, web_url, and updated attribute values for the record in the response.

How it works

From Attio account to governed MCP endpoint

Connect

Link a Attio account through Elaichi's hosted connect flow. Credentials are vaulted — nobody, including the AI, ever sees them.

Compose

The connection becomes a toolbox instantly. Curate which Attio tools are exposed, rename them, or freeze arguments.

Mint

Mint a personal MCP endpoint on that toolbox and paste it into Claude, Cursor, or any MCP client — governed by roles, restrictions, and audit logs.

Give every teammate a governed MCP server

Start a 14-day Gold trial — connect a product, curate a toolbox, and paste an endpoint into Claude or Cursor in minutes.