Skip to main content
Audalis MCP has seven tools, and all of them are read-only (readOnlyHint: true). Every MCP client sees the same set. An assistant can chain them, for example to find a contact, open their latest call, and list the follow-ups it created. Tool names and parameter names are stable identifiers.
Your assistant should call get_workspace_info first. It returns the workspace’s time zone, so “today” and “this week” are turned into the right dates.

Workspace

get_workspace_info

Returns the connected workspace’s name, time zone, and the current time. Takes no parameters.
“What time zone is my workspace in?”

Calls

list_calls

Phone calls in a date range, newest first, with caller, outcome, sentiment, and a short summary. Covers calls handled by your team and by Arlo. Test calls are left out. Each call includes callId, startedAt, direction, status, missed, from, to, contactName, durationSeconds, handledByArlo, outcome, sentiment, and summary. Summaries are cut to 300 characters; use get_call for the full text. The result also includes nextCursor, which is null when there are no more pages.
“What calls did we miss yesterday?” “Which calls did Arlo handle this week, and how did they go?”

get_call

One call in full: the complete summary, a customer-experience rating with its reasoning, the booked appointment time (if any), and the follow-up tasks the call created.
“Open the call from (512) 555-0142 this morning. Did the caller book?”

Bookings

list_bookings

Appointments Arlo booked in a date range: Jobber jobs it scheduled and Square bookings it confirmed. Also returns Arlo calls where the caller asked for service but didn’t end up booked, which is your callback list.
“Which callers asked for service this week but didn’t book? Who should I call back first?” “How many jobs did Arlo book in Jobber last month?”

Contacts

search_contacts

Finds contacts by the start of any word in their name or company, or by the start of their email address or phone number. For example, smi finds “John Smith” and “Smithfield Plumbing”. Each match includes contactId, name, company, phoneNumber, email, lastContactAt, and url, a link that opens the contact in Audalis.
“Find the contact for Northside Dental.”

get_contact

One contact’s details and AI summary, their 10 most recent calls, and their open tasks. Returns name, company, phoneNumber, email, summary, firstContactAt, lastContactAt, totalInteractions, url, recentCalls, and openTasks.
“Catch me up on Maria Lopez before I call her back.”

Follow-ups

list_open_tasks

Open follow-up tasks (pending, in progress, or waiting on a supervisor), soonest due first. Tasks without a due date come last. Each task includes taskId, title, description, status, priority, dueDate, callId, contactName, and createdAt.
“What follow-ups are due before Friday?”

Dates and time zones

  • Pass dates as ISO 8601 date-times with an offset, such as 2026-10-13T00:00:00-04:00 or 2026-10-13T04:00:00Z. A date without a time or offset is rejected.
  • from is inclusive and to is exclusive. To cover “yesterday,” pass midnight to midnight in the workspace’s time zone.
  • A date range can cover at most 92 days, and from must come before to.
  • Results use UTC timestamps. Assistants should convert them to the workspace’s time zone before showing them.

Paging

  • list_calls and list_open_tasks page with nextCursor. Pass it back as cursor and keep every other argument the same. Treat it as opaque, and don’t edit or build one yourself.
  • list_open_tasks stops paging after the first 1,000 tasks. Use due_before to narrow it down.
  • list_bookings doesn’t page. When truncated is true, use a narrower date range.

Limits

Over the limit, the server returns 429 with Retry-After: 60.

Errors

When a tool can’t run, it returns isError: true with a plain-language message the assistant can act on, such as “The date range can be at most 92 days.” or “No call with that id.” Unexpected failures return “Audalis could not complete this request. Try again shortly.” with no internal details.