KosmoKrator

productivity

Attio CLI for AI Agents

Use the Attio CLI from KosmoKrator to call Attio tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

Attio CLI Setup

Attio can be configured headlessly with `kosmokrator integrations:configure attio`.

Install, configure, and verify
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure attio --set access_token="$ATTIO_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor attio --json
kosmokrator integrations:status --json

Credentials

Authentication type: Bearer token bearer_token. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
access_token ATTIO_ACCESS_TOKEN Secret secret yes Access Token
base_url ATTIO_BASE_URL URL url no API Base URL

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call attio.attio_api_get '{}' --json
Provider shortcut
kosmo integrations:attio attio_api_get '{}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs attio --json
kosmo integrations:docs attio.attio_api_get --json
kosmo integrations:schema attio.attio_api_get --json
kosmo integrations:search "Attio" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

attio.attio_api_get

Call any Attio GET endpoint.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_api_get '{}' --json
Shortcut
kosmo integrations:attio attio_api_get '{}' --json

attio.attio_api_post

Call any Attio POST endpoint.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_api_post '{}' --json
Shortcut
kosmo integrations:attio attio_api_post '{}' --json

attio.attio_api_patch

Call any Attio PATCH endpoint.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_api_patch '{}' --json
Shortcut
kosmo integrations:attio attio_api_patch '{}' --json

attio.attio_api_put

Call any Attio PUT endpoint.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_api_put '{}' --json
Shortcut
kosmo integrations:attio attio_api_put '{}' --json

attio.attio_api_delete

Call any Attio DELETE endpoint.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_api_delete '{}' --json
Shortcut
kosmo integrations:attio attio_api_delete '{}' --json

attio.attio_list_workspaces

List all Attio workspaces accessible to the authenticated user. Returns workspace IDs and names useful for understanding the context of the current integration.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_workspaces '{}' --json
Shortcut
kosmo integrations:attio attio_list_workspaces '{}' --json

attio.attio_get_current_user

Get the currently authenticated Attio user profile. Useful for verifying API connectivity and identifying which workspace the integration is connected to.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_get_current_user '{}' --json
Shortcut
kosmo integrations:attio attio_get_current_user '{}' --json

attio.attio_list_objects

List all object types defined in the Attio workspace (e.g. people, companies, deals, custom objects). Useful for discovering available objects before querying records.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_objects '{}' --json
Shortcut
kosmo integrations:attio attio_list_objects '{}' --json

attio.attio_get_object

Get details for a specific object type in Attio, including its attributes and their types. Useful for understanding what fields are available before creating or updating records.

Read read
Parameters
id
Generic call
kosmo integrations:call attio.attio_get_object '{"id":"example_id"}' --json
Shortcut
kosmo integrations:attio attio_get_object '{"id":"example_id"}' --json

attio.attio_list_attributes

List object or list attributes.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_attributes '{}' --json
Shortcut
kosmo integrations:attio attio_list_attributes '{}' --json

attio.attio_get_attribute

Get an object or list attribute.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_get_attribute '{}' --json
Shortcut
kosmo integrations:attio attio_get_attribute '{}' --json

attio.attio_create_attribute

Create an object or list attribute.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_create_attribute '{}' --json
Shortcut
kosmo integrations:attio attio_create_attribute '{}' --json

attio.attio_list_records

List records for an object type in Attio (e.g. people, companies, deals). Supports filtering, sorting, and pagination via a POST query endpoint. Use filters to narrow results by attribute values and sorts to control ordering.

Read read
Parameters
object_id, limit, offset, sorts, filters
Generic call
kosmo integrations:call attio.attio_list_records '{"object_id":"example_object_id","limit":1,"offset":1,"sorts":"example_sorts","filters":"example_filters"}' --json
Shortcut
kosmo integrations:attio attio_list_records '{"object_id":"example_object_id","limit":1,"offset":1,"sorts":"example_sorts","filters":"example_filters"}' --json

attio.attio_get_record

