# Pervix > Pervix reads Elysium tokens from the chain and shows their market risk: pool depth, liquidity concentration, volatility from swaps, holder concentration and activity changes, each indicator with its inputs, formula and the block it was read at. Read-only: it never moves funds and never calls a token safe. ## Pages - https://pervix.xyz/scan: Scanner - https://pervix.xyz/liquidity: Liquidity - https://pervix.xyz/alerts: Alerts - https://pervix.xyz/board: Signal board - https://pervix.xyz/method: Method - https://pervix.xyz/scan/: one token's risk report ## Indicators - Pool depth: How many dollars sit within 2% of the price, across the token's pools that a listed price can value. Formula: points = clamp((log10 $250k − log10 depth) / (log10 $250k − log10 $1k)) × 10000 - Who holds the liquidity: The largest single position's share of the liquidity that is in range right now, on the main v4 pool. Formula: points = clamp((top share − 20%) / (90% − 20%)) × 10000 - How far the price swings: Daily volatility from the main pool's hourly closing prices over the last 24 hours. Formula: σ = stdev(hourly log returns) × √24; points = clamp((σ − 2%) / (30% − 2%)) × 10000 - Who holds the token: The ten largest holders' share of circulating supply, with pools and position managers set apart. Formula: points = clamp((top-10 share − 20%) / (80% − 20%)) × 10000 - What changed lately: A burst of swaps in the last hour, or depth leaving the pools over 24 hours, whichever is larger. Formula: points = max(burst, fall); burst: 2× → 0, 10× → 10000 (log); fall: 0% → 0, 50% → 10000 ## Read-only JSON - GET https://pervix.xyz/api/report?token=<0x address> - GET https://pervix.xyz/api/tokens - GET https://pervix.xyz/api/pools - GET https://pervix.xyz/api/board ## Limits - A reading, not advice. Pervix never calls a token safe: low points mean low on the inputs it could measure, at the block it read. - Every number is read from Elysium at one confirmed block (20 blocks behind the head), shown on the report. The chain keeps moving after that. - If a read fails or cannot be decoded, that indicator is marked incomplete and left out of the score. An incomplete reading is never shown as low risk. - Dollar values use HYPE and KNTQ prices from Montra's public API and USDC at $1. Pools against any other token have no dollar value and do not count toward depth. - Depth within 2% assumes the active liquidity stays the same across that band. - LP concentration covers the main pool when it is a Uniswap v4 pool. v3-style positions sit inside a position manager and are not split by owner. - The holder list starts from the explorer's index; balances are then read on chain. An address missing from that index would be missed. - Token names and symbols come from the token contracts themselves. Only HYPE, WHYPE, USDC and KNTQ are on the checked list; a well-known symbol (USDC, kHYPE, ETH…) at any other address is flagged as not checked. - Pervix does not check a token's contract code (mint, pause, blocklist, upgrade). It measures the market around the token. - The tools work without $PERVIX. Alerts run while a page is open; nothing is pushed to you yet. ## Planned - Push notifications (browser push, email or messages) when a rule triggers. Today alerts run while a Pervix page is open, plus rules stored on chain. - More chains than Elysium. - LP concentration for v3-style pools, split by position owner. - A hosted keeper that posts readings for many tokens on a schedule. Today anyone can run the keeper script in the repository. - Longer history (7-day and 30-day volatility) once a private RPC carries the extra reads. - API access for other apps. - $PERVIX as the way to pay for alert quotas once they exist. Unproven until then. Network: Elysium (chain id 99901, gas HYPE).