Last night’s calls on one list each morning, with Grok Bot or Claude
Front Desk answers your phone after hours. Your AI reads what it did and hands you the list before the vans go out: jobs booked, who woke the on-call phone, messages, and anything that went wrong.
How to get this live in your business
The calls that come in overnight are the ones nobody saw. By morning there is a job or two in the system, a message somewhere, and a technician who was woken at 2am and wants to know it was worth it. Grok Bot and Claude cannot answer the phone, and should not. What they can do is read what the after-hours line did and put it on one list at 7am.
In short
- What you get
- Every morning, last night's calls in four lists: jobs booked, calls put through to on-call, messages and callbacks, and problems at the top.
- Connecting
- One Office Voice key that reads the compliance trail. Add ServiceM8's own connector too and the bot checks the job count. Your login is never shared.
- The one rule
- The bot reads. Front Desk answers the calls, under the Booked After Hours standard.
- Callbacks
- Tick Queue calls on the key and the bot orders each callback through Office Voice, inside calling hours, one attempt each.
Take the spec to Claude, ChatGPT or Copilot. The sentence to paste is one click away.
Want the whole thing by email?
This paper, plus the rest of the library. One click to stop them.
1. What the morning list is
Front Desk on Office Voice answers your own number out of hours. It says it is an AI and that the call is recorded, sorts every call into emergency, routine or quote, checks the address, writes one job into ServiceM8 or Simpro, and wakes the on-call phone for an emergency and nothing else. Each of those decisions goes on Office Voice’s compliance trail with its time. The morning list is that trail, sorted:
- Booked. Jobs written into your job system overnight.
- Woken. Calls put through to the on-call phone or to staff.
- Messages and callbacks. Callers who left a message or asked to be rung.
- Problems. A call where the AI and recording notice did not land, or a job moved or cancelled. These go to the top.
The rules the calls follow are the open Booked After Hours standard: the fixed call types, the address check, one job and not two, the on-call rule, and a pass test you can run on your own phone.
2. A key that reads last night, not your password
Your AI gets a key to Office Voice, our product. Think of it as the night book on the front counter: your AI can read what was written in it, but it cannot answer the phone or change a job. The key cannot send, approve or pay anything, and you switch it off in one click.
- Run Front Desk on Office Voice, $119 a month, with your job system connected. The list is only as good as what answered the calls.
- Under Keys, create a key and tick Read the compliance trail. Tick Queue calls as well only if you want the callbacks in section 7. Treat the key like a password. If it ever leaks, delete it and make a new one.
- Optional, ServiceM8 only: add ServiceM8’s own connector, so the bot can count the jobs created overnight. It signs in with your ServiceM8 account; no API key to copy.
- Ask your AI what Office Voice recorded since 5pm yesterday. If it answers with a list, you are connected.
Where it runs. Give each bot its own key, so you can switch one off without touching the rest. The list can land wherever you start your day, Google Workspace or Microsoft 365.
3. Add it to Grok Bot
Grok Bot is xAI’s always-on agent; plans that include it have changed since launch, so check xAI’s own site.
- Click +beside Bots and name it “Last Night”. In Edit Profile, put the standing rules in the description: read only, never contact a customer, never change a job, ask before any action.
- Paste this into the Bot’s chat and click Add it. Enter the Office Voice key in the secure secret card, never in the chat.
Add a custom MCP server called Office Voice at https://office-voice.com/api/mcp It needs an Authorization header: the word Bearer, a space, then my Office Voice key. Ask me for the key with a secure secret card. Do not ask me to type it in this chat.
On ServiceM8? Sign in to your ServiceM8 dashboard in another tab, paste this, and click Authorizeon the card. Connected apps are account-wide in Grok Bot, so keep the rules in each Bot’s profile.
Add a custom MCP server called ServiceM8 at https://api.servicem8.com/mcp It signs in with OAuth, so give me the Authorize card.
4. Add it to Claude
- In Claude, open Customize, then Connectors, click + and choose Add custom connector.
- Enter https://office-voice.com/api/mcp, choose No sign-in, and put the key in a request header named Authorization, as “Bearer” then the key. If your organisation hides the header field, Claude Code takes it in one line.
- On ServiceM8, add a second custom connector named ServiceM8 at https://api.servicem8.com/mcp and sign in. On a Team or Enterprise plan an owner adds connectors first.
- Set both to ask before every action.
For your developer. Show the Claude Code line
claude mcp add --transport http office-voice https://office-voice.com/api/mcp \ --header "Authorization: Bearer <your Office Voice key>"
5. The prompt
The same prompt works in both. Change 5pm and 7am to your own closing and opening times.
Use the Office Voice tools. Read only: do not change anything and do not contact anyone. Call get_audit_trail with since set to 5pm yesterday, Brisbane time, and limit 200. Keep only the rows from 5pm yesterday to 7am today. Sort them into four lists, with the time of each: - Booked: rows of type BOOK_JOB. These are jobs Front Desk wrote into the job system. - Woken: rows of type TRANSFER_CALL. These are calls put through to the on-call phone or to staff. - Messages and callbacks: rows of type ADD_JOB_NOTE. These are messages left for me and callbacks asked for. - Problems: rows of type DISCLOSURE_OMITTED, RESCHEDULE_JOB or CANCEL_JOB. Give me the counts first, then each list as a short table. Put the Problems list at the top if it has anything in it. If the ServiceM8 connector is connected, also list the jobs created in ServiceM8 between 5pm yesterday and 7am today, and tell me whether that count matches the Booked count. Read only: do not send any email or SMS, do not change any job's status, and do not add notes.
Check the first run against the calls Office Voice shows for the same night. The counts should match before you trust it on a morning you are not watching. To hear a call or read its transcript, open it in Office Voice: the list tells you which ones to open.
6. Run it every morning
- Grok Bot:when the list looks right, ask it to “save this as a skill called last night, and create a routine that runs it every day at 7am Brisbane time.”
- Claude: click Scheduled, then New task, and choose daily, 7am. It runs on Anthropic’s side, so it still runs with your computer asleep and the app closed.
7. Ring back the ones who asked
A caller who asked to be rung back has given you a reason to call. The call still has rules: say it is an AI, ring inside calling hours, check the Do Not Call Register, keep a record. Office Voice places it under those rules. With Queue calls ticked on the key, put this at the end of the morning prompt:
For each caller in the Messages and callbacks list who asked to be rung back, and whose job is in ServiceM8, call the Office Voice tool create_call once: - customer_external_id: their ServiceM8 client ID - who: their name, relationship "customer" - purpose: one plain sentence about what they rang about, in their words from the job - basis: "callback" - item_ref: the ServiceM8 job number, touch_number 1 - valid_until: 5pm today At most ten. Show me what it queued and anything it refused, with the reason. Do not ring or message anyone yourself.
- Each callback is one governed call, with the reason it is lawful recorded: the caller asked.
- The job number and the touch number stop the same callback being queued twice, even if the routine runs again.
- Office Voice places single calls like these up to ten a day per account, one attempt per person per day. Anything not placed by 5pm is dropped, not carried to tomorrow.
- Emergencies are not on this list. Front Desk already woke the on-call phone for those, during the night.
Steps as each tool set them out on 27 October 2026; menus move, so expect the odd label to differ. Want the bot to chase quotes too? The ServiceM8 quote list uses the same key.
8. Questions
Can Grok Bot or Claude answer my phone after hours?
No. Neither has a phone line, a disclosure, a recording notice or an on-call rule. Front Desk on Office Voice answers the calls under the Booked After Hours standard. The bot reads what it did, each morning.
What does the bot see about last night's calls?
Office Voice's compliance trail: every job booked, every call put through to the on-call phone, every message or callback request, and any call where the AI and recording notice did not land, each with its time. To hear a call or read its transcript, open it in Office Voice.
Why check the job count against ServiceM8?
The standard's hardest promise is one job per caller, not two. If ServiceM8 shows more new jobs overnight than Front Desk booked, someone else wrote one too, or a job was written twice. Either way a person looks before the vans go out.
Can the bot ring callers back itself?
It can ask Office Voice to. Each callback is one governed call, ordered with the basis callback, placed inside the caller's calling hours after the Do Not Call Register check. The bot never dials.
I'm on Simpro. Does this work?
The Office Voice part does: Front Desk writes into Simpro and the bot reads the same trail. Simpro has no official connector for Grok Bot or Claude yet, so skip the job count check.
Not answering after hours yet?
Front Desk answers your own number, all day or only out of hours, and writes the job into ServiceM8 or Simpro before the caller hangs up. $119 a month, flat, with no call caps. Hear it first.
Building the answering yourself? The rules are open. Take the full standard.