CRM Write Tools
Tools for creating and updating CRM records, contacts, notes, tasks, and call logs
This domain contains 8 tools that write to your CRM: record creation and updates, contact management, notes, task management, and call logging. For read operations, see CRM Read Tools.
Tools
create_crm_record
Creates a manual CRM record (a business not sourced from lead scraping). Counts against the plan's CRM record limit.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
business_name | string (1–300) | Yes | Business name |
mails | array of strings | Yes | At least one email address |
phones | array of strings | No | Phone numbers |
city / state / country | string | No | Location details |
tags | array of strings | No | Tags |
Prompt your AI like this: "Create a new CRM record for 'Star Furniture' with the email info@starfurniture.com and tag it 'furniture'."
promote_lead_to_crm
Creates a CRM record from an existing scraped lead — it carries over emails/phones and auto-imports enrichment contacts. Does not consume the manual CRM quota; idempotent per lead (calling it again won't create a duplicate).
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
lead_id | string | Yes | Lead row ID (as returned by list_leads) |
Prompt your AI like this: "Move every dental clinic from the Ankara scrape that has an email into the CRM."
update_crm_record
Consolidated updater for a CRM record: pipeline stage, tags (set/add/remove), temperature, opted-out, emails/phones, next action, and soft delete/restore. Only provided fields change. Pipeline stage changes require ownership or the can_manage_tasks permission.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
crm_id | number | Yes | CRM record ID |
tracking_status | enum | No | new, contacted, qualified, proposal, negotiation, closed_won, closed_lost |
tags_set | array of strings | No | Replaces all tags |
tags_add / tags_remove | array of strings | No | Adds / removes tags |
temperature | cold / warm / hot | No | Lead temperature |
opted_out | boolean | No | Opt-out flag |
mails / phones | array of strings | No | Email / phone lists |
next_action_at | string (datetime) | No | When the next action is due |
next_action_type | enum | No | call, email, meeting, follow_up |
last_contact_at | string (datetime) | No | Last contact timestamp |
deleted | boolean | No | true = soft delete, false = restore |
Prompt your AI like this: "Move Star Furniture to the negotiation stage, mark it hot, and add the 'priority' tag."
add_crm_contact
Adds a person-level contact under a CRM record (source: manual).
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
crm_id | number | Yes | CRM record ID |
full_name | string (1–200) | Yes | The contact's full name |
email | string (email) | No | Email address |
mobile_number | string | No | Mobile phone |
job_title | string | No | Job title |
company_name | string | No | Company name |
linkedin_url | string (URL) | No | LinkedIn profile |
city / country | string | No | Location |
tags | array of strings | No | Tags |
opted_out | boolean | No | Opt-out flag |
Prompt your AI like this: "Add purchasing manager John Doe to the Star Furniture record; his email is john@starfurniture.com."
update_crm_contact
Updates fields of an existing contact. Only provided fields change.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
contact_id | string (UUID) | Yes | Contact ID |
| Other fields | — | No | Same optional fields as add_crm_contact (full_name, email, job_title, etc.) |
Prompt your AI like this: "Update John Doe's job title to 'General Manager'."
add_crm_note
Appends a note to a CRM record, optionally pinned.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
crm_id | number | Yes | CRM record ID |
content | string (1–10,000) | Yes | Note content |
is_pinned | boolean | No | Pin the note (default false) |
Prompt your AI like this: "Add a pinned note to Star Furniture: 'Quote sent, waiting for reply'."
manage_crm_task
Creates, updates, completes, or cancels a task. action=create requires title; update, complete, and cancel require task_id. Members may only modify tasks they created or are assigned to, unless they hold the can_manage_tasks permission.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
action | enum | Yes | create, update, complete, cancel |
task_id | string (UUID) | Conditional | Required for update/complete/cancel |
crm_id | number | No | Links the task to a CRM record (create only) |
title | string (1–300) | Conditional | Required for create |
description | string (≤5000) | No | Task description |
priority | enum | No | low, medium, high |
due_date | string (datetime) | No | Due date |
assigned_to | string | No | User ID of the assignee |
Prompt your AI like this: "Create a high-priority task on Star Furniture: 'Follow up on the quote on Friday'."
log_crm_call
Records a phone call against a CRM record: type, outcome, duration, and notes.
Key parameters:
| Parameter | Type | Required | Purpose |
|---|---|---|---|
workspace_id | string (UUID) | Yes | Workspace ID |
crm_id | number | Yes | CRM record ID |
call_type | enum | No | outgoing, incoming, missed (default outgoing) |
outcome | enum | Yes | answered, no_answer, busy, voicemail, callback_scheduled |
duration_seconds | number | No | Call duration in seconds |
notes | string (≤5000) | No | Call notes |
callback_scheduled_at | string (datetime) | No | Scheduled callback time |
called_at | string (datetime) | No | When the call happened (defaults to now) |
Prompt your AI like this: "I called Star Furniture, they answered, it took 12 minutes; log it with the note 'agreed on pricing'."