ChatGPT won't add or change data
On this page
You ask ChatGPT to add or change something in Pennyweight, and nothing gets saved, even though it answers questions about your data. Usually ChatGPT is waiting for you to approve the change. Less often, Pennyweight or your ChatGPT account is blocking it.
What you'll see
One of these:
- ChatGPT asks you to approve the action before it runs.
- ChatGPT passes on a message from Pennyweight that starts "Ledger" followed by an id and "is read-only: it has no active subscription."
- ChatGPT reports that Pennyweight rejected its request, for example "Token rejected or expired."
Why it happens
ChatGPT asks before any write
Pennyweight labels every tool it offers. Tools that only read your data are labeled read-only. Tools that add, change or delete data, such as adding a transaction, are labeled as able to change your data.
OpenAI's documentation says these labels help ChatGPT choose when to ask for confirmation, and that this label tells ChatGPT to ask for your explicit approval first.
Pennyweight's side of the connection already allows changes. The page where you authorized ChatGPT says "Your AI client wants to read & write your Pennyweight ledger."
The ledger is read-only
Each ledger has its own subscription. After your trial, Pennyweight turns down changes to a ledger that has no active subscription. Reading and exporting keep working, and your other ledgers aren't affected. ChatGPT sees a message that names the ledger, says it is read-only, and includes a link to subscribe it in Billing. See this ledger is read-only.
The connection ended
If the connection expired or was revoked, Pennyweight rejects ChatGPT's requests, reads included. This is the cause only if ChatGPT can't answer questions about your data either. See my AI lost access.
Your ChatGPT account's policies
OpenAI says account and workspace policies apply to adding and using custom MCP servers. Those policies are set in ChatGPT, not in Pennyweight.
How to fix it
Start a new chat, type @, choose Pennyweight, and ask for the change. For example:
Add a $40 cash expense for lunch today
Then:
- If ChatGPT asks you to approve the action, approve it.
- Ask ChatGPT to show the transaction it just added, to confirm it saved.
- If ChatGPT relays a message that the ledger is read-only, subscribe that ledger in Settings → Billing; see this ledger is read-only.
- If Pennyweight rejected the request, authorize ChatGPT again; see my AI lost access.
Good to know
- Reading is never gated this way. Questions about your accounts and transactions use read-only tools, and Pennyweight keeps answering them for a read-only ledger.
- Missing a newer feature? If ChatGPT can't find a Pennyweight action you expect, open Pennyweight on ChatGPT's Plugins page, select Refresh, and start a new chat. The setup steps are in connect Pennyweight to ChatGPT.
- Removing access. You can revoke ChatGPT any time from Settings → Connect your AI in Pennyweight. See manage AI access.
- Other AIs. The same Pennyweight server works with Claude and other supported clients.