AI Reference
The full vocabulary of the connector: every subject your assistant can work with, and under each the actions it can take — with a prompt that lands. Use these words and the model maps them straight onto the right tools. Which tools your assistant actually sees depends on the scopes you granted (tools by scope).
Prompts here name boards and lists by their visible names — the assistant resolves ids itself. Actions marked † are flagged destructive, so well-behaved clients confirm them with you; sending additionally needs its own send scopes.
Your connection
| Action | Say it like |
|---|---|
Who am I whoami | "Check the Sortd connection — who are you acting as, and with which permissions?" |
Teams
The organisation you work in — the container for boards and the CRM.
| Action | Say it like |
|---|---|
List list_teams | "Which teams can you act in?" |
Get get_team | "Show me the Acme Support team's details and members." |
Boards
The shared workspaces where email becomes work.
| Action | Say it like |
|---|---|
List list_boards | "Which Sortd boards can you see?" |
Get get_board | "Describe the Support board — its lists and settings." |
Members list_board_members | "Who is on the Support board?" (these are the people tasks can be assigned to) |
Templates list_board_templates | "What board templates are available?" |
Create create_board | "Create a board called Onboarding from the support template." |
Rename update_board | "Rename the Onboarding board to Customer Onboarding." |
Delete † delete_board | "Delete the Scratch board." |
Lists
The columns on a board — To do, In progress, Done…
| Action | Say it like |
|---|---|
List list_board_lists | "What lists does the Support board have?" |
Create create_list | "Add a list called Waiting on customer to the Support board." |
Rename update_list | "Rename Waiting on customer to Blocked." |
Reorder reorder_list | "Move the Blocked list between In progress and Done." |
Delete † delete_list | "Remove the empty Icebox list from Support." |
Tasks
The cards — a task is often an email thread with an owner, a state, and a place on a board.
| Action | Say it like |
|---|---|
List / search list_tasks | "List the open tasks on Support / To do." · "Find tasks assigned to Jane due before Friday." |
Get get_task | "Show me the Acme renewal task — notes, due date, linked emails." |
Create create_task | "Add a task 'Chase the invoice' to Support / To do, due Thursday." |
Rename update_task | "Rename the Acme renewal task to 'Acme — renewal signed, send invoice'." |
Update update_task | "Set the due date to Monday, add a note, colour it red, and set Priority to High." (title, notes, dates, colour, custom-field values) |
Next step update_task | "Set the next step on the Acme card to 'Send revised quote'." — the one-line status under the card title |
Read / unread update_task | "Mark the cards I've handled today as read." |
Won / lost update_task | "Mark the Acme deal as won at 12,000, closed today." · "Mark the Beta deal lost — reason: went with a competitor." (sales cards) |
Assign assign_task | "Assign the Acme renewal to jane@acme.com." — or "unassign it" |
Move move_task | "Move both tasks to the Closed list — but do not complete them." |
Reorder reorder_task | "Put the overdue ones at the top of To do, in due-date order." |
Complete complete_task | "Mark the invoice task done." |
Reopen reopen_task | "Reopen it — the customer replied again." |
History get_task_history | "What happened on this task — who moved it and when?" |
Archive archive_task | "Archive everything in Done that was completed last month." (cards leave the board; emails untouched) |
Restore unarchive_task | "Bring the Acme card back from the archive." |
Archived list_archived_tasks | "What did we archive on the Support board this week?" |
Merge † merge_tasks | "These two cards are the same customer issue — merge the newer one into the older." |
Attach a link add_task_attachment | "Attach the contract link to the Acme card." · remove with remove_task_attachment |
Take off the board remove_task_from_list | "Take the personal reminder card off the team board." (moves to your own space) |
Delete † delete_task | "Delete the duplicate task." |
Tasks ↔ email
| Action | Say it like |
|---|---|
Task an email create_task_from_email | "Find the renewal thread from Jane and make it a task on Support / To do." (title comes from the subject) |
Find the existing card suggest_tasks_for_email | "Before you make a new card for this email, check whether it belongs on an existing one." |
Link another thread add_thread_to_task | "Attach the follow-up thread to the same task." |
Unlink a thread remove_thread_from_task | "That email isn't about this deal — take it off the card and put it back in my inbox." |
Comments
The team conversation on a task (not email — teammates see these on the board).
| Action | Say it like |
|---|---|
List list_task_comments | "What has the team said on the Acme task?" |
Add add_task_comment | "Comment: 'Waiting on legal, ETA Thursday.'" · "Comment and mention sam@acme.com: 'can you sign this off?'" (mentions notify board members) |
Delete † delete_task_comment | "Delete my last comment." |
Reminders
Your personal nudge on a task — never the whole board's.
| Action | Say it like |
|---|---|
Get get_task_reminder | "Do I have a reminder on the renewal task?" |
Set set_task_reminder | "Remind me about it tomorrow at 9 by email." |
Clear clear_task_reminder | "Drop that reminder." |
Custom fields
The board's own columns of structured data — status, priority, tags, numbers, people, contacts, checklists. Values on a task are set through update_task (options by name, people by email); these actions manage the definitions and sub-tasks.
| Action | Say it like |
|---|---|
List list_board_custom_fields | "What custom fields does Support have, and what are their options?" |
Create create_custom_field | "Add a tag field called Topic with options billing, bug, question." |
Update update_custom_field | "Add an option 'urgent' to Topic, and show it on cards." |
Set values update_task | "Set Stage to Proposal, Owner to sam@acme.com, Amount to 12,000 and tick Approved on the Acme card." |
Delete † delete_custom_field | "Remove the unused Region field from this board." |
Add a sub-task add_subtask | "Add 'Send the signed contract' to the Acme card's checklist and give it to Sam." |
Tick / change a sub-task update_subtask | "Tick 'Send the signed contract' on the Acme checklist." |
Remove a sub-task delete_subtask | "Take the duplicate item off the checklist." |
Mailbox & email threads
The connected Gmail, seen through Sortd's pipeline.
| Action | Say it like |
|---|---|
Mailbox get_mailbox | "Which mailbox are you connected to, and is it syncing?" |
Search search_email_threads | "Find the thread from Jane about the renewal." (full Gmail query syntax works: "search from:jane@acme.com after:2026/08/01") |
Read a thread get_email_thread | "Open that thread and summarise where it stands." |
What's new get_new_email | "Check for new mail since you last looked." (the server keeps the cursor — built for schedules) |
Labels list_email_labels / apply_email_thread_labels | "What labels exist?" · "Label that thread Billing and remove Inbox-zero." |
Read state set_email_thread_read_state | "Mark it as read." — or "mark it unread so I look later." |
Archive / unarchive archive_email_thread / unarchive_email_thread | "Archive it in Gmail now that it's tasked." · "Bring it back to the inbox." |
Snooze snooze_email_thread | "Snooze that thread until Monday morning." |
Drafts & sending
The send ladder: drafts wait in Gmail for your review; replies can only reach the thread's own participants; free-form send is the top rung. Each rung is its own scope.
| Action | Say it like |
|---|---|
List drafts list_email_drafts | "What drafts are waiting for me?" |
Templates list_email_templates | "Which email templates do we have?" |
Draft a reply create_email_draft | "Draft a reply saying Thursday works — leave it for my review." |
Draft a new email create_draft | "Draft a fresh email to jane@acme.com introducing the new plan." |
Delete a draft † delete_email_draft | "Delete the draft you made on the Acme thread — I'll reply myself." (permanent, never sends) |
Send a draft † send_email_draft | "That draft is good — send it." |
Reply directly † reply_to_email_thread | "Reply to the thread confirming Thursday." (structurally cannot reach anyone outside the thread) |
Send a new email † send_email | "Send the weekly summary to the team list." |
AI analysis
Sortd's own classification pipeline — status, urgency, sentiment, risk — as structured data.
| Action | Say it like |
|---|---|
Classify classify_email | "Get the AI read on this thread — urgency and sentiment." (cached results are instant; fresh ones take 10–30s) |
Existing analyses get_thread_analyses | "What has Sortd already classified on these threads?" |
Job status get_ai_job | "Is that classification finished yet?" |
Automations
The board's own rules — they keep running whether or not an assistant is connected.
| Action | Say it like |
|---|---|
List list_automations | "What automations run on the Support board?" |
Create create_automation | "When mail from acme.com arrives, create a card on Support / To do." |
Update update_automation | "Change that rule to also tag the card Billing." |
Enable / disable enable_automation / disable_automation | "Pause the Acme rule for now." · "Turn it back on." |
Delete † delete_automation | "Delete the old routing rule." |
Webhooks
Sortd pushing events to a server you run — the push-instead-of-poll patterns.
| Action | Say it like |
|---|---|
List list_webhooks | "What webhook subscriptions exist?" |
Create create_webhook | "Subscribe https://example.com/hook to task.created and thread.reply_received." |
Update update_webhook | "Add task.assigned to that subscription's events." |
Test test_webhook | "Send a test delivery so I can check my endpoint." |
Deliveries list_webhook_deliveries / replay_webhook_delivery | "Show recent deliveries and their status." · "Replay the failed one." |
Rotate secret † rotate_webhook_secret | "Rotate the signing secret for that subscription." |
Delete † delete_webhook | "Remove the staging webhook." |
Built-in prompts
The server also ships ready-made prompts your client may surface directly (as slash-prompts or suggestions) — each one is a whole workflow in a word:
| Prompt | What it runs |
|---|---|
plan_my_day | Walks your boards and due dates and proposes today's priorities. |
triage_unread | Sweeps new mail: checks whether each email belongs on an existing card first, classifies the threads, and proposes status, owner and a next step — without sending anything. |
find_stuck_threads | Surfaces conversations waiting on a reply for too long. |
Alongside the prompts, the server publishes one resource, sortd://welcome: a short orientation the assistant can read on connect — where to start, how granted permissions shape what it sees, and the house rules (use names as people see them, check for an existing card before creating one, archive rather than delete, typed custom-field values).
Next: the tools-by-scope catalog to see what a given grant exposes, AI guides for multi-step workflows, or AI Schedule to put any of this on a schedule.