Skip to main content

CRM tools

Contacts, companies, deals, tasks, notes and activities — search, CRUD, and associations.

57 tools. Each is callable over MCP with a Bearer agx_ key that holds the required scope. The catalog is public (tools/list isn't scope-filtered); the scope below is enforced when the tool is called (tools/call) — a key without it is refused (default-deny).

search_activities

Search/list activities. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: activities:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, activity_type, activity_subtype, title, description, entity_type, entity_id, contact_id, company_id, deal_id, performed_by_email, performed_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_activities",
"arguments": {
"q": "acme"
}
}
}

search_companies

Search/list companies. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: companies:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, domain, website, industry, company_type, size, annual_revenue, description, city, state, country, phone, email, linkedin_url, source, status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_companies",
"arguments": {
"q": "acme"
}
}
}

search_contacts

Search/list contacts. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: contacts:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, email, first_name, last_name, phone, mobile, job_title, department, lead_status, lead_score, source, city, state, country, linkedin_url, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_contacts",
"arguments": {
"q": "acme"
}
}
}

search_deals

Search/list deals. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: deals:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, value, currency, stage_name, probability, deal_type, expected_close_date, description, next_step, source, is_won, is_lost, deal_status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_deals",
"arguments": {
"q": "acme"
}
}
}

search_notes

Search/list notes. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: notes:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, content, entity_type, entity_id, is_pinned, created_by_email, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_notes",
"arguments": {
"q": "acme"
}
}
}

search_tasks

Search/list tasks. Free-text q searches all fields; filters (+ optional match) and groups (+ group_match) do precise AND/OR field filtering. Paginated (limit, offset, sort, order).

Required scope: tasks:read

Input

ParameterTypeRequiredDescription
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, title, description, type, priority, status, contact_id, company_id, deal_id, due_date, reminder_date, completed_at, assigned_to_email, assigned_by_email, created_by_email, entity_type, entity_id, labels, source, task_number, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_tasks",
"arguments": {
"q": "acme"
}
}
}

get_activity

Get a single activity by id.

Required scope: activities:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_activity",
"arguments": {
"id": "\u2026"
}
}
}

get_company

Get a single company by id.

Required scope: companies:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_company",
"arguments": {
"id": "\u2026"
}
}
}

get_contact

Get a single contact by id.

Required scope: contacts:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_contact",
"arguments": {
"id": "\u2026"
}
}
}

get_deal

Get a single deal by id.

Required scope: deals:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_deal",
"arguments": {
"id": "\u2026"
}
}
}

get_note

Get a single note by id.

Required scope: notes:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_note",
"arguments": {
"id": "\u2026"
}
}
}

get_task

Get a single task by id.

Required scope: tasks:read

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_task",
"arguments": {
"id": "\u2026"
}
}
}

create_activity

Create a activity. Requires the activities:write scope.

Required scope: activities:write

Input

ParameterTypeRequiredDescription
activity_typestringe.g. call, email, note (required).
entity_typestringcontact|company|deal (required).
entity_idstringLinked record id (required).
activity_subtypeany
titleany
descriptionany
contact_idany
company_idany
deal_idany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_activity",
"arguments": {
"activity_type": "\u2026",
"entity_type": "\u2026",
"entity_id": "\u2026"
}
}
}

create_company

Create a company. Requires the companies:write scope.

Required scope: companies:write

Input

ParameterTypeRequiredDescription
namestringCompany name (required).
domainany
websiteany
industryany
company_typeany
sizeany
annual_revenueany
descriptionany
cityany
stateany
countryany
phoneany
emailany
linkedin_urlany
sourceany
statusany
owner_emailany
tagsany
custom_fieldsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_company",
"arguments": {
"name": "\u2026"
}
}
}

create_contact

Create a contact. Requires the contacts:write scope.

Required scope: contacts:write

Input

ParameterTypeRequiredDescription
emailanyPrimary email (recommended; used for dedup).
first_nameany
last_nameany
phoneany
mobileany
job_titleany
departmentany
lead_statusany
lead_scoreany
sourceany
cityany
stateany
countryany
linkedin_urlany
owner_emailanyAssign an owner; omit to leave unassigned.
tagsany
custom_fieldsanyOrg-defined fields; auto-registered.

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_contact",
"arguments": {}
}
}

create_deal

Create a deal. Requires the deals:write scope.

Required scope: deals:write

Input

