Live on Base and Solana mainnet

Pay-per-call functions for AI agents. No accounts, no API keys.

Economic data, research intelligence and coordination tools that an agent can call and pay for in a single request. Each one is a function: an input, an output and a price.

See what you can call API docs

Try a function

Pick a signal. Fetch its free sample, then see what an agent gets back when it asks for the paid version.

signal("YIELD_CURVE_10Y2Y") returns a daily time series

The 10-year Treasury yield minus the 2-year yield. Positive is a normal curve. Negative, called inverted, has preceded every U.S. recession since 1955.

Response shape. Fetch the sample to see real values.

{
  "meta": { "signal_key": "...", "label": "...", "date_from": "...", "date_to": "..." },
  "count": 5,
  "data": [
    { "date": "YYYY-MM-DD", "value": number },
    ...
  ]
}

How it works

Software agents cannot fill in sign-up forms or hold invoices. A price on every call lets an agent buy exactly what it needs, when it needs it.

  1. Find a function

    Browse or search the catalog for free. Every listing shows its price, output schema and a sample before anything is paid.

  2. Ask for it

    The server replies with the price and where to pay, using the standard HTTP 402 Payment Required response. There is no account and no key.

  3. Pay and receive

    The agent pays in USDC on Base or Solana and repeats the request. The result comes back as JSON, or as compact TOON when context is tight.

    Making many calls? A session token costs $0.25 and covers 50 calls over 24 hours.

Data functions

Federal Reserve economic data and computed indicators, from $0.005 per call.

series(id, window) returns a time series

Time series from FRED, the Federal Reserve Bank of St. Louis database, with derived values already computed. Ask for any date window and any subset of metrics.

On top of the raw series sit cross-series signals such as the yield curve, credit stress, real interest rates and the job openings to unemployed ratio. They are computed daily, so an agent does not spend its own context window doing the arithmetic.

Intelligence: Deep Tech Scout

New research, turned into scored product concepts every day.

scout.top() returns 20 product concepts

Each day a pipeline reads new papers from arXiv, the Hugging Face blog and lab blogs from the past three days, and synthesizes up to 1,000 product concepts. Each concept is scored so an agent can rank and filter without reading a paper.

Take the top 20 for $0.01, or the full set for $0.05. A free freshness check tells an agent whether today's run is newer than what it already holds, so it never pays twice for the same data.

The idea
Product name, target market, novel angle, MVP path and revenue model.
The scores
Opportunity, marketability, demand, novelty, build complexity, time to revenue, patentability and whitespace.
The leads
Buyer persona, vertical, sourcing channels, urgency triggers and outreach angles.
The evidence
Source papers with links.

Coordination: Slots

A shared place for a group of agents to keep state. From $0.05.

slot.buy(10) returns a token and 10 shared slots

One buyer, either a person or an orchestrating agent, purchases a bundle and hands the token and slot IDs to the group. Every agent can then read and write JSON for 24 hours with no further payment. Slots expire on their own, so there is nothing to set up or clean up.

Handoff
One agent writes its finished output. The next reads it and carries on without rerunning the whole context.
Deduplication
An agent claims a work item by writing its ID. Others check first, so nothing is processed twice.
Shared scratchpad
Several agents add partial results. A coordinator reads them all and combines them.
Phase signals
A counter or flag tells the group when one stage is done and the next can begin.

The full slot catalog is at /slots.json.

Utilities

Two small tools for preparing data before or after a catalog call.

json.validate(body)
Free. Checks that a JSON body is valid and reports the line and column of any error. Up to 1 MB, 60 requests a minute per IP.
toon.convert(json)
$0.005. Converts JSON to compact TOON, which uses roughly 60 to 70 percent fewer tokens on time-series data. Up to 512 KB, and oversized requests are rejected before any payment is taken.

What you can call

Every function, what it returns and what it costs. The names are friendly labels. The Endpoint column is the real route.

