Ask Adapt tools
Every tool Ask Adapt can use, whether it only reads or prepares a change for approval.
Generated, do not edit
This page is generated from the code by tools/gen_reference.py. Change the code, then run the generator again. Edits made here are overwritten.
Ask Adapt has 63 tools: 25 read tools and 38 prepare tools. A read tool answers from your own workspace. A prepare tool never changes anything itself: it makes an approval card with the exact change, and the change only runs when you press Approve. Tools that delete or cancel do not exist, and a tool whose name reads as deleting is refused when the server starts.
Read tools
| Tool | Action | What it does | Inputs |
|---|---|---|---|
account_overview |
read | The user's Home: what moved on the businesses they own (movers: news, contract wins, hires, director changes, with dates), risk signals, how many companies they hold, how good those records are, lists,... | none |
arrivals_recent |
read | The latest enquiries to one inlet (name or id from inlets_list): when, whether each became a record, and any marks (possible spam, test, possible duplicate...). | inlet (required), how_many |
calendar_free_slots |
read | Find free slots on the user's Google Calendar using free/busy, inside working hours (default 09:00-17:30 UK, weekdays) for a meeting of the requested length (default 30 minutes). | start_date, end_date, duration_minutes, day_start, day_end |
calendar_upcoming |
read | List upcoming events on the user's connected Google Calendar. | start, end, limit |
campaign_drafts |
read | Show the emails written for an email campaign (email 1 per lead): who each goes to, the subject, a short preview, and why a lead has none (held, excluded). | campaign_name (required) |
campaign_report |
read | Explain one campaign's numbers (email or LinkedIn): status, recipients, sent, replies and reply rate, replies by type, pace, schedule, approval and spam check; for LinkedIn queued, sent, accepted, replied. | campaign_name (required) |
crm_pipeline |
read | The user's sales pipeline: for every stage, how many deals and their total and weighted value (GBP, lifetime), plus the biggest open deals and the ones that have gone quiet. | none |
crm_recent_activity |
read | The latest events across the CRM (notes, calls, stage moves, new records), newest first, each with its record's name. | limit |
crm_record |
read | One CRM record in full, for a brief: its fields, linked organisation/contact/deals, latest notes, open tasks and recent timeline. | record_id, name, object |
crm_search |
read | Search the user's CRM (their team workspace). | object (required), text, stage, status, limit |
draft_reply |
read | Help answer a campaign reply. | reply (required), body, subject |
inlets_list |
read | The ways enquiries reach the user's CRM: each form, webhook or connected tool, with where it files leads, how many have arrived, what is waiting, who gets a new one and whether a reminder is set. | none |
lead_brief |
read | What the book can say about the business behind ONE CRM record (a record_id from an earlier result): how sure the match is, which source kinds agree or differ with what the record says, when each source was... | record_id (required) |
lead_detail |
read | Everything the book holds on ONE business: register details, directors, what is on file, and its recent signals (news, hires, director changes). | lead_id, name, company_number |
morning_summary |
read | A morning briefing: new and unread replies (and which look interested), how each running campaign is doing (sent, replies), LinkedIn campaigns, today's activity goals, exports left this month, and what moved... | none |
my_lists |
read | The user's saved lists of businesses, with how many are in each. | list_name |
my_settings |
read | The user's current settings: theme, density, results per page, time zone, profile, reply alerts, digest, do-not-contact count and Adapt Outreach settings. | none |
open_page |
read | page, section, lead, deal, campaign, list |
|
opportunities_for |
read | The reasons to talk to a business now, from what the book has seen: a new signal, a mismatch between what it files and what it looks like, a contact we have just found. | lead_id, name, company_number, reason, how_many |
outreach_campaigns |
read | The user's email outreach campaigns: status (draft, active, paused...), recipients, sent, replies and whether the drafts are approved. | none |
outreach_replies |
read | Replies to the user's email campaigns (newest first), with who wrote, the campaign, a preview and how each was classified (interested, question, out of office...). | unread_only, limit |
pending_approvals |
read | Show the approval cards waiting for this user, including a LinkedIn campaign start that an AI assistant prepared through the Adapt connector (MCP). | none |
search_leads |
read | Search the UK book of businesses . | sector, area, keywords, verified_email, has_director, has_phone, has_email, has_website, how_many |
team_activity |
read | What the team has been doing: the latest CRM events with who did each (notes, calls, stage moves, new records). | limit |
team_roster |
read | The people in the user's CRM who can be given a lead, with their role and whether they are on the rota. | none |
Prepare tools (need your approval)
| Tool | Action | What it does | Inputs |
|---|---|---|---|
add_reminder |
create | Adding a reminder (a dated task) to the user's Tasks page and Home screen: title, date (YYYY-MM-DD, today, tomorrow or a weekday), time (HH:MM UK time) and optionally the business it is about. | title (required), date, time, business |
add_suppression |
create | Adding email addresses or whole domains to the user's do-not-contact list (Settings) and to Adapt Outreach's blocklist, so campaigns never email them. | values (required), reason |
add_to_list |
update | Adding businesses (lead_ids from earlier results, or a search) to one of the user's saved lists. | list_name (required), lead_ids, sector, area, keywords, verified_email, has_director, has_phone, has_email, has_website, how_many |
archive_list |
archive | Archiving one of the user's saved lists (the way to tidy up; Adapt keeps the data). | list_name (required) |
assign_dial_pack |
update | Handing a caller-console list (a dial pack already sent to the console) to a calling team; their manager then shares the calls out. | list_name (required), team_name (required) |
assign_lead |
update | Giving a CRM record (a lead, company, person or deal) to one person in the CRM, found by name, email or account_id from team_roster. | person, record_id, record_name, object |
calendar_create_event |
create | Creating one event on the user's connected Google Calendar. | title (required), start (required), end, duration_minutes, description, add_meet, invitees |
calendar_update_event |
update | Rescheduling, retitling or changing invitees on an event Adapt created for this account. | event_id (required), title, start, end, duration_minutes, invitees, description |
campaign_settings |
update | Changing one email campaign's sending limits (daily_min and daily_max: each day sends a steady number between them; daily_limit: a hard cap) and working hours (days e.g. | campaign_name (required), daily_min, daily_max, daily_limit, days, start_time, end_time, timezone |
change_settings |
update | Changing the user's own settings: reply_alerts (on/off), digest (daily, weekly, off), density (comfortable, compact), results_per_page (25, 50, 100, 200), verified_only, timezone, name, job_title, company,... | sensitive |
create_list |
create | A new saved list, empty or filled with businesses from earlier results (lead_ids) or from a search (sector, area...). | name (required), lead_ids, sector, area, keywords, verified_email, has_director, has_phone, has_email, has_website, how_many |
crm_add_book_note |
create | INTERNAL, for the arrival agent only: PROPOSE a note on a new enquiry made from what the book knows about the business. | record_id (required), text (required) |
crm_add_note |
create | A note on a CRM record, in the user's words. | text, record_id, record_name, object |
crm_archive_record |
archive | Archiving a CRM record (the way to tidy up; Adapt keeps the data). | record_id, record_name, object |
crm_archive_task |
archive | Archiving a task on a CRM record, found by its title (Adapt keeps the data; it can be brought back). | task_title, record_id, record_name, object |
crm_create_record |
create | A new CRM record: object is leads, orgs, contacts or deals; values by field name (e.g. | object (required), values (required), stage, link_org, link_contact |
crm_create_task |
create | A task on a CRM record (a title and an optional due date). | title, due, record_id, record_name, object |
crm_restore_record |
update | Bringing back an archived CRM record. | record_id, record_name, object |
crm_update_deal |
update | Changing a CRM record: move a deal to another stage (a lost stage needs lost_reason), and/or set field values (by field name, e.g. | record_id, record_name, object, stage, lost_reason, values |
enrich_lead |
update | Re-checking one business now (Enrich: Adapt re-reads its website and public records for fresher details). | lead_id, name |
enrol_opportunity |
update | Adding the business behind ONE reason to talk (an opportunity_id from opportunities_for) to one of the user's DRAFT or PAUSED email campaigns. | campaign_name (required), opportunity_id (required) |
enrol_opportunity_linkedin |
update | Queueing the right person at the business behind ONE reason to talk (an opportunity_id from opportunities_for) onto one of the user's DRAFT or PAUSED LinkedIn campaigns. | campaign_name (required), opportunity_id (required) |
export_list |
create | Exporting one saved list to a CSV file. | list_name (required) |
mark_reply |
update | Labelling a campaign reply in the Unibox (status: interested, meeting_booked, question, out_of_office, wrong_person, not_interested, unknown) and/or marking it read. | reply (required), status, mark_read |
opportunity_outcome |
update | Recording what came of a reason to talk the user took into a campaign: replied, meeting, won, lost or not_interested. | opportunity_id (required), outcome (required) |
pause_campaign |
pause | Pausing one of the user's SENDING email campaigns: it stops sending at once, follow-ups included. | campaign_name (required) |
pause_linkedin_campaign |
pause | Pausing one of the user's RUNNING LinkedIn campaigns (email campaigns use pause_campaign). | campaign_name (required) |
queue_campaign_leads |
update | Adding businesses (lead_ids from earlier results, or a search) to one of the user's DRAFT or PAUSED email campaigns as recipients. | campaign_name (required), lead_ids, sector, area, keywords, verified_email, has_director, has_phone, has_email, has_website, how_many |
queue_linkedin_leads |
update | Queueing people onto one of the user's DRAFT or PAUSED LinkedIn campaigns. | campaign_name (required), people (required) |
restore_list |
update | Bringing back an archived list. | list_name (required) |
reveal_lead |
update | Revealing one business's contact details (email, phone...). | lead_id, name |
set_theme |
update | Switching the app between the light and the dark theme (dark darkens the sidebar and menus; it is the only dark mode the app has). | theme, accent |
start_campaign |
start | Starting (launching a draft, or resuming a paused) email or LinkedIn campaign. | campaign_name (required), channel |
user_deactivate |
update | Deactivating a member. | account_id (required) |
user_invite |
create | Inviting someone to this organisation by email, as a member or an admin. | email (required), role |
user_reactivate |
update | Making a deactivated member active again. | account_id (required) |
user_set_role |
update | Changing a member's role to member or admin. | account_id (required), role (required) |
write_campaign_emails |
create | Pressing Write emails on a DRAFT or PAUSED email campaign that writes email 1 per lead: each ready lead gets its own checked email 1. | campaign_name (required) |