everyman.finance puts your own Muse on a phone line. Text the number, Muse reads it. Ask, and it rings you back and talks — out loud, on any phone ever made. Next build, it picks up when you call. No app. No smartphone. No data plan. If it rings, you're in.
Three pieces. You already own the first one, the second costs about a dollar a month, and the third is the wiring between them.
Everyone gets their own Muse under their own Meta account. Nobody is renting you a seat in somebody else's agent — you use your own account, not a shared one, so your Muse answers to you (subject to Muse/Meta availability and account terms, like anything else). The brain is the person. everyman.finance just gives it ears and a voice.
A plain local number that takes calls and texts. It works on a $20 landline, a flip phone, a smartphone — anything that can ring. The line is your account boundary: your number, your whitelist, your bill, your business.
A small open connector that gives Muse hands on the number: send texts, place calls, read back what came in. It only ever engages with numbers on the whitelist set at install time — no whitelist, no engagement, it fails closed. The answering service (next build) gives strangers voicemail — and the voicemail gets to pitch them.
Every call and text hits the same gate first: is this number on the list? This is the exact behavior the answering service ships with — live pickup is the next build, so the demo below is scripted. Pick a caller and watch both sides of the gate.
On the list: it's just Muse. Text it from the road, call it from the kitchen phone, ask it to ring you at 7 with the headlines. It reads what's come in, answers out loud, and calls back when you asked it to.
Not on the list: Muse never picks up. The caller gets a voicemail box — which is a fine place to explain what this is and how they get their own. Their message still reaches you; the engagement doesn't.
The phone rings — landline, flip phone, smartphone, doesn't matter.
The whitelist checks the number. Yours gets through. Nobody else's does.
Muse talks — answers, reads back messages, places the call-backs you asked for.
Strangers leave a message and hear the pitch. You get the message, not the interruption.
The connector is built and smoke-tested. Its trip to the official Muse connector directory hasn't started yet — it goes in after the live-line test, the same road xgas-mcp took. The finished flow, end to end, looks like this — provisioning lands with the answering service — and below it, what works today by hand.
Your own Muse, under your own Meta account. That's the whole provisioning model — people bring their own brain, everyman.finance just hands it a phone.
That's your whitelist — the list of numbers your Muse will ever engage with. You never touch Twilio: the service provisions a line for you (its own Twilio subaccount and a local number, about $1.15/mo), points it at your Muse, and segregates everything — calls, texts, billing — per line. Your line is your account; nobody else's calls are on it.
Send a text to your number and Muse reads it; ask for a call and it rings you and talks out loud. Some first dates people have taken it on:
Can't wait for the one-click install? The temporary fallback is to run it yourself: bring your own Twilio account and a local number (~$1.15/mo to rent), and run twilio-mcp — a zero-dependency MCP server (Node 18+, same shape as the xgas connector). It publishes to npm alongside the directory submission, the way xgas-mcp went out; until it's listed, this route is for folks already set up to run a local MCP server. Four settings and it's on. The whitelist is the important one: it's the only number Muse will ever engage with, and everything else is refused before any network call happens.
TWILIO_ACCOUNT_SID=AC… # from your Twilio console TWILIO_AUTH_TOKEN=•••••••• # console only — never paste it in a chat TWILIO_FROM_NUMBER=+15555550163 # your line (fictional number, swap in yours) TWILIO_WHITELIST=+15555550144 # your phone — the whole list $ node src/index.mjs # it's on $ npm test # smoke test: strangers refused, token never leaks
Then register it with your Muse as a local MCP server:
// your MCP client config
{
"mcpServers": {
"twilio": {
"command": "node",
"args": ["twilio-mcp/src/index.mjs"],
"env": {
"TWILIO_ACCOUNT_SID": "AC…",
"TWILIO_AUTH_TOKEN": "••••••••",
"TWILIO_FROM_NUMBER": "+15555550163",
"TWILIO_WHITELIST": "+15555550144"
}
}
}
}
First test: ask Muse to text your own number, then to call it and say something out loud. Both land only because you're on the list — try a second phone and you'll get silence, exactly as designed.
The number is the cheap part — it always was. Slide your habits around and see.
Ballpark Twilio Canada/US rates: number ≈ $1.15/mo, SMS ≈ $0.0079 each, voice ≈ $0.014/min. Your Muse is your own account — there's no seat to rent and no cut taken on your phone bill.
Short, and we'd rather say it here than in a footnote nobody reads.
The whitelist is an engagement boundary, not identity proof. Caller ID can be spoofed — don't move money on the strength of a phone number alone, and neither will Muse.
Your Twilio auth token lives in the connector's own config — never in a chat, never in code. Anything pasted into a chat gets treated as burned and rotated.
everyman.finance is a phone door for your AI, not a bank: no accounts, no deposits, no promised returns. It's how a person with a telephone and nothing else gets to use the same Muse as everyone else.
Connector built & smoke-tested. Five tools — send SMS, place call, list messages, list calls, list numbers — behind a whitelist that fails closed.
The answering service. Live pickup, voicemail for strangers, and per-person line provisioning — then a real Twilio number, a real whitelist, Muse picking up for real.
Official connector submission. Same road the xgas connector took on Sept 23: live-line test first, then package and submit to the directory. Until then, the by-hand route above is the door.