place_call
Places one outbound AI phone call for your firm.string
required
Who is being called, as the agent should address them. 1–120 characters.
string
required
The recipient’s US phone number. Normalized to E.164 before dialing.
string
Who the person is to your firm:
client, witness, adjuster,
business_office or other. Required without agent_id; with it, defaults to
the saved agent’s. Saved on the call record. witness is refused while
witness calls are turned off (the default).boolean
required
true means you confirmed this person gave your firm this number and agreed to be
called. false is refused.boolean
required
true if this person has their own lawyer for this matter. Lawtte doesn’t call
represented people, so true is refused; contact their counsel instead.string
What the call should accomplish, in plain language. Up to 1,000 characters. It
can’t change the call’s opening line. Required without
agent_id; not allowed
with it.string
A saved outbound agent’s ID (UUID) from
list_outbound_agents. Its objective,
recipient type, what-to-collect list and voicemail choice are used for this call.
See saved outbound agents.object
Values for the saved agent’s
{{placeholders}}, such as
{"claim_number": "88-123"}. Keys are lowercase letters, digits and underscores
(up to 30 characters); values 1–200 characters. Only with agent_id.string
Brief, non-sensitive background strictly needed for the call. Up to 1,000
characters. No Social Security, card or bank numbers, dates of birth, passwords,
one-time codes or medical details.
dry_run flag gets an error, never a call.
check_call
Checks whether Lawtte would place this exact call right now. It takes the same inputs asplace_call and runs the same rules — consent, represented party,
recipient type, call content, Do Not Call list, daily cap, two-hour repeat rule,
calling hours — without dialing, reserving or recording anything. Use it to
validate an integration before calling anyone. It replaces place_call’s old
dry_run flag.
boolean
Whether
place_call with the same arguments would dial now.string
When
allowed is false, why.get_call
Reads one call belonging to your Studio — including calls your receptionist answered, not only calls the connector placed.string
required
A call ID from
place_call or list_calls.string
outbound for a call the connector placed, inbound for one your receptionist
answered.string
One of
blocked, dialing, in_progress, completed, or failed.string
A plain-language readout of what happened on the call.
string
On outbound calls:
yes, no, or partial, from post-call analysis.string
A short summary of the conversation.
number
How long the call lasted.
boolean
Whether a word-for-word transcript can be read with
get_transcript.boolean
On inbound calls: whether a recording exists. Recordings are played in the
Lawtte dashboard, behind sign-in; the connector never returns the audio or a
link to the file.
string
Where the firm reviews this kind of call in the Lawtte dashboard.
caller_name,
caller_phone, caller_email, and caller_type.
This returns a summary, never the transcript. Use
get_transcript when the exact
wording matters.get_transcript
Reads what was actually said, word for word. Transcripts are long, so this returns one window at a time.string
required
A call ID from
place_call or list_calls.number
Size of the window to return, 500–20,000. Defaults to 8,000.
number
Where to resume from. Pass the
next_offset returned by the previous call to keep
reading.list_calls
Lists up to 20 recent calls for your Studio, newest first — both calls the connector placed and calls your receptionist answered.string
ISO 8601 timestamp with an offset. Only calls after this time are returned.
string
Filter by
blocked, dialing, in_progress, completed, or failed.string
inbound for calls your receptionist answered, outbound for calls the connector
placed. Omit for both.JSON schemas and error semantics for these tools are in the
MCP server reference.
The read tools (
get_call, get_transcript, list_calls) are scoped to the
Studio account you approved. They never return
calls from another firm, or calls placed outside the connector.Saved outbound agents
A saved outbound agent is a call you set up once and run many times: a name, an objective with{{placeholders}}, who it calls, what it should find out, and what
to do at voicemail. Run one with place_call by passing its agent_id and the
placeholder values in fields, instead of an objective.
Every saved agent runs with your firm’s own details — practice areas, office hours,
address, website, attorneys, area served, fee policy and notes — read from your
receptionist on each call. Change them in your receptionist’s settings and every
saved agent uses the new details on its next call.
{{name}} (the person called) and {{firm}} (your firm’s name) are filled in
automatically. Any other placeholder must be given in fields, or the call is
refused before dialing with the missing field named. Field values follow the same
content rules as an objective: no Social Security, card or bank numbers, dates of
birth, passwords, codes or medical details.
Starter templates: adjuster-demand-received (for the demand-letter skill),
client-case-update and client-documents-needed. Family-law firms also get
family-law starters in their list.
Agent Builder tools
The Agent Builder is where your firm’s email, text and call agents are built and managed in the Lawtte dashboard (Agents). These tools let Claude, Grok Bot or any MCP client run that same builder, with the same control as the dashboard. Every agent they start is tagged with the app that built it, so the dashboard shows via Claude or via Grok Bot next to it. Anything that sends or changes a live agent is marked destructive, so the client asks you before running it.
How to use them: for people and for AI agents.
Calling setup tools
A firm that signs in from Claude with no Lawtte number can place its first call after two answers: the firm’s name, and what happens when someone calls the firm’s Lawtte number back.get_calling_setup_status
Read-only. Returns whether the signed-in account can place calls and, as data, what is missing first. Takes no inputs.set_up_calling
Saves the firm’s settings and makes the account able to place calls.string
required
The firm’s name. Every call opens by saying it is calling on behalf of this firm.
object
required
What happens when someone calls the firm’s Lawtte number back:
{ "mode": "forward", "callback_number": "(415) 555-0134" } transfers the call to
that number; { "mode": "take_message", "notify_email": "intake@firm.com" } has the
AI receptionist take a message and email it.string
One of
America/New_York, America/Chicago, America/Denver, America/Phoenix,
America/Los_Angeles, America/Anchorage, Pacific/Honolulu. Used for calling
hours. Defaults to the zone of the callback number or the state.string
Two-letter US state. Picks a local area code for the calling number.
callback_handling. Running it again updates the settings; it never adds a second
number and never resets the trial.
Trial rules:
- The account’s email address must be confirmed.
- One trial per firm email domain. On personal mailboxes (gmail.com, outlook.com, icloud.com and the like) it’s one per address.
- The usual
place_callrules still apply, including 50 calls a day and one call per number every two hours. - When the trial calls are used up,
place_callandcheck_callrefuse with an error that namescreate_activation_link. Activation keeps the same number. - A trial number is released if the account isn’t activated within 14 days.
- Trial calls are not billed.
set_up_calling has run, place_call and check_call refuse with an error
that names set_up_calling. Where Lawtte requires a card before the first call,
set_up_calling saves the settings without a number, and place_call’s error names
create_activation_link.
No tool charges, picks a plan or accepts terms. That only happens on the activation
page.
Receptionist setup tools
These let a firm set up a new Lawtte receptionist from Claude. The first two work before signing in.
No tool takes payment details, accepts terms or turns a receptionist on. That only
happens on the activation page.