ParameterTypeRequiredDescription
namestringDeal name (required).
valueany
currencyany
stage_nameany
probabilityany
deal_typeany
expected_close_dateanyISO date (YYYY-MM-DD).
descriptionany
next_stepany
sourceany
owner_emailany
tagsany
custom_fieldsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_deal",
"arguments": {
"name": "\u2026"
}
}
}

create_note

Create a note. Requires the notes:write scope.

Required scope: notes:write

Input

ParameterTypeRequiredDescription
contentstringNote body (required).
entity_typestringLinked entity: contact|company|deal (required).
entity_idstringLinked record id (required).
is_pinnedany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_note",
"arguments": {
"content": "\u2026",
"entity_type": "\u2026",
"entity_id": "\u2026"
}
}
}

create_task

Create a task. Requires the tasks:write scope.

Required scope: tasks:write

Input

ParameterTypeRequiredDescription
titlestringTask title (required).
descriptionany
typeany
priorityany
statusany
contact_idany
company_idany
deal_idany
due_dateanyISO timestamp.
reminder_dateany
assigned_to_emailany
entity_typeany
entity_idany
labelsany
sourceany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_task",
"arguments": {
"title": "\u2026"
}
}
}

update_activity

Update a activity by id (partial). Requires the activities:write scope.

Required scope: activities:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
activity_subtypeany
titleany
descriptionany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_activity",
"arguments": {
"id": "\u2026"
}
}
}

update_company

Update a company by id (partial). Requires the companies:write scope.

Required scope: companies:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
nameany
domainany
websiteany
industryany
company_typeany
sizeany
annual_revenueany
descriptionany
cityany
stateany
countryany
phoneany
emailany
linkedin_urlany
sourceany
statusany
owner_emailany
tagsany
custom_fieldsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_company",
"arguments": {
"id": "\u2026"
}
}
}

update_contact

Update a contact by id (partial). Requires the contacts:write scope.

Required scope: contacts:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
emailany
first_nameany
last_nameany
phoneany
mobileany
job_titleany
departmentany
lead_statusany
lead_scoreany
sourceany
cityany
stateany
countryany
linkedin_urlany
owner_emailany
tagsany
custom_fieldsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_contact",
"arguments": {
"id": "\u2026"
}
}
}

update_deal

Update a deal by id (partial). Requires the deals:write scope.

Required scope: deals:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
nameany
valueany
currencyany
stage_nameany
probabilityany
deal_typeany
expected_close_dateany
descriptionany
next_stepany
sourceany
owner_emailany
tagsany
custom_fieldsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_deal",
"arguments": {
"id": "\u2026"
}
}
}

update_note

Update a note by id (partial). Requires the notes:write scope.

Required scope: notes:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
contentany
is_pinnedany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_note",
"arguments": {
"id": "\u2026"
}
}
}

update_task

Update a task by id (partial). Requires the tasks:write scope.

Required scope: tasks:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).
titleany
descriptionany
typeany
priorityany
statusany
contact_idany
company_idany
deal_idany
due_dateany
reminder_dateany
assigned_to_emailany
labelsany

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "update_task",
"arguments": {
"id": "\u2026"
}
}
}

delete_activity

Delete a activity by id. Requires the activities:write scope.

Required scope: activities:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_activity",
"arguments": {
"id": "\u2026"
}
}
}

delete_company

Delete a company by id. Requires the companies:write scope.

Required scope: companies:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_company",
"arguments": {
"id": "\u2026"
}
}
}

delete_contact

Delete a contact by id. Requires the contacts:write scope.

Required scope: contacts:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_contact",
"arguments": {
"id": "\u2026"
}
}
}

delete_deal

Delete a deal by id. Requires the deals:write scope.

Required scope: deals:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_deal",
"arguments": {
"id": "\u2026"
}
}
}

delete_note

Delete a note by id. Requires the notes:write scope.

Required scope: notes:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_note",
"arguments": {
"id": "\u2026"
}
}
}

delete_task

Delete a task by id. Requires the tasks:write scope.

Required scope: tasks:write

Input

ParameterTypeRequiredDescription
idstringRecord id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "delete_task",
"arguments": {
"id": "\u2026"
}
}
}

list_company_activities

List the activities associated with a company (by the company's id). Same filters/q/paging as search_activities. Requires companies:read and activities:read.

Required scope: activities:read + companies:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, activity_type, activity_subtype, title, description, entity_type, entity_id, contact_id, company_id, deal_id, performed_by_email, performed_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_company_activities",
"arguments": {
"id": "\u2026"
}
}
}

