Workspace discovery
Example prompts:
- “Which Quo numbers can I use, and who is assigned to each one?”
- “Find Jamie’s user ID and show the inboxes assigned to them.”
Messages and conversations
Choose the correct send tool
Bulk message modes
send-bulk-messages accepts one of two input modes:
- Same message: Provide
toas an array of 2–40 phone numbers andcontentas the message sent to every recipient. - Personalized messages: Provide
messagesas an array of 2–40 objects, each containing that recipient’stophone number andcontent.
messages with to or content, and include each recipient only once. Use send-message when sending to one person.
All three send tools:
- Require a
fromnumber that belongs to the connected Quo workspace. The tool accepts its E.164 number orPN…phone-number ID. - Accept message content up to 1,600 characters.
- Use prepaid messaging credits and count as API-powered messages. See API pricing.
- Cannot undo or recall a message after it is sent.
- “Show me yesterday’s messages across the support inbox and summarize the open questions.”
- “Summarize this week’s support inbox, but skip conversations we already marked done.”
- “Draft a reply to +14165550100, but ask me to approve it before sending.”
- “Send this service notice privately to these 12 customers so none of them can see the other numbers.”
- “Send each attendee their own confirmation time from this list as a private message.”
Calls and voicemail
Voicemail processing is asynchronous. If a voicemail has an
in-progress status, its duration, transcript, and recording URL may be empty; retry after processing completes. A missed call with no voicemail is still returned.
Call and message results include activity IDs (AC…). Multi-contact results can also include conversation IDs (CN…). Use these IDs to link a follow-up task to the exact call, message, or conversation.
Example prompts:
- “What calls did we miss yesterday, and which callers left a voicemail?”
- “Summarize this week’s completed call transcripts for the sales inbox.”
- “Find Pat’s call from this morning and create a task linked to that call.”
Contacts
Phone numbers are normalized to E.164. Email values must be valid email addresses.
update-contact only works on contacts created in Quo, through the API, or through Quo MCP. Contacts created by an integration cannot be updated — use get-contact to check a contact’s source, and make the change in the system that created it.- “Look up the contact with +14165550100 and show their custom fields.”
- “Create a contact for Priya Shah at Northwind, then show me the new contact ID.”
- “Clear the outdated role on this contact without changing any other field.”
Tasks
When creating a task, use the most specific link available:
- Use an
activityId(AC…) for one particular call or message. - Use a
conversationId(CN…) for the whole thread with a contact. - Use an inbox number or
PN…ID only when the task is not about a specific activity or conversation.
update-task can update the title and description together as one change. Assignment, unassignment, due-date changes, completion or reopening, and conversation linking or unlinking are separate change types.
Example prompts:
- “List the open tasks and show who each is assigned to.”
- “Create a follow-up task for tomorrow linked to this missed call and assign it to Alex.”
- “Mark task
TK…complete.”
Feedback
This tool is opt-in. A client should not run it as a routine survey or raise it in an unrelated conversation, and it should offer to send feedback at most once — after trying to help — when you ask to share feedback or hit a limitation it cannot work around. Frustration alone is not consent.
A submission cannot be edited or withdrawn, and Quo does not promise a reply. Review the summary before approving it, and keep credentials, unrelated personal details, and protected health information out of the feedback.
Example prompts:
- “Send Quo my feedback that I need to schedule a message for a future date.”
- “Yes, please pass that along to the product team.”
Fetch modes and pagination
The fetch tools can search a specific contact deeply or discover activity across an inbox broadly.One contact
SetparticipantPhoneNumber to query one contact.
fetch-messages,fetch-call-transcripts, andfetch-missed-callsreturn up to 100 matching records per page.- If the response includes a next-page token, call the same tool with the same filters plus
pageToken. - A
pageTokencan be used only whenparticipantPhoneNumberis set. - One-contact queries always return that contact’s full history, including conversations marked done or snoozed.
Whole inbox
OmitparticipantPhoneNumber to discover conversations across the inbox. By default this includes conversations marked done or snoozed.
fetch-messagesreturns up to 10 in-window messages per contact across up to 50 contacts. It flags contacts with more messages so the client can re-query that contact in one-contact mode.maxResultsapplies to one-contact message queries and is ignored by the whole-inbox message view.fetch-messagesandfetch-call-transcriptsacceptexcludeDoneConversations. Set it totrueto skip conversations that are currently marked done or snoozed; it defaults tofalse, which includes every conversation.fetch-missed-callsdoes not accept this filter.- Call tools aggregate matching calls across discovered participants, up to the requested result limit.
- If a response indicates that older conversations remain, continue discovery with the returned
conversationPageToken.
Dates, times, and phone numbers
- Pass
createdAfter,createdBefore, and task due dates as ISO 8601 datetimes withZor an explicit offset, such as2026-08-21T14:00:00-04:00. - Fetch results use UTC timestamps. A client should convert relative requests such as “yesterday” from the user’s local timezone to the corresponding UTC range, then present results in the user’s timezone.
- Use E.164 for external phone numbers, such as
+14165550100. International numbers are supported. - When a tool accepts an inbox, use either its E.164 number or its
PN…ID. Runlist-inboxesto discover valid values.