# Under the Ticker > Every token that claims to be a stock on Ethereum, Base, BNB Chain, Solana and Robinhood Chain. We also cover Arbitrum One, Avalanche, Polygon and ZKsync Era when an issuer's own list names an address there. For each token: what the holder gets (quoted from the issuer's legal documents, or unknown), how it moves (checked onchain), and whether it is official. Read-only. No key and no sign-in: 1,000 requests a day per IP address, free, shared by the HTTP API and the MCP server, where each JSON-RPC message counts as one request. The budget resets at 00:00 UTC. Every route also has a short limit per IP address: 60 requests a minute for pages, JSON, /v1, /mcp and the card and chip embeds, and 20 requests a minute for images (/preview and the other /embed files). Health checks and static files are not limited. Over a limit the answer is 429 with a Retry-After header (seconds), and on /v1, /mcp and JSON the same error body as the daily budget (code RATE_LIMITED); wait and try again. The information on this website is for information only. It isn’t legal, investment or tax advice. It isn’t an offer or recommendation, an opinion about who owns what, or an audit of the issuer. The information may be incomplete, wrong or out of date. Check it against the issuer’s own current documents. ## MCP - [Connect an agent](https://underticker.com/api#mcp): the server URL, an install config, the tools and their arguments, a Tesla example, the free daily limit - [MCP server](https://mcp.underticker.com/mcp): remote, Streamable HTTP, stateless. Tools: search, lookup, passport, resolve, check_hold, check_contract, list_issuers, get_issuer, list_classes, claims_spotlight. search: Look up a ticker (TSLA), a name (Tesla), a product ticker (TSLAx), a full contract address or Solana mint, or a CAIP-10 id (eip155:1:0x…). lookup: One token or asset, as a single object — the word wallets and agents use for this lookup. passport: Full details for one token, including what the holder gets, rules checked onchain and its documents, given the chain and full address. resolve: Resolve a contract or mint to the underlying asset it belongs to (the same answer as search). check_hold: Checks one supported onchain rule for one wallet and token version. check_contract: Whether a contract is an official version of an asset we cover. list_issuers: Up to 50 issuers we cover, who they are and what they put onchain. get_issuer: One issuer: its legal entity, the lists checked for it and every token version it puts onchain. list_classes: Every class used to group the assets we cover, and what has been checked in each. claims_spotlight: Returns the effective date and issuer-listed denominator, counts by section and class, examples, 14-fact rights counts, source conflicts, documents and the disclaimer. ## HTTP - [Search](https://api.underticker.com/v1/search?q=Tesla): GET /v1/search?q= with a ticker, a name or a full address; the same JSON as the search and lookup tools. A close match is answered and marked close in its query; add &match=exact for the text only as typed; add &chain= to filter to one chain (a chain the catalog does not hold is the honest empty answer, never a 404 or a silent ignore), the same filter GET /v1/underlyings/{id}/deployments takes - [Passport](https://api.underticker.com/v1/passport?chain=solana&address=XsDoVfqeBukxuZHWhdvWHBhgEHjGNst4MLodqsJHzoB): GET /v1/passport?chain=&address= for one token; the same JSON as the passport tool - [Check](https://api.underticker.com/v1/check): `POST /v1/check` runs a private wallet or contract check and returns an ID without a link. Use `POST /v1/check/{id}/share` to create a link or `DELETE /v1/check/{id}` to delete the result. hold: one wallet against the one rule on the chain read for a form; the forms read today are Tokenized SECZ, where a pass means, on Avalanche, the registry the token's contract names holds the wallet, and its other transfer rules are not read; on Solana, the wallet's SECZ account is not frozen; never that the wallet can receive the token. contract: is this contract an official form. Pass, fail or unknown, dated by its block or slot; the same JSON as the check_hold and check_contract tools - [Chip](https://api.underticker.com/v1/chip?chain=solana&address=XsDoVfqeBukxuZHWhdvWHBhgEHjGNst4MLodqsJHzoB): GET /v1/chip?chain=&address= for one token's line on a token page: the form, whether it is official, the section it sits in (share, claim, tracker, unconfirmed, unofficial), the contrast headline to quote word for word, and its permanent URL; a token the catalog does not hold is a 404 miss object, nothing read; the same values as the embed at /embed/chip - [Claims spotlight](https://api.underticker.com/v1/claims-spotlight): `claims_spotlight`: returns the effective date and issuer-listed denominator, counts by section and class, examples, 14-fact rights counts, source conflicts, documents and the disclaimer. Page (https://underticker.com/claims), JSON (https://underticker.com/claims?format=json), HTTP (GET /v1/claims-spotlight, optional class, issuer, chain and section filters) and MCP tool (claims_spotlight). - [A page as JSON](https://underticker.com/tsla?format=json): any page is its JSON too: add ?format=json, or send Accept: application/json - Lists: A list returns at most 50 items, whatever limit is asked for (a larger limit is treated as 50, not an error). When more than 50 match, the 50 are a sample that stays the same all day (UTC) however the request is worded, keeps those of them a narrower query still matches, and changes the next day, and the answer says how many matched in total (the total field), that it is cut (the capped field) and a plain sentence saying so (the note field). There is no next page and no offset: narrow the query or the filters (class, form, issuer, chain) to see others. This holds for /v1/search listings, /v1/issuers, an issuer's products, a class's items, a search's candidates, a page's ?format=json and the MCP tools alike; one token or one underlying's tokens is a single lookup and is not cut; one issuer's products are a list and are cut the same way. ## Optional - [Server card](https://underticker.com/.well-known/mcp.json): the MCP server's name, version and URL - [API documentation](https://underticker.com/api): the same, for people - [Privacy and Disclosures](https://underticker.com/privacy): what the site is and is not, how its labels are to be read, and what it keeps about the people who use it