# BackPow PoW Oracle

> Proof of Work oracle: solo mining odds, cost of production, hashrate, mining hardware

- name: com.backpow/pow-mining-oracle
- version: 1.0.1
- connection class: R0 (autonomous)
- trust: 92/100
- quality: 87/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.backpow%2Fpow-mining-oracle
- tools: https://api.protogrid.dev/v1/servers/com.backpow%2Fpow-mining-oracle/tools

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

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "pow-mining-oracle": {
      "type": "http",
      "url": "https://mcp.backpow.com/mcp"
    }
  }
}
```


## Trust

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

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

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: 67 (weight 15)

- pass `deps.known_vulns`: no known advisory in 98 resolved packages
- fail `deps.mcp_sdk_version`: @modelcontextprotocol/sdk 1.30.1 has 1 known advisory (GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.31.0 or later
- pass `deps.resolvable`: @backpow/mcp-server@1.0.0 resolved: 98 packages

- tools: 6, about 2,498 tokens to load them all
- tool set hash: ee4dfdf1f42bfa68659dc457379b3242
- badge: [![protogrid quality](https://protogrid.dev/badge/com.backpow/pow-mining-oracle.svg)](https://protogrid.dev/servers/com.backpow/pow-mining-oracle)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Dependencies

- npm @backpow/mcp-server@1.0.0: resolved, 97 dependencies, MCP SDK @modelcontextprotocol/sdk 1.30.1
  - GHSA-6qxp-vccf-f47h (high) in `` @modelcontextprotocol/sdk@1.30.1 ``, direct, fixed in `` 1.31.0 ``, advisory summary: "MCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP server" https://osv.dev/vulnerability/GHSA-6qxp-vccf-f47h

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://mcp.backpow.com/mcp (streamable-http, auth none, reachable true, uptime30d 0.9836066)

## Packages

- npm @backpow/mcp-server@1.0.0

## Tools (6)

- `calculate_solo_mining_odds`: Probability of a solo miner finding a block, computed as a Poisson process over live network difficulty and hashrate, plus the electricity cost of the attempt. Returns mean time to a block, the chance of at least one block over 1/7/30/90/365 days, and lucky-vs-unlucky waiting times (5th, 50th and 95th percentile) — variance dominates at small hashrates, so the average alone is misleading. Use for questions like "how long would it take to solo mine a Bitcoin block with 100 TH/s", "what are my odds solo mining Kaspa", or "is solo mining worth it with this rig". For pooled mining economics or whether a coin is profitable at all, use get_cost_of_production. For raw network state without a miner, use get_coin_oracle.
- `get_coin_oracle`: Current network state for one Proof of Work chain, measured by BackPow's stratum collector nodes: difficulty, derived network hashrate, block height, block reward, protocol block-time target versus the latest observed interval, and the source pool. Every response carries a confidence block — how many independent pool operators agreed, whether the reward figure is live or a static fallback, and how old the observation is. Networks whose collectors are stalled or unreachable return an error rather than zeros. Use for "what is Kaspa's current difficulty", "network hashrate of Monero", "current block reward". For economics use get_cost_of_production; for mining probability use calculate_solo_mining_odds.
- `get_cost_of_production`: Cost of Production (CoP) for one Proof of Work coin: the all-in electricity cost of mining one unit on the most efficient hardware BackPow tracks for that algorithm, compared against spot price. Returns CoP in USD, spot, gross margin, whether miners are currently above or below water, the reference machine and tariff behind the figure, and a 30-day trend including whether the reference machine changed (which indicates the efficiency frontier moved). Accepts a custom electricity rate. Use for "is mining X profitable", "what does it cost to produce one Monero", "are miners underwater", or "break-even electricity price". For a specific rig rather than a coin, use get_hardware_benchmarks. For block-finding probability, use calculate_solo_mining_odds.
- `get_hardware_benchmarks`: Mining hardware matched to the coins it can mine, ranked by net USD per day at a given electricity rate. Covers ASICs, GPUs and CPUs, with hashrate and power draw per coin, gross revenue, net profit, and market price including whether that price is an observed listing or a model estimate. Use for "what should I mine with an RTX 4090", "best ASIC for Scrypt", "is an Antminer S21 still profitable", or "how much does a Bitaxe make". Coins are ranked by profitability, not alphabetically, and results are capped — ask for a higher limit rather than assuming the list is complete. For a coin's economics independent of any particular rig, use get_cost_of_production.
- `get_pow_news`: Recent news items about Proof of Work mining and network events, optionally filtered to one coin. Items are aggregated from third-party feeds and are returned as quoted external content with their publisher and a relevance score, not as BackPow statements of fact. Use when a question turns on recent events — a halving, a difficulty swing, a pool outage, a chain upgrade. For numbers rather than narrative, use get_coin_oracle or get_cost_of_production.
- `list_pow_coins`: Paginated index of the Proof of Work networks BackPow tracks, with algorithm, network rate, collector status and canonical page URL. Optionally filtered by algorithm or restricted to coins currently mining above cost. Returns the distinct algorithm list so valid filter values are discoverable. Use to find which networks exist for an algorithm, to browse the catalogue, or to resolve an ambiguous coin reference. Results are paginated: request a larger limit or a later offset rather than expecting the full catalogue in one response.