Get a single record from Attio by its object type and record ID. Returns full record details including all attribute values.

Read read
Parameters
object_id, id
Generic call
kosmo integrations:call attio.attio_get_record '{"object_id":"example_object_id","id":"example_id"}' --json
Shortcut
kosmo integrations:attio attio_get_record '{"object_id":"example_object_id","id":"example_id"}' --json

attio.attio_create_record

Create a new record in Attio for a given object type. Pass attribute values keyed by their attribute slug in the data parameter.

Write write
Parameters
object_id, data
Generic call
kosmo integrations:call attio.attio_create_record '{"object_id":"example_object_id","data":"example_data"}' --json
Shortcut
kosmo integrations:attio attio_create_record '{"object_id":"example_object_id","data":"example_data"}' --json

attio.attio_update_record

Update a record for an object type.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_update_record '{}' --json
Shortcut
kosmo integrations:attio attio_update_record '{}' --json

attio.attio_delete_record

Delete a record for an object type.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_delete_record '{}' --json
Shortcut
kosmo integrations:attio attio_delete_record '{}' --json

attio.attio_list_record_entries

List list entries for a record.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_record_entries '{}' --json
Shortcut
kosmo integrations:attio attio_list_record_entries '{}' --json

attio.attio_list_lists

List Attio lists.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_lists '{}' --json
Shortcut
kosmo integrations:attio attio_list_lists '{}' --json

attio.attio_get_list

Get an Attio list.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_get_list '{}' --json
Shortcut
kosmo integrations:attio attio_get_list '{}' --json

attio.attio_create_list

Create an Attio list.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_create_list '{}' --json
Shortcut
kosmo integrations:attio attio_create_list '{}' --json

attio.attio_update_list

Update an Attio list.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_update_list '{}' --json
Shortcut
kosmo integrations:attio attio_update_list '{}' --json

attio.attio_list_entries

Query entries in an Attio list.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_entries '{}' --json
Shortcut
kosmo integrations:attio attio_list_entries '{}' --json

attio.attio_create_entry

Add a record to an Attio list.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_create_entry '{}' --json
Shortcut
kosmo integrations:attio attio_create_entry '{}' --json

attio.attio_get_entry

Get an Attio list entry.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_get_entry '{}' --json
Shortcut
kosmo integrations:attio attio_get_entry '{}' --json

attio.attio_update_entry

Update an Attio list entry.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_update_entry '{}' --json
Shortcut
kosmo integrations:attio attio_update_entry '{}' --json

attio.attio_delete_entry

Delete an Attio list entry.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_delete_entry '{}' --json
Shortcut
kosmo integrations:attio attio_delete_entry '{}' --json

attio.attio_list_notes

List Attio notes.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_notes '{}' --json
Shortcut
kosmo integrations:attio attio_list_notes '{}' --json

attio.attio_create_note

Create an Attio note.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_create_note '{}' --json
Shortcut
kosmo integrations:attio attio_create_note '{}' --json

attio.attio_list_tasks

List Attio tasks.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_tasks '{}' --json
Shortcut
kosmo integrations:attio attio_list_tasks '{}' --json

attio.attio_create_task

Create an Attio task.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_create_task '{}' --json
Shortcut
kosmo integrations:attio attio_create_task '{}' --json

attio.attio_update_task

Update an Attio task.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_update_task '{}' --json
Shortcut
kosmo integrations:attio attio_update_task '{}' --json

attio.attio_delete_task

Delete an Attio task.

Write write
Parameters
none
Generic call
kosmo integrations:call attio.attio_delete_task '{}' --json
Shortcut
kosmo integrations:attio attio_delete_task '{}' --json

attio.attio_list_webhooks

List Attio webhooks.

Read read
Parameters
none
Generic call
kosmo integrations:call attio.attio_list_webhooks '{}' --json
Shortcut
kosmo integrations:attio attio_list_webhooks '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