list_company_contacts

List the contacts associated with a company (by the company's id). Same filters/q/paging as search_contacts. Requires companies:read and contacts:read.

Required scope: companies:read + contacts:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, email, first_name, last_name, phone, mobile, job_title, department, lead_status, lead_score, source, city, state, country, linkedin_url, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_company_contacts",
"arguments": {
"id": "\u2026"
}
}
}

list_company_deals

List the deals associated with a company (by the company's id). Same filters/q/paging as search_deals. Requires companies:read and deals:read.

Required scope: companies:read + deals:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, value, currency, stage_name, probability, deal_type, expected_close_date, description, next_step, source, is_won, is_lost, deal_status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_company_deals",
"arguments": {
"id": "\u2026"
}
}
}

list_company_notes

List the notes associated with a company (by the company's id). Same filters/q/paging as search_notes. Requires companies:read and notes:read.

Required scope: companies:read + notes:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, content, entity_type, entity_id, is_pinned, created_by_email, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_company_notes",
"arguments": {
"id": "\u2026"
}
}
}

list_company_tasks

List the tasks associated with a company (by the company's id). Same filters/q/paging as search_tasks. Requires companies:read and tasks:read.

Required scope: companies:read + tasks:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, title, description, type, priority, status, contact_id, company_id, deal_id, due_date, reminder_date, completed_at, assigned_to_email, assigned_by_email, created_by_email, entity_type, entity_id, labels, source, task_number, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_company_tasks",
"arguments": {
"id": "\u2026"
}
}
}

list_contact_activities

List the activities associated with a contact (by the contact's id). Same filters/q/paging as search_activities. Requires contacts:read and activities:read.

Required scope: activities:read + contacts:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, activity_type, activity_subtype, title, description, entity_type, entity_id, contact_id, company_id, deal_id, performed_by_email, performed_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_contact_activities",
"arguments": {
"id": "\u2026"
}
}
}

list_contact_companies

List the companies associated with a contact (by the contact's id). Same filters/q/paging as search_companies. Requires contacts:read and companies:read.

Required scope: companies:read + contacts:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, domain, website, industry, company_type, size, annual_revenue, description, city, state, country, phone, email, linkedin_url, source, status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_contact_companies",
"arguments": {
"id": "\u2026"
}
}
}

list_contact_deals

List the deals associated with a contact (by the contact's id). Same filters/q/paging as search_deals. Requires contacts:read and deals:read.

Required scope: contacts:read + deals:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, value, currency, stage_name, probability, deal_type, expected_close_date, description, next_step, source, is_won, is_lost, deal_status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_contact_deals",
"arguments": {
"id": "\u2026"
}
}
}

list_contact_notes

List the notes associated with a contact (by the contact's id). Same filters/q/paging as search_notes. Requires contacts:read and notes:read.

Required scope: contacts:read + notes:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, content, entity_type, entity_id, is_pinned, created_by_email, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_contact_notes",
"arguments": {
"id": "\u2026"
}
}
}

list_contact_tasks

List the tasks associated with a contact (by the contact's id). Same filters/q/paging as search_tasks. Requires contacts:read and tasks:read.

Required scope: contacts:read + tasks:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, title, description, type, priority, status, contact_id, company_id, deal_id, due_date, reminder_date, completed_at, assigned_to_email, assigned_by_email, created_by_email, entity_type, entity_id, labels, source, task_number, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_contact_tasks",
"arguments": {
"id": "\u2026"
}
}
}

list_deal_activities

List the activities associated with a deal (by the deal's id). Same filters/q/paging as search_activities. Requires deals:read and activities:read.

Required scope: activities:read + deals:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, activity_type, activity_subtype, title, description, entity_type, entity_id, contact_id, company_id, deal_id, performed_by_email, performed_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_deal_activities",
"arguments": {
"id": "\u2026"
}
}
}

list_deal_companies

List the companies associated with a deal (by the deal's id). Same filters/q/paging as search_companies. Requires deals:read and companies:read.

Required scope: companies:read + deals:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, name, domain, website, industry, company_type, size, annual_revenue, description, city, state, country, phone, email, linkedin_url, source, status, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_deal_companies",
"arguments": {
"id": "\u2026"
}
}
}

list_deal_contacts

