The October 26 v7.0.0 release of nicobailon/pi-mcp-adapter adds a new reading step. This independently maintained adapter connects the Pi coding agent to external tools through the Model Context Protocol. Its new extractor sits after a tool replies and before that reply reaches the agent’s main model: ask for the order total and delivery date, and a separate hosted model reads them out.
The gain is a choice about who reads the paperwork. A long order page can become a few typed fields while its source text remains available. This is now in the published npm package, not just a proposed integration. It is optional, requires Cloudflare credentials in Pi, and sends text only from servers the operator has explicitly allowed.
One order note, three requested fields
Tool text → optional Clairic reader on Cloudflare → selected values for Pi’s main model.
Adapted from the adapter’s test fixture. The responses and confidence below are supplied test data, not a live model result. Reference date: October 24, 2026.
The source note
Order #B-1001 confirmed
Order total $42.10
Arrives Nov 2
Carrier: maybe UPS
The note stays available through a saved text-file reference.
The returned fields
- total number
- 42.1
- due date
- 2026-11-02
- carrier text
- null
Inspect the example response
{
"values": {
"total": 42.1,
"due": "2026-11-02",
"carrier": null
},
"uncertain": {
"carrier": {
"guess": "UPS",
"confidence": 0.62
}
},
"fullResult": "…saved text file…"
}
The file reference is abbreviated here. Opening this example sends nothing to Cloudflare.
Source: the adapter’s supplied order and response fixtures. This worksheet isolates three fields from the larger test.
A reading job becomes a separate model call
Cloudflare introduced Clairic as a hosted preview on October 19. Unlike a decision model choosing among predefined categories, its interface can return a number or date whose possible answers were never listed. Our October 23 report examined choosing among options; this integration puts a different job into the agent loop: reading the values another step will use.
The October 25 change lets a tool caller name between one and sixteen fields, with types such as number, date, text or list. On success, the adapter returns a compact result and a reference to saved source text. It does not offer Clairic’s estimate or forecast types, or send images for this extraction. The optional reader has a specific job rather than taking over the agent.
That can be useful when a tool returns prose: an order confirmation, support history or fetched page. The agent can ask for an amount without first writing a parser for the page’s phrasing. But another model still reads the text. A shorter main-agent context alone cannot establish that the whole task is cheaper, faster or more accurate.
Already structured data has a simpler route
The adapter already supported scripts that select fields from structured results before this change. Its output guard could also save large responses and return a shorter view. If an API already gives a trustworthy numeric total, a script can read that property directly. There is no need to ask a model to rediscover it.
The new option earns its place where reading is necessary, not merely where output is long. This distinction changes the evaluation: compare extraction with the actual alternative for that source—direct field selection, a parser, or the main model reading the text. Treating every long reply as an automatic reason for another model would miss the capability the code actually adds.
A number-shaped answer still needs judgment
The released implementation checks the answer’s type and rejects impossible calendar dates. For a proposed total or date with confidence below 0.80—or no confidence score—it returns a null value and places the guess in a separate uncertain entry. The guess is therefore still visible to the agent. This communicates uncertainty; it does not force the agent to ignore the suggestion or prove that accepted answers are correct.
The adapter caps the text sent for a reading at 100 KiB and marks truncation. Ordinary extraction failures retain the normal tool result with an explanation. If saving a new source-text copy fails, the normal result follows the extracted values. These are useful recovery paths, but retaining text is different from preserving every binary block in an original tool response.
Cloudflare’s launch account reports speed and cost advantages for its own examples and describes a single-pass model. Inspecting this client cannot audit those internals or reproduce those comparisons. We inspected the implementation, mocked tests and published package; we did not run the suite or make authenticated Clairic calls. The adapter author reports one live Workers AI trial in the pull request; its AI Gateway route was checked against a test server.
The next revealing trial is an ordinary unstructured workload with known answers: count correct accepted values, wrong accepted values, abstentions and extra reads of the saved source, alongside the complete usage and elapsed time. Today’s release supplies the connection needed to try it. Pi can hand a reading job to a specialist and continue with explicit fields—while keeping enough of the paperwork to question the answer.