attio.attio_api_get 0 parameters
Schema command
kosmo integrations:schema attio.attio_api_get --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_api_post 0 parameters
Schema command
kosmo integrations:schema attio.attio_api_post --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_api_patch 0 parameters
Schema command
kosmo integrations:schema attio.attio_api_patch --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_api_put 0 parameters
Schema command
kosmo integrations:schema attio.attio_api_put --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_api_delete 0 parameters
Schema command
kosmo integrations:schema attio.attio_api_delete --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_workspaces 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_workspaces --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_get_current_user 0 parameters
Schema command
kosmo integrations:schema attio.attio_get_current_user --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_objects 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_objects --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_get_object 1 parameters
Schema command
kosmo integrations:schema attio.attio_get_object --json
ParameterTypeRequiredDescription
id string yes The object slug or UUID (e.g. "people", "companies", "deals").
attio.attio_list_attributes 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_attributes --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_get_attribute 0 parameters
Schema command
kosmo integrations:schema attio.attio_get_attribute --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_create_attribute 0 parameters
Schema command
kosmo integrations:schema attio.attio_create_attribute --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_records 5 parameters
Schema command
kosmo integrations:schema attio.attio_list_records --json
ParameterTypeRequiredDescription
object_id string yes The object slug or ID (e.g. "people", "companies", "deals").
limit integer no Maximum number of records to return (default: 20, max: 500).
offset integer no Number of records to skip for pagination (default: 0).
sorts array no Sort definitions. Each entry is an object with "attribute" (object with "slug") and "direction" ("asc" or "desc"). Example: [{"attribute": {"slug": "name"}, "direction": "asc"}].
filters object no Filter definitions following Attio's filter grammar. Can be a single filter or a compound filter with "$and"/"$or". Example: {"$and": [{"attribute": {"slug": "name"}, "condition": "contains", "value": "Acme"}]}.
attio.attio_get_record 2 parameters
Schema command
kosmo integrations:schema attio.attio_get_record --json
ParameterTypeRequiredDescription
object_id string yes The object slug or ID (e.g. "people", "companies", "deals").
id string yes The record UUID.
attio.attio_create_record 2 parameters
Schema command
kosmo integrations:schema attio.attio_create_record --json
ParameterTypeRequiredDescription
object_id string yes The object slug or ID (e.g. "people", "companies", "deals").
data object yes Record data keyed by attribute slug. Example: {"name": "Acme Corp", "website": "https://acme.com"}. Values depend on the attribute type.
attio.attio_update_record 0 parameters
Schema command
kosmo integrations:schema attio.attio_update_record --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_delete_record 0 parameters
Schema command
kosmo integrations:schema attio.attio_delete_record --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_record_entries 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_record_entries --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_lists 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_lists --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_get_list 0 parameters
Schema command
kosmo integrations:schema attio.attio_get_list --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_create_list 0 parameters
Schema command
kosmo integrations:schema attio.attio_create_list --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_update_list 0 parameters
Schema command
kosmo integrations:schema attio.attio_update_list --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_entries 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_entries --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_create_entry 0 parameters
Schema command
kosmo integrations:schema attio.attio_create_entry --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_get_entry 0 parameters
Schema command
kosmo integrations:schema attio.attio_get_entry --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_update_entry 0 parameters
Schema command
kosmo integrations:schema attio.attio_update_entry --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_delete_entry 0 parameters
Schema command
kosmo integrations:schema attio.attio_delete_entry --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_notes 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_notes --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_create_note 0 parameters
Schema command
kosmo integrations:schema attio.attio_create_note --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_tasks 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_tasks --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_create_task 0 parameters
Schema command
kosmo integrations:schema attio.attio_create_task --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_update_task 0 parameters
Schema command
kosmo integrations:schema attio.attio_update_task --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_delete_task 0 parameters
Schema command
kosmo integrations:schema attio.attio_delete_task --json
ParameterTypeRequiredDescription
No parameters.
attio.attio_list_webhooks 0 parameters
Schema command
kosmo integrations:schema attio.attio_list_webhooks --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.