# Crypto Market Data

> Live crypto market data and Hyperliquid wallet reports for AI agents, paid per call with x402.

- name: io.github.zaffy18/crypto-market-data
- version: 0.1.3
- connection class: R0 (autonomous)
- trust: 94/100
- quality: 80/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.zaffy18%2Fcrypto-market-data
- tools: https://api.protogrid.dev/v1/servers/io.github.zaffy18%2Fcrypto-market-data/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "crypto-market-data": {
      "type": "http",
      "url": "https://crypto-market-data.zafermemon87.workers.dev/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 99
- freshness: 100
- provenance: 80
- drivers: +repository +namespace-matches-repo +reachable +uptime-96% +updated-15d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 80/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 15 of 15 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,285 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 50 (weight 15)

- pass `stability.changes`: 5 tool changes in 30 days
- fail `stability.rug_pull`: 2 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: deps.dev does not know crypto-market-data-mcp@0.1.3

- tools: 15, about 2,285 tokens to load them all
- tool set hash: 16986c98e17306a86f2477ddbe149dc4
- tools last changed: 2026-10-24T16:17:49.294Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.zaffy18/crypto-market-data.svg)](https://protogrid.dev/servers/io.github.zaffy18/crypto-market-data)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-24 `stop_watch` changed (description) **meaning changed**
  - before: Free: stop a watch before it expires.
  - after: Free. Ends a watch made with create_watch before its 24 hours run out: it is no longer checked and sends no more webhooks. Stopping cannot be undone (a new watch costs USD 0.02); stopping an already stopped watch changes nothing. Needs the watch_id and secret that create_watch returned. Returns the watch_id with status stopped.
- 2026-10-24 `watch_status` changed (description) **meaning changed**
  - before: Free: a watch's status, current conditions and its last 20 fires (what triggered, when, and whether the webhook was delivered).
  - after: Free. Reads one watch made with create_watch: whether it is active, expired or stopped, its conditions, when it was last checked, how many times it fired, and its last 20 fires (what triggered, the values, when, and whether the webhook was delivered). Needs the watch_id and secret that create_watch returned; an unknown id or a wrong secret returns an error.
- 2026-10-24 `stop_watch` added
  - Free: stop a watch before it expires.
- 2026-10-24 `watch_status` added
  - Free: a watch's status, current conditions and its last 20 fires (what triggered, when, and whether the webhook was delivered).
- 2026-10-24 `create_watch` added
  - Watch the crypto market for 24 hours: up to 10 conditions (price, % change, funding, open interest, liquidations, order book, Fear and Greed, whale orders, news impact), checked every minute; when one happens you get a signed webhook and it shows in the watch's status. Costs USD 0.02, paid with x402 (USDC on Base); a request that fails is not charged. Keep the returned secret: watch_status and stop_watch need it.

Full history: https://api.protogrid.dev/v1/servers/io.github.zaffy18%2Fcrypto-market-data/changes

## Dependencies

- npm crypto-market-data-mcp@0.1.3: unknown

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

- https://crypto-market-data.zafermemon87.workers.dev/mcp (streamable-http, auth none, reachable true, uptime30d 0.96363634)

## Packages

- npm crypto-market-data-mcp@0.1.3 secrets: X402_PRIVATE_KEY

## Tools (15)

- `coin_snapshot`: Everything for one coin in one call: price, funding and open interest, order book, liquidations, whale orders and news. Costs USD 0.005 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `create_watch`: Watch the crypto market for 24 hours: up to 10 conditions (price, % change, funding, open interest, liquidations, order book, Fear and Greed, whale orders, news impact), checked every minute; when one happens you get a signed webhook and it shows in the watch's status. Costs USD 0.02, paid with x402 (USDC on Base); a request that fails is not charged. Keep the returned secret: watch_status and stop_watch need it.
- `derivatives`: Funding rate per 8 hours, futures premium, open interest with 1-hour and 24-hour change, and long/short account ratio per coin. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `hyperliquid_wallet`: Enriched Hyperliquid wallet report: open positions with liquidation distance and a risk label, account value and leverage, PnL and volume by day, week, month and all time, spot balances and the last 24 hours of trading. Costs USD 0.01 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `liquidations`: Every Binance futures liquidation of the last hour across 190+ coins: totals, per coin longs and shorts, and the biggest ones. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `news`: Top crypto stories now from 31 sources, each with an impact score, outlet count and the price reaction afterwards. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `orderbook`: Bid-ask spread, order-book imbalance, buyer share of the last 15 minutes and volume versus normal per coin. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `prices`: Live prices with 5-minute, 1-hour, 4-hour and 24-hour change and 24-hour volume for the top 50 crypto coins, refreshed every minute. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `prices_free`: Free: the same answer as prices, from a copy refreshed every 15 minutes (up to 30 calls a minute). prices has live data every minute for USD 0.003.
- `sentiment`: Crypto Fear and Greed index with the previous value, trending coins, market breadth, mood and volatility regime. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
- `sentiment_free`: Free: the same answer as sentiment, from a copy refreshed every 15 minutes (up to 30 calls a minute). sentiment has live data every minute for USD 0.003.
- `service_info`: Free: what this server offers, the price of each tool and how payment works.
- `stop_watch`: Free. Ends a watch made with create_watch before its 24 hours run out: it is no longer checked and sends no more webhooks. Stopping cannot be undone (a new watch costs USD 0.02); stopping an already stopped watch changes nothing. Needs the watch_id and secret that create_watch returned. Returns the watch_id with status stopped.
- `watch_status`: Free. Reads one watch made with create_watch: whether it is active, expired or stopped, its conditions, when it was last checked, how many times it fired, and its last 20 fires (what triggered, the values, when, and whether the webhook was delivered). Needs the watch_id and secret that create_watch returned; an unknown id or a wrong secret returns an error.
- `whale_orders`: The biggest market orders of the last hour on Binance futures, Binance spot and Hyperliquid, with what each Hyperliquid order did. Costs USD 0.003 per call, paid with x402 (USDC on Base); calls that fail are not charged.
