LifeClaw
Server Details
Call you, a person, or a business; find places, book or inquire by phone, and return the answer.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Score is being calculated.
Available Tools
16 toolsaccount_statusInspect
Points balance, display name, and the selected receiving number for call_me (masked). Use receiving_phone_status for setup and caller_id_status for outbound display and outbound-display state. 300 points ≈ one minute of calling.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
call_businessInspect
Phone a business and wait for the outcome.
action="book": reserve. Required: merchant_name, date (YYYY-MM-DD),
time_ (HH:MM, 24h), party_size, name; recommended: contact_phone (E.164).
Both are the MERCHANT's local time.
action="inquiry": ask something — put the question in purpose; the
answer comes back in result.summary.
reply_language is the language of the result fields (the call itself
is spoken in the merchant's language). idempotency_key: reuse the same
key to recover this attempt; after a terminal no-answer or busy result,
a deliberate new call needs a new key. Do not redial a failed result:
its cause may be unknown. Without a key, the same arguments derive the
same key for the UTC day and return the original task.
For personal accounts, a verified and enabled Caller ID is shown to the business when the route permits it. Otherwise a LifeClaw number is used. Caller ID setup is optional for business calls.
Returns the flat result (result.status is confirmed / rejected /
pending / no_answer / busy / unclear / timeout / failed, plus summary,
details, conditions, transcript) or status: in_progress with a task_id
for wait_for_call.
Costs 300 points per minute, minimum one minute, nothing on no answer.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | ||
| name | No | ||
| time_ | No | ||
| action | No | book | |
| purpose | Yes | ||
| phone_ref | Yes | ||
| party_size | No | ||
| predicted_qa | No | ||
| wait_seconds | No | ||
| contact_phone | No | ||
| merchant_name | No | ||
| reply_language | No | en | |
| idempotency_key | No | ||
| special_requests | No | ||
| fallback_instructions | No |
call_contactInspect
Call a saved private contact without passing their full number.
First list_contacts and confirm the chosen name, masked number and exact spoken message with the user. Pass that contact_ref and user_confirmed=true. If the contact changes before dialing, re-list and confirm again. This uses call_person's screening, verified Caller ID, daily cap and strict no-platform-number-fallback policy. Check caller_id_status first. Its no-answer retry decision and idempotency rules are the same as call_person.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | ||
| language | No | ||
| contact_ref | Yes | ||
| contact_name | Yes | ||
| wait_seconds | No | ||
| reply_language | No | en | |
| user_confirmed | Yes | ||
| idempotency_key | No | ||
| original_message | Yes |
caller_id_statusInspect
Check the owner's outbound Caller ID. Verified plus enabled display
enables call_person. call_me uses a separate receiving number.
If setup is needed, direct the user to setup_url: Settings → Caller ID,
bind their own phone, answer Twilio's verification call and enter its code.
Then check again. Business calls do not need this setup.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
call_meInspect
Ring the user's own phone, read them message, and bring back what
they say.
A phone call interrupts the user. Follow their explicit instructions about
whether and when to call, including an immediate call or a call when a job
finishes. Otherwise prefer chat for routine updates; call for a time-sensitive
decision only they can make after chat has no explicit answer, or for a
still-active important event after the workflow's chosen wait if nobody has
acknowledged it. There is no fixed waiting period: use the user's timing
when given, otherwise choose one appropriate to the task. For monitoring,
your workflow must watch the event, wait for acknowledgment, and decide
when to invoke this tool; LifeClaw cannot do those things or schedule a
future call. An explicit request to call regardless of event status takes
priority over the default active-and-unacknowledged condition.
Consider local time and do not repeatedly ring after a missed call. A
terminal no-answer is for your workflow to assess; LifeClaw will not
redial it automatically. Do not redial a failed result because contact
may have occurred. A deliberate later call needs a new
idempotency_key, and only a workflow that can wait and resume can promise
one. Reuse the original key to recover an uncertain request instead.
Examples: (1) a deployment is blocked on a rollback decision and chat
has no explicit answer; ask that one question and use result.reply.
(2) An external monitor confirms a critical incident is still active
and unacknowledged; call with that incident ID as idempotency_key.
(3) The user asked for a call when a job finishes; call once when your
workflow observes completion. Do not call for an ordinary completion
the user did not ask to hear by phone.
wait_for_reply=True: the assistant asks, listens, reads the answer
back, and returns it in result.reply. wait_for_reply=False: deliver
and hang up. agent_name ("Claude Code", "Codex") is how the assistant
introduces itself. language is spoken on the call and used for the
result; set it to the user's language. Write the message as speech:
short sentences, no markdown. Do NOT greet or introduce yourself inside
message — the call already opens with "I'm your assistant from
{agent_name}" / "我是来自 {agent_name} 的 AI 助手"; a message that starts
with "Hi, this is Claude Code" gets introduced twice. Start with the
content ("Hotpot or sushi tonight?").
keywords (optional, up to 20 short terms): the words the user is likely
to say back — the options you offered ("火锅", "日料"), a ticket or PR
number, a product name. They steer the speech-to-text toward those
spellings so result.reply and the transcript come back right; phone
audio otherwise mishears short words (火锅 → 哥哥 on a real call). Give
them whenever the answer is a choice between named things.
Needs the account's voice-verified receiving number. Outbound Caller ID
is separate. If this returns error: receiving_phone_required, send the
user to the returned setup_url to select a number, answer the voice
verification call, and enter its code.
Capped at 4 calls per account per 10 minutes and 30 per 24 hours. Billed
per minute like any call. For monitoring, pass a stable event ID as
idempotency_key; a new event needs a new key.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | ||
| keywords | No | ||
| language | No | en | |
| agent_name | No | ||
| wait_seconds | No | ||
| wait_for_reply | No | ||
| idempotency_key | No |
call_personInspect
Call one private person and relay one message from the user.
Ask the user to confirm the recipient, E.164 number and exact spoken
message first, then set user_confirmed=true. original_message is the
user's unedited request; message is the faithful sentence spoken aloud.
Both are screened. The AI identifies itself and passes on the message;
this tool is not an open-ended conversation or a broadcast tool.
Requires the user's verified, enabled outbound Caller ID. Call
caller_id_status for readiness and setup link. Verification means answering
a call and entering a code; call_me uses a separately selected receiving number.
Never substitute call_business for a private recipient. If the Caller ID
is refused by the carrier, the call fails without a platform-number retry.
Up to 10 private calls per account per rolling 24h. Billed per minute.
Reuse the same idempotency_key to recover this attempt; wait_for_call if
in_progress. Only after a terminal no-answer or busy result with no contact
should your workflow consider another call, using a new key and respecting
the user's instructions and the recipient's local time. Do not redial a
failed result because it does not establish that nobody was reached.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | ||
| language | No | ||
| phone_number | Yes | ||
| wait_seconds | No | ||
| recipient_name | Yes | ||
| reply_language | No | en | |
| user_confirmed | Yes | ||
| idempotency_key | No | ||
| original_message | Yes |
delete_contactInspect
Delete a saved contact by exact name after the user confirms deletion.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| user_confirmed | Yes |
get_placeInspect
Full details for one place from search_places: phone, hours, rating,
website, booking link. Pass the same location you searched with.
phone_ref is the handle call_business needs; when it is null the place
cannot be called and phone_ref_unavailable_reason says why — show the
user detail.phone / detail.booking_url instead. Costs 15 points.
| Name | Required | Description | Default |
|---|---|---|---|
| cid | Yes | ||
| name | Yes | ||
| language | No | en | |
| location | No |
list_bookingsInspect
The account's bookings (confirmed, cancelled, answered inquiries).
status filters: "confirmed", "cancelled", "answered", or "" for all.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| status | No |
list_contactsInspect
List the token owner's saved contacts with masked phone numbers.
Each contact_ref pins the current name and number for call_contact. If two names could match a request, ask the user to choose one exact name. Never repeat a full contact number in chat.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
modify_bookingInspect
Phone the venue to cancel or reschedule a confirmed booking from
list_bookings. action is "cancel" or "reschedule"; reschedule needs
new_date and/or new_time (merchant local). When the venue confirms, the
booking record is updated for you. Same waiting and idempotency rules as
call_business.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| purpose | Yes | ||
| new_date | No | ||
| new_time | No | ||
| booking_id | Yes | ||
| wait_seconds | No | ||
| reply_language | No | en | |
| idempotency_key | No |
receiving_phone_statusInspect
Check where call_me would ring (masked). A number must be explicitly selected and verified by voice; SMS login alone does not qualify. The user can set it in the web app without enabling outbound Caller ID. Direct them to setup_url if no receiving number is ready.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
save_contactInspect
Add or update one contact after confirming name and number with the user.
phone_number must be E.164, e.g. +85291234567. This updates the same address book used by the web app. The result masks the number; do not echo the full number in a chat reply. Set user_confirmed only after agreement.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| phone_number | Yes | ||
| user_confirmed | Yes |
search_placesInspect
Search businesses (restaurants, salons, clinics, hotels…) by free text.
location is REQUIRED and decides which country is searched — a city or
country name ("Tokyo", "Singapore"). Returns up to limit places with a
cid to pass to get_place. Costs 5 points.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| language | No | en | |
| location | Yes |
update_contactInspect
Edit a saved contact's name and/or E.164 phone number atomically.
Confirm the existing contact and proposed change with the user first. A name conflict refuses instead of overwriting another person. Return values mask the number; do not repeat a full number in chat.
| Name | Required | Description | Default |
|---|---|---|---|
| new_name | Yes | ||
| old_name | Yes | ||
| phone_number | Yes | ||
| user_confirmed | Yes |
wait_for_callInspect
Keep waiting for a call that call_business / modify_booking / call_person / call_me reported as in_progress. Returns the flat result once the call ends, or in_progress again — just call it again.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ||
| wait_seconds | No |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
16 tool updates
- First observed
account_status - First observed
call_business - First observed
call_contact - First observed
call_me - First observed
call_person - First observed
caller_id_status - First observed
delete_contact - First observed
get_place - First observed
list_bookings - First observed
list_contacts - First observed
modify_booking - First observed
receiving_phone_status - First observed
save_contact - First observed
search_places - First observed
update_contact - First observed
wait_for_call
Related MCP Connectors
Place real phone calls and hold spoken conversations on a user's behalf, billed per minute.
Real phone calls to US businesses: book, ask, get quotes. Returns outcome and transcript.
Your AI agent phones businesses for you: books, reschedules, cancels, asks, and waits on hold.
Give your AI agent a phone. Place outbound calls to US businesses to ask, book, or confirm.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceEnables MCP clients to place real phone calls to businesses in the US and Canada, navigating phone menus, waiting on hold, asking the agent mid-call for information, and returning structured answers with transcripts. Supports booking, quotes, cancellations, and multi-business calls in parallel.MIT- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to place real phone calls, engage in spoken conversations across 12 languages, and report the outcomes for tasks like booking appointments, answering questions, negotiating, or confirming orders.MIT
- FlicenseNot gradedqualityFmaintenanceEnables AI assistants to make real phone calls on your behalf using VoIP, handling conversations automatically through OpenAI's Real-Time Voice API. Simply tell Claude what you want to accomplish and it will call and manage the entire conversation for you.25-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to place real phone calls, navigate IVR trees, and retrieve structured answers with transcripts and recordings.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.