# SoChain

> Live Bitcoin, Litecoin, Dogecoin and Zcash data: balances, transactions, blocks, fees, prices.

- name: com.sochain/mcp
- version: 0.1.0
- connection class: R0 (autonomous)
- trust: 82/100 flags: no-repository
- quality: 100/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.sochain%2Fmcp
- tools: https://api.protogrid.dev/v1/servers/com.sochain%2Fmcp/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "sochain": {
      "type": "http",
      "url": "https://sochain.com/mcp",
      "headers": {
        "API-KEY": "${API_KEY}"
      }
    }
  }
}
```

Placeholders to fill: `${API_KEY}`.

## Trust

- hygiene: 80
- liveness: 98
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-95% +updated-5d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 100/100 (new)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 3600000)

### 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`: 20 of 20 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 4,357 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

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

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 5 of the 7 days needed

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

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 20, about 4,357 tokens to load them all
- tool set hash: a1decf5f80cf336bc078d077474f53fd
- tools last changed: 2026-10-17T09:00:17.997Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.sochain/mcp.svg)](https://protogrid.dev/servers/com.sochain/mcp)
- 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-17 `get_transaction` changed (outputSchema)
- 2026-10-16 `contact_support` removed
  - Sends a support request about this key's account; a person replies by email. Attaches the account's failed calls and deliveries from the last 24 hours unless include_recent_failures is false. Use only when the user asks to contact SoChain support or report a problem with SoChain; then tell them it was sent and give the reference. Needs an API key; never counted.
- 2026-10-16 `get_bucket_transactions` removed
  - The merged history of one of your buckets, newest first: a transfer between its addresses nets out (it counts as out by its fee). Takes the same filters as get_transactions and pages by cursor. Needs an API key on a plan with buckets.
- 2026-10-16 `get_bucket_balance` removed
  - Total balance of one of your buckets (a named group of addresses); with height or time, the confirmed total at that point, and with members each address's. Needs an API key on a plan with buckets.
- 2026-10-16 `get_account_info` removed
  - Your plan, its monthly requests, and how many are used this month and today. Needs an API key.
- 2026-10-16 `get_counterparties` changed (outputSchema, annotations)
- 2026-10-16 `get_address_poisoning` changed (outputSchema, annotations)
- 2026-10-16 `get_balance_history` changed (outputSchema, annotations)
- 2026-10-16 `get_address_rank` changed (outputSchema, annotations)
- 2026-10-16 `get_rich_list` changed (outputSchema, annotations)

Full history: https://api.protogrid.dev/v1/servers/com.sochain%2Fmcp/changes

## Remotes

- https://sochain.com/mcp (streamable-http, auth none, reachable true, uptime30d 0.95238096)

## Packages

_none_

## Tools (20)

- `get_address_poisoning`: Whether an address was targeted by address poisoning: look-alike addresses that sent it dust, imitating an address it really paid or was paid by, so a careless copy from its history pays the scammer. Each finding names the look-alike, whom it imitates and the real payment.
- `get_address_rank`: Where an address stands among the largest holders (exact within the top 10,000) and its share of the supply.
- `get_address_summary`: Totals for an address: balance, total received, and how many transactions sent and received.
- `get_balance`: Confirmed and unconfirmed balance of an address; with height or time, its confirmed balance at that point (for example at the end of a year).
- `get_balance_history`: An address's confirmed balance by day, week or month, with what came in and went out in each and how many transactions did each. Without an API key at most 2,000 points (daily: the most recent days unless from says otherwise); with one, 20,000.
- `get_best_block_hash`: The hash of the newest block.
- `get_block`: A block by height or hash: time, transactions, size, reward, fees, miner.
- `get_chart`: A chart series: tx_count, fees_total, fees_median, block_size, difficulty, hashrate, supply, price_usd, tx_per_min, block_interval, mempool_txs, mempool_bytes, pool_share, holder_share, new_addresses, active_addresses, transfers, lookalikes, on LTC and LTCTEST mweb_pool (coins in MWEB) and mweb_flows (peg-ins and peg-outs), and on ZEC and ZECTEST zcash_pools (the value in each Zcash pool). Intervals: block (last 1,000 blocks), hour (90 days), day (full history), minute (last hour; tx_per_min and mempool series only).
- `get_counterparties`: Who an address moved significant amounts to and from lately (the window the poisoning check watches), newest first.
- `get_latest_blocks`: The ten newest blocks with their size, transaction count, reward and miner.
- `get_network_info`: Current height, hashrate, and the mempool: waiting transactions, size, and projected next blocks with fee rates.
- `get_price`: The price in USD (or another currency): the current price, or the UTC-day opening price for a past unix time.
- `get_rich_list`: The largest holders: the top 1,000 addresses by confirmed balance, with each one's share of the supply, transactions, first and last activity, and change over 24 hours and 7 days.
- `get_transaction`: A transaction: confirmations, block, fee, inputs and outputs (is_change marks outputs paying back to an input address).
- `get_transaction_counts`: How many transactions an address has sent, received, and in total.
- `get_transactions`: An address's transactions, newest first (unconfirmed first), with the amount each one moved for the address and the price at the time (USD unless currency is given). Without filters, pages by number; with any filter (block or time range, direction), pages by cursor: pass next_cursor back until it's null (a short page with a cursor isn't the end).
- `get_transaction_status`: A transaction's status: pending, mined, replaced (another transaction spent one of its inputs, as in a fee bump or double spend; replaced_by names it), dropped, or expired (Zcash). SoChain remembers a removal for about a day; after that, or for a transaction it never saw, the status is unknown.
- `get_unspent_outputs`: The coins (unspent outputs) an address can spend, oldest first.
- `is_valid_address`: Whether a string is a valid address on the network.
- `search`: Classify a search string: an address, a transaction ID, a block hash or a block height.
