> ## Documentation Index
> Fetch the complete documentation index at: https://docs.impellabs.tech/llms.txt
> Use this file to discover all available pages before exploring further.

# Tool reference

> Every tool the server offers, by area, with its risk and the scope that allows it.

This table comes from the server's tool registry. For the live list for your token, call `tools/list`. A risk other than Read means the call may wait for a person's approval. See [Tools](https://docs.impellabs.tech/connect/tools.md).

## Abilities

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `list_jobs` | List the background jobs. | Read | `abilities:read` |
| `start_job` | Start long work in the background. | Read | `abilities:read` |
| `stop_job` | Stop a background job. | Read | `abilities:read` |
| `task` | Give a task to a helper and wait for the answer. | Read | `abilities:read` |
| `web_search` | Search the web. | Read | `abilities:read` |

## Agents

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `agent_spend` | Owners and admins: every agent with its owner, status, who has it and the credits it used in 30 days. | Read | `agents:read` |
| `create_agent` | Make a new agent as a draft. | Write | `agents:write` |
| `get_agent` | Get one agent: its instructions, tone, tools, status and versions. | Read | `agents:read` |
| `list_agents` | List the agents the person can see, with each one's id, kind, status and versions. | Read | `agents:read` |
| `pause_agent` | Ask to pause a live agent. | Goes live | `agents:write` |
| `publish_agent` | Ask to publish an agent: its newest version goes live. | Goes live | `agents:write` |
| `restore_agent_version` | Put the settings of an earlier version of an agent back, as a new draft version. | Write | `agents:write` |
| `transfer_agent` | Give an agent to another person of the business (for example when its owner leaves). | Goes live | `agents:write` |
| `update_agent` | Change an agent: its name, portrait, instructions, tone, tools, other parts (guardrails, memory, tool guidance, sub… | Write | `agents:write` |

## Approvals

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `ask_colleague` | Ask a colleague for information the agent does not have. | Read | `approvals:read` |
| `information_request` | See the answer to a question asked to a colleague. | Read | `approvals:read` |
| `list_waiting_approvals` | List the approvals in Approvals that wait for the person (oldest first). | Read | `approvals:read` |
| `propose_record_update` | Suggest a change to an app record. The record holder approves it. | Read | `approvals:read` |
| `request_rule_change` | Add or change a company, department or personal rule (or a sharing rule, like always sharing deposit status with Sales). | Write | `approvals:write` |

## Apps

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `add_template_app` | Add a template as an app, empty: the template itself, or (draft true) the business's draft of it. | Write | `microapps:write` |
| `app_compute_document` | Work out a document's amounts and totals exactly, and number it. | Write | `microapps:write` |
| `app_records_bulk_change` | Change many records at once. A person approves large changes. | Write | `microapps:write` |
| `app_records_create` | Add a record to an app. | Write | `microapps:write` |
| `app_records_get` | Read one record of an app. | Read | `microapps:read` |
| `app_records_history` | Who changed what on a record, oldest first. | Read | `microapps:read` |
| `app_records_search` | Find records in an app. | Read | `microapps:read` |
| `app_records_set_status` | Set a record's status, or archive it. | Write | `microapps:write` |
| `app_records_update` | Change values on a record. | Write | `microapps:write` |
| `build_app` | Make the app design app proposed: its own place for records and a page in the sidebar. | Write | `microapps:write` |
| `change_app` | Change an app they have: give its app name (from design app). | Write | `microapps:write` |
| `customise_template` | Change the business's private draft of a template (fields, kinds of record, skills, rules), from the person's words. | Read | `microapps:read` |
| `design_app` | Design an app that keeps records the business wants to track, list, log or book (properties, viewings, customers, jobs… | Read | `microapps:read` |
| `give_app_access` | Let one of the person's agents use an app: read its records, or also add and change them. | Write | `microapps:write` |
| `list_apps` | List the business's apps and their fields. | Read | `microapps:read` |
| `review_app_change` | Show a change to an app that loses data (an entity or a field removed, a type changed, choices narrowed): give the app… | Read | `microapps:read` |
| `set_change_confirmer` | Choose who confirms a change to an app that loses data (a field or a kind of record removed, a type changed): for one… | Write | `microapps:write` |
| `share_app` | Give a person, a department or everyone an app, or take it away (level none). | Write | `microapps:write` |

## Availability

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `set_away` | Mark the person you work for as away (time off, out of office) from a time to a time, and who covers. | Write | `availability:write` |
| `who_is_available` | See who in the team is available now. | Read | `availability:read` |

## Booking

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `book_slot` | Book a free time. | Write | `booking:write` |
| `cancel_booking` | Cancel a booking. | Write | `booking:write` |
| `find_slots` | Find free times to book. | Read | `booking:read` |
| `list_services` | List the services customers can book. | Read | `booking:read` |
| `move_booking` | Move a booking to another time. | Write | `booking:write` |

## Campaigns

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `add_campaign_members` | Add contacts to a campaign, by id from find contact. | Write | `campaigns:write` |
| `broadcast_report` | Report on one broadcast: sent, delivered, read, replied, failed, skipped, opted out. | Read | `campaigns:read` |
| `campaign_report` | Report on one campaign: its goal, sources, workflows, numbers and its broadcasts. | Read | `campaigns:read` |
| `create_broadcast` | Send one message to many contacts on a channel (from list my channels), now or at scheduled at (ISO, UTC). | Send | `campaigns:write` |
| `create_campaign` | Make a CRM campaign: a name, its goal, and where its people come from (sources: a segment filter of contacts, or lead… | Write | `campaigns:write` |
| `list_campaigns` | List the CRM campaigns with their numbers: members, new this week, replied, converted, sent, delivered, read. | Read | `campaigns:read` |
| `run_campaign_workflow` | Start a switched-on workflow once for each of a campaign's people (those who opted out are skipped). | Write | `campaigns:write` |
| `start_goal_run` | Give an agent one goal for one customer: it calls them on a phone line, or writes to them on the channel, until the… | Send | `campaigns:write` |
| `stop_broadcast` | Stop a broadcast that is sending or waits for its time. | Write | `campaigns:write` |

## Capture

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `capture` | Keep what the person sends (their words, a voice note, photos) as a new record of one of the workspace's apps, such as… | Read | `capture:read` |
| `save_capture` | Save the record of a capture card after the person says yes: a new one, or, with same as, an addition to the record it… | Write | `capture:write` |

## Cases

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `change_behaviour_setting` | Change one behaviour setting when the person asks (read it first with get behaviour settings). | Write | `cases:write` |
| `get_behaviour_settings` | Read how agents behave: the hours before a quiet case closes, the minutes a hand-off waits for a person, how all agents… | Read | `cases:read` |

## Channels

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `bind_channel_agent` | Choose the one agent that answers customers on a channel. | Write | `channels:write` |
| `list_my_channels` | List the channels (WhatsApp numbers and others) you can see: health, problems and the agent that answers on each. | Read | `channels:read` |
| `propose_channel` | Show the person a card to connect a channel where customers write: kind is one of the channel kinds (for example… | Read | `channels:read` |
| `send_channel_template` | Send an approved message template to a contact on a channel (for a customer who has not written in the last day). | Send | `channels:write` |

## Chat

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `propose_plan` | For a task of three or more steps that change things, show the plan first: each step with its words, the tool and its… | Write | `chat:write` |
| `propose_team` | Propose a team of agents for the business on one card: each agent with the fields of create agent. | Write | `chat:write` |
| `read_spill` | Read a part of a long tool result that was kept apart. | Read | `chat:read` |
| `show_blocks` | Show records of the business, figures, a comparison or next steps as a card of blocks, after a short answer that stands… | Read | `chat:read` |
| `show_chart` | Show numbers over time or across a few groups as a chart card. | Read | `chat:read` |
| `show_file` | Show a file of the workspace as a card the person opens or downloads (a file a tool or a job made, or one they sent). | Read | `chat:read` |
| `show_report` | Show one to eight numbers with labels as a report card, for example the results of a job. | Read | `chat:read` |
| `test_agent` | Send one test message to an agent and get its answer. | Read | `chat:read` |
| `turn_on_app_workflows` | Switch on the workflows that came with an app (its setup step "workflows"). | Write | `chat:write` |

## Connectors

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `connector_money` | Do a payment action in a connected tool. | Money | `connectors:write` |
| `connector_operations` | List what the connected tools can do. | Read | `connectors:read` |
| `connector_read` | Read from a connected tool. | Read | `connectors:read` |
| `connector_send` | Send through a connected tool. | Send | `connectors:write` |
| `connector_write` | Write to a connected tool. | Write | `connectors:write` |
| `grant_capability` | Let an agent call one operation of a connected tool (allow true), or stop it (allow false). | Write | `connectors:write` |
| `list_connections` | List the workspace's connected tools (MCP servers and APIs) and the person's own: their state, their operations (key… | Read | `connectors:read` |
| `list_providers` | List the providers ImpelLabs knows how to connect (a store, a calendar, lead forms): slug, what it does (line), whether… | Read | `connectors:read` |
| `propose_connect` | Show the person a card to connect a tool: a known provider (kind definition, with its slug from list providers), an MCP… | Read | `connectors:read` |

## Contacts

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `add_contact_note` | Add a note to a customer for the team. | Write | `contacts:write` |
| `contact_context` | Read a customer's profile, notes and recent messages. | Read | `contacts:read` |
| `dismiss_contact_match` | Two contacts a suggestion paired are different people. | Write | `contacts:write` |
| `find_contact` | Find a customer by name, phone, email or handle. | Read | `contacts:read` |
| `list_contact_matches` | List customers who may be the same person twice (with the reasons), and merges from the last 30 days that can be undone. | Read | `contacts:read` |
| `merge_contacts` | Join two contacts of one person. | Write | `contacts:write` |
| `undo_contact_merge` | Undo a merge: the joined contact stands on its own again. | Write | `contacts:write` |

## Email templates

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `create_email_broadcast` | Send an email template to a group of contacts, now or at scheduled at (ISO, UTC), from an email channel (list my… | Send | `emailtemplates:write` |
| `create_email_template` | Make an email template: promotional (needs consent and an unsubscribe link) or transactional (an order, a receipt, a… | Write | `emailtemplates:write` |
| `list_email_library` | List the ready-made email templates of the library, by category, with the blocks each is made of. | Read | `emailtemplates:read` |
| `list_email_templates` | List the workspace's email templates (name, kind, subject, merge fields). | Read | `emailtemplates:read` |
| `preview_email_template` | Show a template as one person gets it: a sample person, or a contact id. | Read | `emailtemplates:read` |
| `send_test_email` | Send one test email: a template filled for a sample person, to one address (usually the person's own), from their… | Send | `emailtemplates:write` |
| `set_brand` | Set the business's look that emails and email templates use: its colours (primary for buttons, accent, ink for… | Write | `emailtemplates:write` |
| `set_mailbox_signature` | Set the signature every email from a mailbox ends with (list my channels for the mailbox): who signs, how to reach… | Write | `emailtemplates:write` |
| `update_email_template` | Change an email template: a saved revision with the new subject, html or text, or a new name. | Write | `emailtemplates:write` |
| `use_email_library_template` | Make a template from a library template (list email library), with the business's name, logo, colours and font filled… | Write | `emailtemplates:write` |

## Evals

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `apply_improvement` | Make a new draft version of an agent from an improvement that answered better. | Write | `evals:write` |
| `check_agent` | See the checks (refusals and prompt injection) of an agent's newest version. | Read | `evals:read` |
| `improve_agent` | Find better instructions for an agent from its recent test chats: proposed changes are tested on the same chats and… | Read | `evals:read` |

## Files

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `read_file` | Read the text of a file the person sent (PDF, Word, text, CSV), or the words of a voice note. | Read | `files:read` |

## Imports

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `import_contact_group` | Add the people in a CSV or Excel file (one the person sent, or one made with make sheet) to a named group, for an email… | Write | `imports:write` |
| `import_file` | Import a CSV or Excel file (one the person sent, or one made with make sheet) into an app, with the mapping they agreed. | Write | `imports:write` |
| `make_sheet` | Save rows you already hold as a CSV file in the workspace, so preview import, import file or import contact group can… | Write | `imports:write` |
| `preview_import` | Read a CSV or Excel file (one the person sent, or one made with make sheet) against one of the workspace's apps: its… | Read | `imports:read` |
| `undo_import` | Undo an import of the person within 30 days: the records it added are archived and the ones it changed are put back. | Write | `imports:write` |

## Knowledge

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `create_knowledge_group` | Make a knowledge group, like "Course prices" or "Visa rules": a set of documents and facts that only the agents… | Write | `knowledge:write` |
| `file_into_group` | Put documents and saved facts in a knowledge group. | Write | `knowledge:write` |
| `knowledge_conflict_rule` | Set how knowledge conflicts are settled. | Write | `knowledge:write` |
| `knowledge_conflicts` | Show the knowledge conflicts that wait: where the sources (the person, the website, a file) give different values for… | Read | `knowledge:read` |
| `list_knowledge_groups` | List the knowledge groups with what is in each, the documents (with ids) and the keys of the saved facts. | Read | `knowledge:read` |
| `note_unanswered` | Note a question that knowledge did not answer, so the team can add the answer. | Read | `knowledge:read` |
| `read_website` | Read up to a few pages of a business website (same site only) and save the facts on it: services, hours, address… | Read | `knowledge:read` |
| `remember` | Keep a short memory for later. | Write | `knowledge:write` |
| `resolve_knowledge_conflict` | Settle a knowledge conflict with the person's answer on its card. | Write | `knowledge:write` |
| `save_business_fact` | Save one fact about the business, such as its hours or prices, so every assistant knows it. | Write | `knowledge:write` |
| `search_knowledge` | Search the business's documents and website pages. | Read | `knowledge:read` |
| `show_found` | Show what you learned from a file the person sent (a price list, a menu, FAQs) as a card: a title, a lead like "From… | Read | `knowledge:read` |

## Lead sources

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `create_form` | Make a form with its own page and link. | Write | `leadsources:write` |
| `list_forms` | List the business's forms: their links, how many answered, their questions. | Read | `leadsources:read` |
| `list_record_fields` | The fields of a connected CRM's kind of record (records: leads, contacts, as list connections shows), with the values… | Read | `leadsources:read` |
| `sync_records` | Keep an app's records in step with a connected CRM's records, both ways, field by field. | Write | `leadsources:write` |
| `update_form` | Change a form: its questions (send the whole new list), its page words and colour, its link, or on false to close it. | Write | `leadsources:write` |

## Mail flow

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `classify_email` | Sort one email into the workspace's categories again: by inbound id, or a pasted mail (subject, text, sender). | Read | `mailflow:read` |
| `email_inbox_report` | Email in the last days (default 7): mail per category, answers to mail we sent, mail that needs a person, replies and… | Read | `mailflow:read` |
| `file_email` | Label an email at the mailbox. | Write | `mailflow:write` |
| `list_email_categories` | Read the categories inbound email is sorted into, and the email reply settings (allowed topics, auto-send, quiet hours… | Read | `mailflow:read` |
| `reply_to_email` | Answer an email in its thread (Re: subject, In-Reply-To and References set). | Send | `mailflow:write` |
| `set_email_categories` | Change the categories email is sorted into. | Write | `mailflow:write` |

## Platform map

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `platform_guide` | Look up a menu, page, tab, button or icon of the app by the words a person uses for it (for example "the sparkle… | Read | `platformmap:read` |

## Privacy

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `start_data_request` | Start a data request when a customer (or a person who left) asks what the business holds on them, or asks to delete it. | Write | `privacy:write` |

## Routines

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `create_routine` | Make a routine: an agent's job on a cue (a time, or an event), with limits a day and what waits for the person's yes. | Write | `routines:write` |
| `list_routines` | List the routines the person sees: cue, agent, state, next run and what each used today. | Read | `routines:read` |
| `pause_routine` | Pause a routine (paused: false starts it again). | Write | `routines:write` |
| `run_routine_now` | Run a routine now, once. | Write | `routines:write` |
| `update_routine` | Change a routine: name, job, agent, cue or limits, or let its agent message customers (allow messages). | Write | `routines:write` |

## Sandbox

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `run_code` | Run code to count, make a chart, a spreadsheet or a PDF. | Write | `sandbox:write` |

## Search

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `search` | Search the business's cases (customer messages), contacts, app records, files, knowledge and tasks, and your person's… | Read | `search:read` |

## Skills

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `list_skills` | The workspace's skills: key, name and when to use each. | Read | `skills:read` |
| `save_skill` | Make a skill (reusable instructions agents load when needed), or change one by its key. | Write | `skills:write` |
| `use_skill` | Read the playbook of a skill before you do the work it covers. | Read | `skills:read` |

## Staffing

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `check_org` | Check a team proposal before you show it: the same arguments as propose org. | Read | `staffing:read` |
| `propose_org` | Propose the business's team on one card, after you know who sells and how leads come in: departments with their… | Write | `staffing:write` |

## Tasks

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `comment_on_task` | Add a comment to a task. | Write | `tasks:write` |
| `complete_task` | Mark a task done. | Write | `tasks:write` |
| `create_task` | Add a task. | Write | `tasks:write` |
| `list_tasks` | List the tasks. | Read | `tasks:read` |
| `update_task` | Change a task. | Write | `tasks:write` |

## Today

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `business_report` | The business's report for the last 7 or 30 days, as the Home page shows it: chats, leads, orders and credits by day… | Read | `today:read` |
| `today` | Your person's day: what waits for their yes, follow-ups, viewings today, what agents did while they were away, open and… | Read | `today:read` |
| `today_team` | For a manager: each person's numbers today in the departments they manage (owners and admins: all), with what waits for… | Read | `today:read` |

## Workflows

| Tool | What it does | Risk | Scope |
| - | - | - | - |
| `add_agent_workflow` | Let an agent use one more workflow, like a skill: it reads each customer message and picks the workflow that fits (a… | Write | `workflows:write` |
| `create_workflow` | Save a workflow (a graph of steps) and, with agent id, make that agent run it on a channel (chat by default; a new… | Write | `workflows:write` |
| `get_workflow` | Get one workflow with its graph and its problems. | Read | `workflows:read` |
| `list_workflow_templates` | The workflow library: each template's slug, name, what it does and whether this business can use it now (what it lacks). | Read | `workflows:read` |
| `list_workflows` | List the workflows: id, name, a one-line summary, on or off, and which agents run them. | Read | `workflows:read` |
| `remove_agent_workflow` | Take a workflow away from an agent: it stops picking it. | Write | `workflows:write` |
| `sync_sheet` | Keep an app's records in step with a connected sheet (a table connection: its columns are in list connections). | Write | `workflows:write` |
| `update_workflow` | Change a workflow: name, description or its whole graph (a saved revision). | Write | `workflows:write` |
| `use_workflow_template` | Make a workflow from the library (list workflow templates is the library; sell-in-chat takes orders in the chat) and… | Write | `workflows:write` |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.