Delivery
How a buyer receives a Dataset's records, from one key at a time to the whole slice, and how each way is priced.
A buyer receives a Dataset the way its work needs it: a key at a time, the whole slice, or each change. Each way reads the same records, with the same provenance.
Four ways
| Way | Fits | Priced |
|---|---|---|
| Lookup by API or MCP | A checkout or an agent, a key at a time | Per billed hit, through the Meter |
| Bulk file in the Portal | A buyer that stores the records, under display or redistribute | A yearly fee |
| Export to the buyer's warehouse | redistribute at volume | A yearly fee, or per record delivered |
| Change feed | A buyer that keeps its own copy current | As its license sets |
Lookup
The customer's API serves lookups at api.ratebook.dev, and MCP tools serve the same lookups to agents. A lookup with no match returns an empty result, not an error, and costs nothing.
Bulk and warehouse
Collection.export writes the records a buyer's license covers to a file or the buyer's warehouse, once or on a cadence. It masks any field the buyer's Permissions hide, so a display buyer never receives a field it may not show.
await $.Collection.export({ collection: 'rates', to: 'warehouse', cadence: 'daily' })Change feed
Every change to a record is an Event, delivered as a webhook and on the event stream. A buyer that holds a copy applies each change as it comes, and a removal reaches it the same way.
Through MCP
An agent reaches the Dataset through the MCP server, one tool per Verb, with the same keys, Limits and free misses as the API. Each response names each value's Source and observedAt, so the agent can cite what it read.