Is this right? Greek incomes still 22% below 2007??
Why 2021? Pandemic aid pads that year. End it in 2019 and I bet the story shrinks.
Ask Claude or ChatGPT a question about public data. With escrito connected, the answer comes back as a chart with a watermark and a short link to every source, step and check behind it.
Anyone can re-run it, or branch it: change one step and see what changed.
One-time setup
In Claude or ChatGPT settings, add a connector with this URLdata.escrito.io/mcp
Works in Claude, ChatGPT, Cursor and Claude Code. The numbers come from the publisher's data, not the AI's memory.
Claude
Not everywhere. Poland is up 86% since 2007 and Greece is down 22%. Here is the chart, with its link.
↓ what escrito.io/s/k7m2p9 opens
Public data
Your assistant searches the catalog and reads each dataset's license, units and limits before it uses one.
escrito records every download, so "Source: World Bank" on your chart names the exact release and when it was fetched.
Upload a CSV, Excel, Stata or SPSS file. Your assistant confirms with you how to read it, and the page shows those choices.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Table 3. Household income by region (example) | |||
| 3 | region | median | sampled | weighted |
| 4 | North | 31.4 | 1,204 | 412,000 |
| 5 | South | 27.8 | 998 | 389,200 |
| 6 | Islands | – | 41 | 14,300 |
Posting
Your assistant hands back the card, caption and alt text. X shows the card under your link.
Claude
Your post for X is ready. Check it, then press Post to X.
From escrito · share
Alt text, from the data
Line chart: median daily income per person, six countries, 2007 to 2021. Poland rose 86%, the most. Greece fell 22%, the only one below 2007.
Since 2007, the typical person's income rose 86% in Poland and fell 22% in Greece. World Bank data, survey years to 2021. Every step is on the page, and anyone can re-run it: escrito.io/s/k7m2p9
The watermark
Charts get cropped and pasted into group chats, so escrito puts the way back inside the image, on every export.
Is this right? Greek incomes still 22% below 2007??
Cropped, recompressed, headline gone. Okafor's question is answered below.
the bottom band, enlarged4 parts
Anyone can check
Readers need no account and no install.
v1 · shared 2026-10-30 · 3 branches
Chart and datainteractive
| country | 2007 | 2021 | change |
|---|---|---|---|
| Poland | 20.45 | 37.97 | +85.7% |
| United States | 60.12 | 73.62 | +22.5% |
| Germany | 54.86 | 65.06 | +18.6% |
| United Kingdom | 50.86 | 54.55 | +7.3% |
| Italy | 48.85 | 49.70 | +1.7% |
| Greece | 36.92 | 28.68 | −22.3% |
Method, in the order it ran4 steps
Sources1
World Bank, Poverty and Inequality Platform
CC BY 4.0. Six countries, survey years 2007 to 2021.
fetched 2026-10-30 07:42 UTC · file kept
Checks9 run · 3 notes
ok 90 rows in, 90 out. Nothing dropped, nothing blank.
Reproductionat share time
✓4 of 4 steps, same answer
Branches3
r4t8w2 ends in 2019
m2c9x4 adds France and Spain
p8d1q7 mean instead of median
Checks
Each check says what it saw, in plain words, with the number.
When you share, escrito runs every step again on a fresh machine. If a number changes, nothing publishes until the step is fixed. Press Re-run to watch.
Table
Statistics
Chart
another chart · refused
One step drew random numbers, so the second run gave a different answer.| step | first run | re-run |
|---|---|---|
| 2007 set to 100 Poland, 2021 | 185.71 | 185.71 ✓ |
| Change since 2007 Poland | +85.7% | +85.7% ✓ |
| Trend per year Poland | +4.24% | +4.24% ✓ |
| Chart | image | identical ✓ |
ChatGPT
It checks out. The 86% is the rise in Poland's median daily income per person from 2007 to 2021, in World Bank survey data.
Branching
Okafor pastes the link into ChatGPT and asks for the same chart ending in 2019. escrito changes the end year and re-runs only what depends on it. Before the pandemic the story holds.
ChatGPTeUsed escritofork (branch) · end year 2019
originalescrito.io/s/k7m2p9
branchescrito.io/s/r4t8w2
Revisions
When the World Bank revises past years, ask for a refresh. escrito downloads the revision and re-runs every step before v2 goes up.
v1 stays at its link, unchanged, so a story that cited it still matches. Branches can follow v2 or stay put.
v1 → v2: the World Bank revised the boxed years. Same steps, re-run on the new download.
Who it is for
The answer used to be a footnote and a promise. Now it is a link that runs.
Student in ChatGPT
For my essay: has rent outpaced wages in my state since 2010? Use numbers I can cite.
ChatGPT returns cited numbers and a link the teacher can re-run.
Journalist in Claude
A senator says youth unemployment in Spain has halved since 2013. Check it against Eurostat.
Claude returns a verdict with both dates marked, and a link the editor re-runs before publication.
Researcher in Claude Code
A referee wants Table 3 run a second way. Do both from my replication files.
Claude Code returns both tables, and a link the referee can branch instead of asking for another round.
Curious reader in ChatGPT
Someone posted this chart. Is it right?
ChatGPT explains what the number measures, where it comes from and whether it re-ran.
For the technically curious
The same record, in the terms an engineer or a statistician would check.
Step graph (DAG), code and fingerprintsrecorded = re-run
wb.pip
GET api.worldbank.org/pip/v1/pip · fill_gaps=false · EU-SILC, LIS (GSOEP, CPS-ASEC, FRS)
sha256:abd3796680d9…6ef26e
index_2007
SQL · median / median in 2007 × 100, 2007 to end_year
c75d…43cb = c75d…43cb ✓
change_pct
SQL · change from the first to the last year
bee9…67e1 = bee9…67e1 ✓median_income_2007
JSON spec · line, direct labels
3436…6ef1 = 3436…6ef1 ✓growth_trend
Python · OLS of log median on year, HAC errors
d0f6…d982 = d0f6…d982 ✓ConnectionMCP
Your assistant calls these tools atdata.escrito.io/mcp. query runs SQL at the source; compute runs Python in a sandbox that reaches only PyPI and file storage.
Statistics behind the checksn = 15 per country
The refusal, in fullbootstrap_ci
compute bootstrap_ci hashed ec31…1b45, then 844e…0e45. The generator had no seed. Fix: np.random.default_rng(2025).
Add data.escrito.io/mcp as a connector in Claude or ChatGPT, and ask the question you are working on.
A new account needs an access code. Have one? Get started. We send codes by email, and nothing else.
Done. Your code is on its way.