The system
How the system worksThe DirectoryDispatchThe LedgerAI modelsAI agentsYour installationThe appThe research libraryWhat changes for your businessUse it from your softwareEverything it can do
Messaging
iMessageWhatsApp
Ads and leads
AdsCreativeLeads
Devices
Devices
Industries
RealtorsRestaurantsHome services
Explore
How it worksPermissions and limitsCompareSet upQuestionsText me

AI models · Claude, ChatGPT, Grok, Gemini and others

Any AI model that can use tools can run the same actions.

AI models such as Claude, ChatGPT, Grok and Gemini can all use the same Directory of actions, with the same permissions, and everything they do is written to the same Ledger. Changing which AI model you use does not mean rebuilding anything.

—AI models named in
this system’s Ledger
—actions in this
system’s Directory

Live, read from this site just now ·

Claudecan call tools
Text back whoever called at 2:18.
Running the action: Text a customer from your number
Sent from your number. Stored in the Ledger.
Your Directorythe same actions, whichever
AI model asks
  • Text a customer from your numberread: Messages, this conversation only
  • Book into the hours you openedwrite: Calendar, only hours you opened
  • Make ad variants from a brieflimit: 36 renders per run, created paused
  • Send an invoice in the threadlimit: ≤ $5,000 without you
  • Refund to the original cardlimit: up to $500 without your approval
  • Unlock the front door for a visitorlimit: 20-minute window, weekdays

and the other actions in this system’s Directory

The Ledger

  1. Claude · Text a customer from your number · sent from your number
Grokcan call tools
Make 12 ad variants from the brief.
Running the action: Make ad variants from a brief
Uploaded, paused. Stored in the Ledger.
ChatGPTcan call tools
Book Dana into the 2:30.
Running the action: Book into the hours you opened
Invite sent. Stored in the Ledger.
Geminican call tools
Send Bright Roofing the invoice.
Running the action: Send an invoice in the thread
Sent in the thread. Stored in the Ledger.

An illustration. The business and the people are made up. The actions, their limits and the Ledger are the same whichever AI model sends the request.

AI models, explained three ways

Every AI model uses the same actions, permissions and Ledger.

AI models such as Claude, ChatGPT, Grok and Gemini can all use the same Directory of actions, with the same permissions, and everything they do is written to the same Ledger. Changing which AI model you use does not mean rebuilding anything.

Every AI model sees the same actions and limits. What each one was asked, what it answered, and what it cost are entries in the Ledger, so models can be compared on real use.

The system is an MCP server (MCP, Model Context Protocol, is the standard way AI apps connect to outside tools): every Directory row is an MCP tool, a function call and a REST endpoint at the same time.

The same actions.

Every AI model sees the same actions, with the same names and the same limits. Nothing has to be set up again for a new model.

—actions in this system’s Directory

The same permissions.

A limit belongs to the action, not to the AI model. A $500 refund limit applies whichever model asks for the refund.

limit: up to $500 without your approval

The same Ledger.

Every request any AI model makes is stored in the one Ledger, next to the requests from your staff and from automatic rules.

—AI models named in the Ledger

Try it

Send the same two requests from each AI model.

One refund is inside the limit; the other is not. Pick which AI model sends them: only the model’s name in the Ledger entry changes.

A Ledger entry

Refund $184 to the original card

  • sent byClaude
  • limit≤ $500 without you
  • used once

$184 refunded

fingerprint 3e2ce2eed7ccd053…

A Ledger entry

Refund everyone from last month

  • sent byClaude
  • limit≤ $500 per action, one customer per action

refused · no permission for this

fingerprint abebd703a7bca0e2…

An illustration. The fingerprints are real SHA-256 hashes of each entry, computed in your browser; they change when you pick another model because the entry records who sent the request.

Switching AI models

Switching to a different AI model does not mean starting over.

The AI model is the one part you can change on any day. The actions, the permissions, the Ledger, your phone number and unfinished tasks belong to your business, so the next model continues where the last one stopped.