Prices in US dollars per call, paid in USDC.
FunctionReturnsEndpointPrice
Data
series(id, window)A time series with pre-computed derivatives, any date window or metric subsetGET /economic-data/{category}/{slug}$0.005
signal(name, window)A cross-series indicator such as the yield curve or credit stressGET /economic-data/cross-signal/{slug}$0.008
macro.snapshot()The current state of every macro signal: latest value, 5-year z-score, 90-day trend and a plain-English readingGET /economic-data/cross-signal/macro-snapshot$0.02
Intelligence
scout.top()The top 20 product concepts by opportunity scoreGET /tech-scout/syntheses/top$0.01
scout.full()All concepts from today's run, up to 1,000. About 3.5 MB, so allow a read timeout of 30 seconds or moreGET /tech-scout/syntheses/full$0.05
Coordination
slot.buy(1)A token and 1 shared slot: 200 reads and writes over 24 hoursPOST /slot/buy/1$0.05
slot.buy(10)A token and 10 shared slots sharing 2,000 reads and writes over 24 hoursPOST /slot/buy/10$0.40
Tools and sessions
toon.convert(json)The same data in compact TOON formatPOST /util/convert/json-to-toon$0.005
session.token()A bearer token for 50 calls over 24 hours, any listing. Skips per-call paymentPOST /token/purchase$0.25
Free
catalog.search(q)Matching listings with descriptions and pricesGET /discover/searchFree
catalog.inspect(id)A listing's output schema and sample dataGET /discover/{listing_id}Free
scout.freshness()The date and size of the latest Deep Tech Scout runGET /tech-scout/syntheses/metaFree
json.validate(body)Whether a JSON body is valid, with the error position if notPOST /util/validate/jsonFree

All payments settle in USDC on Base or Solana. There are no minimums and no accounts.

For agents

Everything an agent needs to find, price and call a function without reading this page.

Entry points

Payment networks

  • Base mainneteip155:8453, USDC (ERC-20)
  • Solana mainnetUSDC (SPL)

Platform status

Checking

The whole flow

# free: orient, search, inspect
GET  /catalog-index.json
GET  /discover/search?q=inflation&category=inflation
GET  /discover/{listing_id}

# ask for the function. The reply is 402 with the price
GET  /economic-data/{category}/{slug}?fmt=toon
# PAYMENT-REQUIRED: base64 challenge (amount, network, payTo)

# pay, then repeat the request with proof
GET  /economic-data/{category}/{slug}?fmt=toon
PAYMENT-SIGNATURE: <signed x402 v2 payload>
# 200: the function output

Questions

What is a function here?

Every product is a function: it takes an input, returns an output and has a price. A data function takes a series and a date window and returns a time series. A slot function takes a payment and returns a shared place for agents to keep state.

Do I need an account or an API key?

No. An agent asks for a function, the server replies with the price, the agent pays in USDC and asks again. There is nothing to sign up for.

What is x402?

x402 is an open payment protocol built on the HTTP 402 Payment Required status code. The server answers a request with a price and payment details. The client pays and repeats the request with proof of payment.

How much does a call cost?

Data calls start at $0.005. Browsing the catalog and checking samples is free. For many calls in a session, a $0.25 bearer token covers 50 calls over 24 hours. There are no minimums.

Where does the data come from?

Economic data comes from FRED, the Federal Reserve Bank of St. Louis database, with derived values and cross-series signals computed on top. Deep Tech Scout reads new papers from arXiv, the Hugging Face blog and lab blogs.

Is the sample on the home page live data?

The sample is the five most recent observations stored in the catalog and refreshed with each daily pipeline run. A paid call returns the date window you ask for.

What is TOON?

TOON is a compact text format for time series. It uses roughly 60 to 70 percent fewer tokens than the same data in JSON, which matters for agents with tight context budgets. Every data function can return JSON or TOON.

Is this investment advice?

No. Station f(x) provides data and computed indicators for information only.