List the contacts associated with a deal (by the deal's id). Same filters/q/paging as search_contacts. Requires deals:read and contacts:read.

Required scope: contacts:read + deals:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, email, first_name, last_name, phone, mobile, job_title, department, lead_status, lead_score, source, city, state, country, linkedin_url, owner_email, created_by_email, created_at, updated_at. Custom fields via cf.<key>.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_deal_contacts",
"arguments": {
"id": "\u2026"
}
}
}

list_deal_notes

List the notes associated with a deal (by the deal's id). Same filters/q/paging as search_notes. Requires deals:read and notes:read.

Required scope: deals:read + notes:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, content, entity_type, entity_id, is_pinned, created_by_email, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_deal_notes",
"arguments": {
"id": "\u2026"
}
}
}

list_deal_tasks

List the tasks associated with a deal (by the deal's id). Same filters/q/paging as search_tasks. Requires deals:read and tasks:read.

Required scope: deals:read + tasks:read

Input

ParameterTypeRequiredDescription
idstringThe parent record's id (UUID).
qstringFree-text search across ALL text fields of the record (names, email, phone, etc.) and custom field values.
filtersarray<object>Field filters, AND-ed by default (set match='any' to OR). Filterable: id, title, description, type, priority, status, contact_id, company_id, deal_id, due_date, reminder_date, completed_at, assigned_to_email, assigned_by_email, created_by_email, entity_type, entity_id, labels, source, task_number, created_at, updated_at.
matchenum(all, any)Combine filters with AND (all) or OR (any). Default all.
groupsarray<object>Advanced: nested AND/OR. Each group = {conditions:[...], match:'all'|'any'}; combine groups with group_match. Use for '(A AND B) OR (C AND D)'.
group_matchenum(all, any)Combine groups with AND (all) or OR (any). Default all.
limitinteger
offsetinteger
sortstring
orderenum(asc, desc)

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_deal_tasks",
"arguments": {
"id": "\u2026"
}
}
}

Link a company to a contact (idempotent; optional link metadata such as role/is_primary). Requires companies:write and contacts:write.

Required scope: companies:write + contacts:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
departmentstring
job_titlestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
start_datestringISO date (YYYY-MM-DD).
end_datestringISO date (YYYY-MM-DD).
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_company_to_contact",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Link a company to a deal (idempotent; optional link metadata such as role/is_primary). Requires companies:write and deals:write.

Required scope: companies:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
ownership_percentagenumber
revenue_sharenumber
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_company_to_deal",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Link a contact to a company (idempotent; optional link metadata such as role/is_primary). Requires contacts:write and companies:write.

Required scope: companies:write + contacts:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
departmentstring
job_titlestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
start_datestringISO date (YYYY-MM-DD).
end_datestringISO date (YYYY-MM-DD).
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_contact_to_company",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Link a contact to a deal (idempotent; optional link metadata such as role/is_primary). Requires contacts:write and deals:write.

Required scope: contacts:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_contact_to_deal",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Link a deal to a company (idempotent; optional link metadata such as role/is_primary). Requires deals:write and companies:write.

Required scope: companies:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
ownership_percentagenumber
revenue_sharenumber
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_deal_to_company",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Link a deal to a contact (idempotent; optional link metadata such as role/is_primary). Requires deals:write and contacts:write.

Required scope: contacts:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe record to link to (UUID).
rolestring
is_primarybooleanMark this the primary link for the parent (made exclusive).
notesstring

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "link_deal_to_contact",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a company and a contact. Requires companies:write and contacts:write.

Required scope: companies:write + contacts:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_company_from_contact",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a company and a deal. Requires companies:write and deals:write.

Required scope: companies:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_company_from_deal",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a contact and a company. Requires contacts:write and companies:write.

Required scope: companies:write + contacts:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_contact_from_company",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a contact and a deal. Requires contacts:write and deals:write.

Required scope: contacts:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_contact_from_deal",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a deal and a company. Requires deals:write and companies:write.

Required scope: companies:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_deal_from_company",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}

Remove the link between a deal and a contact. Requires deals:write and contacts:write.

Required scope: contacts:write + deals:write

Input

ParameterTypeRequiredDescription
idstringThe source record's id (UUID).
target_idstringThe linked record's id (UUID).

Example

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "unlink_deal_from_contact",
"arguments": {
"id": "\u2026",
"target_id": "\u2026"
}
}
}