MonTueWedThuFriAI modelthe part you changeClaudeChatGPTGeminiThe Directoryevery action, same namesThe same actions all weekPermissionsevery limitEvery limit unchangedThe Ledgerone LedgerOne Ledger, every entry keptYour numberand its conversationsThe same number, the same conversationsUnfinished worktasks and follow-upsTasks and follow-ups continue

On Wednesday the AI model changed. The actions, the permissions, the Ledger, the phone number and the unfinished work did not.

What belongs to your business ›

An illustration of one week. The three AI models are examples of the ones a business can choose.

Comparing AI models

Compare AI models on your own work, not a sales demo.

Every time an AI model works for you, the Ledger stores what it was sent, what it answered, every action it ran, how many tokens (units of text) it read and wrote, and how long it took. So you can compare two models on your own work: what each one cost and what each one got done.

Every AI model sees the same actions and limits. What each one was asked, what it answered, and what it cost are entries in the Ledger, so models can be compared on real use.

Each model request is an entry with the model, tokens in and out, cache reads and writes, the session, the turn and the call id, beside the raw request and the raw response. Tool calls and tool results are entries of their own, joined to the request by its id.

  • —AI models named in the Ledger
  • —entries naming an AI model
  • —working sessions
  • —AI turns (one request and its response)

Live, read from this site just now ·

One AI model request

What the Ledger stores for every AI model request.

  • Which AI model, exactlyThe model’s name exactly as the provider reported it.MODEL
  • The full requestEvery message it was sent, and the actions it was allowed to run.RAW PAYLOAD (in)
  • The full answerWord for word, as the model wrote it.RAW PAYLOAD (out)
  • Every action it ranWith the inputs exactly as the model wrote them.TOOL · CALL ID
  • What each action returnedIts own entry, linked to the request that asked for it.EVENT: tool result
  • How much it read and wroteTokens (units of text) in and out, which is what AI providers charge for, and how long it took.TOKENS IN · TOKENS OUT
  • Which conversation it belongs toThe session and the turn, so a whole conversation can be read back in order.SESSION · TURN
  • Every error, word for wordA failed request is stored too, with the error message exactly as it came back.STATUS

For your developer

Every action in the Directory is a tool any AI model can call.

Each action can be run — ways: a text, a link, a spreadsheet cell, an iPhone Shortcut, a typed command, or an AI model’s tool call. The highlighted ones are how an AI model runs it: MCP (Model Context Protocol, the standard way AI apps connect to outside tools) and function calling (the model writes a structured request to use a tool).

  • A text
  • A link
  • A spreadsheet cell
  • An iPhone Shortcut
  • A typed command
  • A webhook
  • An AI model’s tool call, over MCP
  • An AI model’s function call
  • Reading the ways from this site…

If an AI model can call tools, it can run your actions. Your developer connects it once; after that it sees every action with its limits, and every request it makes is stored in the Ledger. How to connect an AI app ›

MCPThis system’s MCP server: every action is a tool

POST /mcp
{"jsonrpc":"2.0","id":1,"method":"tools/call",
 "params":{"name":"TIME_NOW","arguments":{"args":{}}}}

Function callAn AI model’s tool call, run as written

POST /api/tools/call
{"name":"TIME_NOW","arguments":"{}"}

APIOne action, by its name

POST /api/run
{"tool":"TIME_NOW","args":{}}

DispatchAny action, sent as {key, args}

POST /api/dispatch
{"key":"TIME_NOW","args":{}}

The system is an MCP server (MCP, Model Context Protocol, is the standard way AI apps connect to outside tools): every Directory row is an MCP tool, a function call and a REST endpoint at the same time. Every action is invoked as an HTTP POST of {"key": "<action name>", "args": {…}}. REST, MCP, spreadsheet formulas, text tags and webhooks are different ways of making that same request. Actions run on Cloudflare servers, a Mac, an iPhone, a browser, a virtual machine or a phone. Each request carries this system’s access key in a header; the key is never shown on this page.

Text me.

Tell me which AI model you use today. I’ll show you it running your actions, under your permissions, with every request stored in your Ledger.