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.
this system’s Ledger
system’s Directory
Live, read from this site just now ·
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
- Claude · Text a customer from your number · sent from your number
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.
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.
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.
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.
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.