on-chain vs issuer

Built on Base · Tokenized stocks · covers Base (Coinbase) and Robinhood Chain (Robinhood)

Is this stock token
the real one?

Paste a token address or type a ticker. We check it against the issuer's own list of its stock tokens, then show how far its on-chain price is from the issuer's price, and how old that price is.

try

proof-of-stock

01

Is it the issuer's token?

Coinbase lists its stock tokens on Base and Robinhood lists its own on Robinhood Chain. Only an exact contract address from those lists counts. A token that copies the name or symbol is marked not official, and you get a warning before any link to it opens.

02

What does the issuer say it's worth?

The issuer's price for one token (Coinbase NAV or Robinhood token bid/ask), always with its age. These prices stop moving while the US market is closed. A price from 40 hours ago is normal on a Sunday and odd on a Tuesday afternoon.

03

How far has the chain drifted?

Every 15 minutes we compare the deepest on-chain pool with that price and keep the history, split into market open, extended hours and closed. Under 0.5% stays grey. Green: on-chain above the issuer's price. Red: below it. Bold: more than 2%.

Look-alikes we flagged this week

Loading the case archive.

chaintokencopiesflaggedstatus

A claim with evidence, not a verdict. Not in the registry is a fact about one list. A row opens its passport in the terminal above. The case archive.

Where the gaps open

From Friday close to Monday open the issuer's price stays the same for 65 hours, but the tokens keep trading. Holidays make that longer. This is when the on-chain price can move away from the share.

Each passport shows the last 24 hours, with closed-market hours shaded.

market closed · reference held Fri sessionFri 16:00 ETMon 09:30 ET

Ask it from your agent

The same passport works as a public MCP server. Anyone can connect an agent to it without a key or an account. It has six read-only tools: find_stock_token, list_stock_tokens, stock_passport, verify_stock_tokens (up to 50 addresses before a buy), recent_impostors and compare_venues. They return data with its time and source. There is no tool that trades. Tool reference

It can only read: no wallet, no key, no tool that sends a transaction. Is it safe to connect my agent?

MCP server URL
https://proofofstock.xyz/mcp
Claude Code
claude mcp add --transport http proofofstock https://proofofstock.xyz/mcp
mcp.json
{
  "mcpServers": {
    "proofofstock": {
      "type": "http",
      "url": "https://proofofstock.xyz/mcp"
    }
  }
}

Questions

If a token is issuer-listed, is it safe to buy?

Listed means only that this exact contract address is on the issuer's published list for that chain, as we last read it. It says nothing about the price: pools can trade several percent away from the issuer's price, mostly while the market is closed, so check the gap and the price's age first. What the token entitles you to, and whether you may hold it, are set by the issuer's terms and your law. It is not investment advice.

A token is not on the list. Is it fake?

Not necessarily. It is not on any issuer list we read for that chain: it may be a token from an issuer we do not cover yet, or an unrelated coin that shares a ticker. We call it an impostor only when it copies a listed token's distinctive symbol or an issuer's naming style. A name or a ticker alone never makes a token listed.

Where does the data come from?

From each issuer's own public list of its tokens and its price, and from public DEX pool data. Every answer names its source and time, so you can check it there. Proof of Stock is independent: no issuer has reviewed or endorsed this site. The methodology lists every source, chain by chain.

How old can an answer be, and what if a source is down?

Issuer lists are reread every 5 minutes and pool prices recorded every 15, so a reading is usually under 20 minutes old; past 30 minutes it is marked stale. The issuer's own price can be hours or days old while the market is closed, and that age is shown too. If an issuer's list cannot be read for more than 15 minutes, the address check answers that it cannot verify, never "not listed".

Is it safe to connect my agent?

It only reads. There is no wallet, no key, no sign-in, and no tool that signs or sends a transaction. A token's own name is its creator's text: it comes back as a short label and is never put into a sentence the service says. An agent should still refuse any token that is not on the issuer's list.

Is it free, and can I call it from code?

Yes, with no key and no account. Agents use the MCP server, programs use the HTTP API, and each client has a per-minute limit described in the docs.

How do we know the answers are right?

Every day a public exam asks the site about every token whose right answer comes from the issuers themselves: every listed token, the week's look-alikes, unrelated tokens and listed tokens asked on the wrong chain. It counts every wrong answer and checks the proofs, and the report is committed to the exam branch of our public repository, with the hash of the question set, so anyone can rerun it. The terminal's exam command shows the latest one.

More in the documentation, or write to [email protected].