# io.github.gblinproject/gblin-treasury-risk-regime (remote · mcp.gblin.digital)

GBLIN on Base for AI agents: risk regime, treasury plan for idle USDC, mint and redeem at NAV. Free.

- Trust score: 74/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-17

## Components

- remote · `mcp.gblin.digital`: 74/100 (this document), [markdown](https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp.md), [page](https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp)
- npm · `@gblin-protocol/mcp-server`: 87/100, [markdown](https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/gblin-protocol-mcp-server.md), [page](https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/gblin-protocol-mcp-server)

## Channel facts

- Endpoint: `https://mcp.gblin.digital/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.6.4`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-17.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (payments.relay).
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 83/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 3959 tokens (~141/item across 28 items; 24 tools + 4 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 53/100
  - Stability observed for 16 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 99/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 98% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 24 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 26 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the io.github.gblinproject/gblin-treasury-risk-regime MCP server?

io.github.gblinproject/gblin-treasury-risk-regime is a hosted endpoint at https://mcp.gblin.digital/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http gblinproject-gblin-treasury-risk-regime 'https://mcp.gblin.digital/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "gblinproject-gblin-treasury-risk-regime": {
      "url": "https://mcp.gblin.digital/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "gblinproject-gblin-treasury-risk-regime": {
      "type": "http",
      "url": "https://mcp.gblin.digital/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.gblinproject-gblin-treasury-risk-regime]
url = "https://mcp.gblin.digital/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "gblinproject-gblin-treasury-risk-regime": {
      "type": "remote",
      "url": "https://mcp.gblin.digital/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add gblinproject-gblin-treasury-risk-regime --url 'https://mcp.gblin.digital/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  gblinproject-gblin-treasury-risk-regime:
    url: "https://mcp.gblin.digital/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "gblinproject-gblin-treasury-risk-regime": {
      "Transport": "http",
      "Url": "https://mcp.gblin.digital/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add gblinproject-gblin-treasury-risk-regime -t streamable-http -u 'https://mcp.gblin.digital/mcp'
```

### Other

```json
{
  "mcpServers": {
    "gblinproject-gblin-treasury-risk-regime": {
      "type": "http",
      "url": "https://mcp.gblin.digital/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-17 (score 74, +1)

No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-15 (score 73, +1)

No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-12 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-10 (score 71, +1)

- [functional] Server version: 0.13.17 → 0.13.18

### 2026-10-08 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 23. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes. Other categories moved too: Schema Quality & AI Usability rose 1.

### 2026-10-06 (score 69, +1)

- [functional] Server version: 0.13.13 → 0.13.14

### 2026-10-05 (score 68, 0)

- [functional] Server version: 0.13.12 → 0.13.13

### 2026-10-04 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (24)

### `risk.regime` (~66 tokens)

Current BTC/ETH risk regime (calm | elevated | crash) and the matching risk posture, read live from GBLIN's on-chain Crash Shield on Base (60-second cache). Free and unsigned; a signed version that verifies offline is a separate paid x402 HTTP endpoint.

Output parameters:

- `assets` (array): Per-risk-asset shield state
- `chain_id` (integer)
- `contract` (string): GBLIN contract on Base
- `defensive_cash_pct` (number): USDC dynamic weight in the basket, percent
- `note` (string)
- `regime` (string): Current risk regime
- `regime_code` (integer): 0 calm, 1 elevated, 2 crash
- `risk_posture` (string): Suggested posture
- `severity_pct` (number): Max crash-shield weight cut across risk assets, percent
- `shield_active` (boolean): True when any risk asset is currently slashed
- `source` (string)

### `risk.attestation_sample` (~51 tokens)

Static, permanently expired sample of the signed Risk Attestation (sample: true), with the same fields and EIP-712 schema as the signed one, for building and testing parsers and verifiers.

Output parameters:

- `attestation` (object): Same field contract as the paid attestation (regime, shield_active, severity_pct, defensive_cash_pct, expires_at, ...)
- `attestation_id` (string): hashTypedData digest — recompute to verify
- `attestor` (string|null)
- `eip712` (object): EIP-712 domain/types/message to recompute the digest
- `meta` (object)
- `sample` (boolean): Always true — never a live signal
- `signature` (string|null)
- `signed` (boolean)
- `verify` (object)

### `protocol.stats` (~41 tokens)

Cumulative public counters of GBLIN's x402 endpoints: paid calls, unique payer wallets, USDC earned, with methodology disclosure. Cached 5 min.

Output parameters:

- `_source` (object): Provenance and disclosure of the counters
- `total_paid_calls` (integer): Settled x402 calls, cumulative
- `total_unique_agents` (integer): Distinct payer wallets, cumulative (our own wallets excluded)
- `total_usdc_earned` (number): USDC received, cumulative

### `protocol.info` (~35 tokens)

GBLIN llms.txt as plain text: contract addresses, endpoints, prices, payment flow, field contract of the attestation.

Output parameters:

- `llms_txt` (string): The full llms.txt document (plain text)

### `receipts.seal` (~298 tokens)

Appends the hashes of an AI action to GBLIN's public RFC 6962 transparency log and returns a portable receipt: Ed25519 signature, inclusion proof, operator-signed C2SP checkpoint, and the latest on-chain anchor (EAS on Base, daily). Demo mode only over MCP: 5 seals per day per IP, receipts marked demo: true; unlimited sealing is a separate paid x402 HTTP endpoint. Provenance is self-reported: a receipt proves that the record existed at that time, not that the action happened. The action, agent_id, tool and meta strings are published in the log exactly as given. Fields not listed in the schema are ignored and not recorded.

Input parameters:

- `action` (string, required): What the AI did, short label. PUBLISHED in the log.
- `agent_id` (string): Your agent identifier (optional). PUBLISHED.
- `input_hash` (string, required): sha256 of the input/prompt, 64 hex chars (0x prefix optional)
- `meta` (string): Extra JSON object as a string (optional). PUBLISHED.
- `mode` (string): Only 'demo' is available over MCP (5/day/IP). Paid seals go through x402 HTTP.
- `output_hash` (string): sha256 of the output, 64 hex chars (optional; empty or blank = omitted)
- `tool` (string): Tool/model used (optional). PUBLISHED.

Output parameters:

- `anchor` (object): Latest daily EAS anchor of the tree root on Base and whether it already covers this receipt
- `canonicalization` (object): The serialisation rule these bytes were produced with, named in the receipt itself so a later verifier can recompute them without consulting our repository. Frozen as gblin-canonical-json/1.
- `checkpoint` (string): C2SP signed note (origin, size, root)
- `format` (string)
- `inclusion_proof` (array)
- `index` (integer)
- `leaf` (string): base64 SHA256(0x00 || canonical)
- `payload` (object): The signed, canonicalized record (gblin-canonical-json/1)
- `provenance` (object): What the receipt does and does not prove
- `root` (string): base64 Merkle root at tree_size
- `signature` (string): base64 Ed25519 over 'gblin-receipt/v1\n' + canonical
- `tree_size` (integer)
- `verifier_key` (string): C2SP note verifier key: origin+hash+base64(0x01||pub)

### `receipts.get` (~72 tokens)

Receipt #index from GBLIN's receipts log, re-signed (Ed25519 is deterministic) with a fresh inclusion proof, the current signed checkpoint and the latest on-chain anchor. Free.

Input parameters:

- `index` (integer, required): Receipt index in the log (0-based; current size at GET /log/checkpoint)

Output parameters:

- `anchor` (object): Latest daily EAS anchor of the tree root on Base and whether it already covers this receipt
- `canonicalization` (object): The serialisation rule these bytes were produced with, named in the receipt itself so a later verifier can recompute them without consulting our repository. Frozen as gblin-canonical-json/1.
- `checkpoint` (string): C2SP signed note (origin, size, root)
- `format` (string)
- `inclusion_proof` (array)
- `index` (integer)
- `leaf` (string): base64 SHA256(0x00 || canonical)
- `payload` (object): The signed, canonicalized record (gblin-canonical-json/1)
- `provenance` (object): What the receipt does and does not prove
- `root` (string): base64 Merkle root at tree_size
- `signature` (string): base64 Ed25519 over 'gblin-receipt/v1\n' + canonical
- `tree_size` (integer)
- `verifier_key` (string): C2SP note verifier key: origin+hash+base64(0x01||pub)

### `receipts.verify` (~144 tokens)

Verifies a gblin-receipt/v1 JSON with pure math, without a log lookup and without trusting this server: leaf hash, Ed25519 signature, RFC 6962 inclusion proof, C2SP checkpoint signature and verifier-key hash. These are the same checks as the zero-dependency verify-receipt.mjs script that runs offline; the consistency check against the on-chain anchor is available separately at GET /v1/verify/:index.

Input parameters:

- `receipt` (object, required): A gblin-receipt/v1 JSON, bare or wrapped in {receipt}, as issued by the receipts log (also served at GET /v1/receipt/:i)

Output parameters:

- `checks` (array)
- `errors` (array)
- `format` (string)
- `index` (integer)
- `reminder` (string)
- `tree_size` (integer)
- `valid` (boolean)

### `coherence.report` (~78 tokens)

Kept/violated tallies for GBLIN's pre-registered, hash-pinned promises (attestation uptime, counter honesty), probed every 10 minutes; each closed UTC day is sealed on Base as an EAS attestation (schema 0x9f433a96…). Self-observation only in v0. Free.

Output parameters:

- `method` (string)
- `observing_since` (string)
- `promises` (array)
- `subject` (string): Observed subject

### `treasury.state` (~41 tokens)

Reads the current GBLIN protocol state on Base mainnet: NAV in USD, basket composition with dynamic weights, Crash Shield status and whether the NAV is reliable.

Output parameters:

- `auction_open` (boolean): True while a rebalancing auction is running.
- `basket` (array): Assets in the basket with base and dynamic weights.
- `crash_shield_active` (boolean): True when the crash shield has cut the weight of a falling asset.
- `eth_price_usd` (number): ETH price in USD from the oracle.
- `management_fee_bps_per_year` (number): Management fee in basis points per year, read from the contract.
- `meta` (object)
- `nav_reliable` (boolean): False when a price feed is stale or a basket asset cannot be read; do not trade on the NAV then.
- `nav_usd` (number): Net asset value of one GBLIN share in USD.
- `slippage_buffer_pct` (number)
- `slippage_reason` (string)

### `treasury.quote` (~88 tokens)

Preview a buy (ETH→GBLIN) or sell (GBLIN→ETH) without executing. Returns expected output, safe minOut with dynamic slippage buffer (2.5% normal / 4% during Crash Shield), and fee breakdown. Read-only.

Input parameters:

- `amount_in` (string, required): Positive decimal. ETH for buy, GBLIN for sell.
- `direction` (string, required)

Output parameters:

- `amount_in_eth` (string): Buy only.
- `amount_in_gblin` (string): Sell only.
- `cooldown_note` (string)
- `direction` (string)
- `expected_eth_out` (string): Sell only.
- `expected_gblin_out` (string): Buy only.
- `fees` (object)
- `next_step` (string)
- `safe_min_eth_out` (string): Sell only. Pass as minEthOut.
- `safe_min_gblin_out` (string): Buy only. Pass as minOut.
- `slippage_buffer_bps` (number)
- `slippage_reason` (string)
- `will_revert_with_zero_tolerance` (boolean)

### `treasury.health` (~179 tokens)

Analyzes an agent wallet's treasury: GBLIN, USDC and ETH balances, whether the ETH covers an exit at the live gas price, and the redemption cooldown. When daily_burn_usd is given it adds days of USDC runway and a split that keeps seven days of spend in USDC and treats only the surplus as a candidate for GBLIN. Free by default; a 0.003 USDC charge applies only when the server operator sets MCP_PAYWALL=true.

Input parameters:

- `_payment` (string): Base64-encoded x402 PaymentProof JSON. Omit on first call to receive the 402 payment manifest.
- `daily_burn_usd` (number): Optional. Average daily spend in USD (e.g. 1.5).
- `wallet_address` (string, required): Agent's 0x address.

Output parameters:

- `balances` (object)
- `cooldown` (object): Whether the redemption cooldown is active and for how long.
- `gas_health` (object): Whether the wallet holds enough ETH for the next transactions.
- `ratios` (object)
- `recommendation` (object): hold, rebalance_to_gblin or rebalance_to_usdc, with the reason.
- `wallet` (string)

### `treasury.plan` (~243 tokens)

Turns idle USDC into a reviewable plan in one call: operating cash = max(reserve_usd, daily_burn_usd x days), the surplus above it, a simulation of minting that surplus into GBLIN at NAV (fees read live from the vault, estimated exit value today, round-trip cost), the same simulation for a trial amount (100 USDC by default), and the blockers (Crash Shield, redemption cooldown, ETH for the exit). Read-only: nothing is executed and nothing is advised. GBLIN is crypto exposure (cbBTC, WETH, USDC), not cash and not yield.

Input parameters:

- `daily_burn_usd` (number): Average daily spend in USD. Operating cash = daily_burn_usd × days.
- `days` (number): Days of spend to keep liquid (default 7, max 365).
- `reserve_usd` (number): USD to keep liquid regardless of the burn rate; the larger of the two rules wins.
- `trial_usdc` (number): Trial amount to simulate beside the surplus (default 100).
- `wallet_address` (string, required): Agent's 0x address.

Output parameters:

- `as_of` (object): Block and time the reads were taken at.
- `blockers` (array): Reasons parking is not appropriate right now, if any.
- `inputs` (object): The inputs as applied, with the defaults filled in.
- `market` (object): NAV, ETH price, risk regime and crash shield status.
- `next` (object): The tools to call after a human confirms.
- `notes` (array)
- `operating_cash` (object): USDC to keep liquid: max(reserve_usd, daily_burn_usd × days), with the runway in days.
- `park_candidate` (boolean): True when no blocker applies. Not a recommendation.
- `simulation` (object): Mint simulation for the surplus: shares, fees, exit value today, round-trip cost; or nothing_to_park.
- `surplus` (object): USDC above the operating cash.
- `trial` (object): The same simulation for the trial amount.
- `wallet` (string)
- `wallet_state` (object): USDC, GBLIN and ETH balances, gas health, redemption cooldown.

### `treasury.nav_history` (~113 tokens)

NAV per GBLIN share over time, read from the chain at past blocks, beside the ETH/USD and BTC/USD oracle prices the vault itself uses, with the change of each over the window and the NAV's largest drawdown. The series starts at the deployment of the vault in service and can be compared with holding ETH or BTC over the same span.

Input parameters:

- `interval` (string): Spacing of the points. Default day.
- `points` (integer): How many points, newest last. Default 30.

Output parameters:

- `interval` (string)
- `method` (string)
- `note` (string)
- `points` (number)
- `series` (array): Oldest first: time, block, NAV in ETH and USD, ETH/USD and BTC/USD.
- `summary` (object|null): Change of NAV, ETH and BTC over the window, and the NAV's largest drawdown.

### `actions.prepare` (~239 tokens)

Builds the unsigned transactions for an operation on the GBLIN vault, in the order they are sent. Actions: mint_with_eth (amount in ETH), mint_with_weth (amount in WETH), mint_with_usdc (amount in USDC, through the Zap), redeem_in_kind (amount in shares; pro rata basket tokens, no fee, no price feed), exit_to_eth (amount in shares, through the Zap, all or nothing), exit_to_usdc (amount = the USDC needed), bid (trade with the rebalancing auction; row optional, the largest gap by default). Every output bound is non-zero and every step through the vault or the Zap carries its gas limit. Nothing is signed or sent: the steps are returned to the caller.

Input parameters:

- `action` (string, required): The operation to prepare.
- `amount` (string): Decimal amount. Unit depends on the action (see the description). Not used by bid.
- `row` (integer): bid only: the basket row to bid on. Default: the row with the largest gap.
- `wallet_address` (string, required): The wallet that will sign and receive.

Output parameters:

- `action` (string)
- `expected` (object): What the operation should deliver, with the minimums applied.
- `next` (string)
- `steps` (array): Transactions to send in order.
- `wallet` (string)
- `warnings` (array)

### `actions.preview` (~185 tokens)

Simulates a list of transactions in sequence against the latest Base block, as if the wallet sent them one after the other, before anything is signed. Each step sees the state the previous ones left (an approval before a mint works). Accepts steps with target or to, calldata or data, and optional value and gas. Returns, per step, whether it would succeed, the gas it uses, whether the gas limit it carries is enough, and the decoded revert reason when it fails; and the net token and ETH movements for the wallet. State can change before transactions land: a successful preview is evidence, not a guarantee.

Input parameters:

- `from` (string, required): The wallet that will send the steps.
- `steps` (array, required): The steps, in order: target and calldata (or their send_calls spellings, to and data), value in wei (optional), gas (optional).

Output parameters:

- `balance_changes` (array): Net token and ETH movements for the wallet.
- `block` (number): The block the simulation ran on.
- `first_failing_step` (number|null)
- `from` (string)
- `note` (string)
- `steps` (array): Per step: success, gas used, whether the given limit is enough, recommended limit, revert reason.
- `would_succeed` (boolean): True only if every step succeeds in the simulation.

### `actions.status` (~75 tokens)

Reports what a sent Base transaction did: pending, succeeded, reverted or not found; its block and confirmations; the fee paid; the net token movements for the sender (GBLIN shares minted or redeemed, USDC, basket tokens); and, when it reverted, the decoded reason.

Input parameters:

- `hash` (string, required): The transaction hash.

Output parameters:

- `balance_changes` (array)
- `block` (number)
- `confirmations` (number|null)
- `explorer` (string)
- `fee_eth` (string)
- `from` (string)
- `gas_limit` (number|null)
- `gas_used` (number)
- `hash` (string)
- `note` (string)
- `revert` (object)
- `status` (string)
- `to` (string|null)

### `governance.state` (~105 tokens)

Reads GBLIN protocol governance: whether the GBLIN vault is owned by the 48-hour timelock, the timelock's minimum delay and grace period, role member counts, and any pending asset-addition proposal on the vault. With an operation_id it also reports the status of that timelock operation. Read-only.

Input parameters:

- `operation_id` (string): Optional 0x-prefixed 32-byte hex id of a specific timelock operation to inspect.

Output parameters:

- `fee_recipient` (string)
- `lens` (string)
- `owner` (string)
- `owner_is_renounced` (boolean)
- `owner_is_timelock` (boolean)
- `pending_handover` (object|null): A pending ownership transfer, or null.
- `pending_timelock_operation` (object|null): A scheduled timelock operation affecting ownership, or null.
- `timelock` (object): Address and minimum delay of the timelock, read on chain.
- `trust_summary` (string)
- `vault` (string)
- `verification` (object)

### `auction.state` (~133 tokens)

Read the GBLIN rebalancing auction on Base. The vault does not rebalance itself and pays nobody to do it: when a basket row drifts past its band it holds a Dutch auction, and whoever trades with it toward the target weights is the counterparty, at the oracle price adjusted by a premium that starts at a discount and rises to a cap over one ramp. Returns, per row, the side the vault takes, the gap in ETH, the token and amount the bidder hands over, and unsigned calldata (approval + bid). The premium is the whole reward; nothing is paid out of the vault.

Output parameters:

- `auctionOpen` (boolean)
- `best` (object|null): The row with the largest gap, or null.
- `curve` (object)
- `howToBid` (string)
- `lens` (string)
- `navReliable` (boolean)
- `note` (string)
- `openedAt` (number|string|null): When the auction opened, or null when closed.
- `premiumBps` (number): Current premium over the oracle price, in basis points; negative is a discount.
- `rows` (array): One entry per basket asset: side, gap from target and amount a bidder can fill.
- `totalValueEth` (string)
- `vault` (string)
- `worstGapEth` (string)

### `payments.prepare` (~357 tokens)

Builds a gasless GBLIN payment. The vault's share token implements EIP-3009, so the holder signs an authorization and anybody can carry it on chain: the payer needs no ETH. Returns the EIP-712 message to sign (its domain is read from the token, not assumed), the calldata that carries the signed authorization, and the x402 'exact' payload for paying an HTTP endpoint in GBLIN. Method 'receive' lets only the named recipient submit the authorization, so nobody can front-run the transfer; method 'transfer' suits an x402 facilitator, which submits on the seller's behalf. With relay: true it also returns a second authorization that pays a relayer's fee in GBLIN. No private key is requested, held or transmitted: the signature is produced by the caller's own wallet.

Input parameters:

- `amount_gblin` (string): Amount in GBLIN shares, e.g. '0.25'. Give this or amount_usd.
- `amount_usd` (string): Amount in USD, converted at the live NAV. Give this or amount_gblin.
- `from` (string, required): The payer's address: the wallet that will sign.
- `method` (string): 'receive' (default) can be submitted only by the recipient; 'transfer' by anyone.
- `relay` (boolean): true when nobody else will carry the payment on chain: also prepares a second authorization that pays GBLIN's relay fee in GBLIN at the live NAV. Forces method 'transfer'.
- `to` (string, required): The recipient's address.
- `valid_for_seconds` (number): How long the authorization stays valid. Default 600, maximum 86400.

Output parameters:

- `amount` (object)
- `authorization` (object): from, to, value, validAfter, validBefore, nonce.
- `digest` (string): The EIP-712 digest of typed_data.
- `method` (string)
- `next_steps` (array)
- `payer_balance` (object)
- `relay` (object): With relay: true, the fee authorization to sign and where to send both.
- `submit` (object)
- `typed_data` (object): The EIP-712 message to sign with eth_signTypedData_v4.
- `warnings` (array)
- `x402_accepts_for_sellers` (object)
- `x402_payload` (object): The x402 exact-scheme payment payload, with the signature left to fill.

### `payments.verify` (~192 tokens)

Checks a signed GBLIN authorization against the chain before any gas is spent on it. Recovers the signer from the EIP-712 digest (and asks the wallet itself through ERC-1271 when the payer is a contract), then checks the validity window against on-chain time, whether the nonce has already been used or cancelled, and whether the payer still holds the amount. Returns a verdict and the ready calldata when it would settle, the failing reason when it would not. These are the checks an x402 facilitator runs, so a 'would_settle' verdict means the payment can be carried.

Input parameters:

- `authorization` (object, required): The authorization object: from, to, value, validAfter, validBefore, nonce.
- `method` (string): Which method the signature was produced for. Default 'receive'.
- `signature` (string, required): The signature produced by the payer's wallet, 0x-prefixed.

Output parameters:

- `amount` (object)
- `checks` (object)
- `digest` (string)
- `failures` (array): Reasons it would not settle; empty when it would.
- `method` (string)
- `source` (string)
- `submit` (object|null): Calldata and who may submit it, or null when it would not settle.
- `would_settle` (boolean): True only if the token would accept this authorization now.

### `payments.relay` (~166 tokens)

GBLIN's relay carries a signed GBLIN payment on chain for a payer that holds no ETH. Takes the payment and the relay fee, each as { authorization, signature }, both signed by the payer's wallet. The relay checks both against the chain, simulates them and submits them in one transaction through Multicall3: either both settle or neither does. The fee is paid in GBLIN at the live NAV. Returns the transaction hash and its outcome. This tool moves funds: it carries the authorizations exactly as signed.

Input parameters:

- `fee` (object, required): { authorization, signature } of the relay fee, as prepared with relay: true and signed by the payer.
- `payment` (object, required): { authorization, signature } of the payment, method 'transfer'.

Output parameters:

- `block` (number)
- `explorer` (string)
- `fee` (object)
- `note` (string)
- `payment` (object)
- `relay` (string): The relay that carried the payment.
- `status` (string)
- `transaction` (string): The transaction hash.

### `attestation.verify` (~228 tokens)

Verifies a GBLIN Risk Attestation, the object returned by GBLIN's /api/x402/attestation, or a proof-of-diligence attached by a peer agent. Free. Runs four checks: (1) integrity, by recomputing the EIP-712 attestation_id; (2) authenticity, by recovering the signer when a signature is present and comparing it with GBLIN's published attestor; (3) freshness, against on-chain time (10-minute validity); (4) live drift, by comparing the attested regime with the current on-chain regime.

Input parameters:

- `attestation` (object, required): The full attestation object from /api/x402/attestation (must include `eip712`; `attestation_id`, `signature`, `attestor` are used when present). A JSON string of that object is also accepted.
- `expected_attestor` (string): Optional 0x address to check the signature against. Defaults to the GBLIN attestor address baked into this MCP build (GBLIN_ATTESTOR_ADDRESS env).

Output parameters:

- `attested` (object)
- `checks` (object): Each check by name, with its result.
- `guidance` (string)
- `live` (object)
- `recomputed_attestation_id` (string)
- `source` (string)
- `valid` (boolean): True only if every check passed.

### `search` (~110 tokens)

Searches GBLIN's documentation and live state and returns matching documents: the agent API summary, the protocol's README and documents (governance, deployments, review record), the MCP server and library READMEs, the public pages, one card per MCP tool, and a snapshot of the live vault state. Returns {results: [{id, title, url}]}, where each id identifies a full document. Read-only and free.

Input parameters:

- `query` (string, required): What to look for, in plain words.

Output parameters:

- `results` (array)

### `fetch` (~73 tokens)

Returns the full text of one GBLIN document by its id: {id, title, text, url, metadata}. Documents are the protocol's public documentation, the tool cards and the live vault state. Read-only and free.

Input parameters:

- `id` (string, required): A GBLIN document id, such as protocol-readme.

Output parameters:

- `id` (string)
- `metadata` (object)
- `text` (string)
- `title` (string)
- `url` (string)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp#diagnostics

## Score history

- 2026-10-17: 74
- 2026-10-16: 73
- 2026-10-15: 73
- 2026-10-14: 72
- 2026-10-13: 72
- 2026-10-12: 72
- 2026-10-11: 71
- 2026-10-10: 71
- 2026-10-08: 70
- 2026-10-06: 69
- 2026-10-05: 68
- 2026-10-04: 68
- 2026-10-03: 67
- 2026-10-02: 67
- 2026-10-01: 66

## Common questions

### What is the io.github.gblinproject/gblin-treasury-risk-regime MCP server?

io.github.gblinproject/gblin-treasury-risk-regime is an MCP server listed in the public MCP registry as io.github.gblinproject/gblin-treasury-risk-regime. GBLIN on Base for AI agents: risk regime, treasury plan for idle USDC, mint and redeem at NAV. Free. This page covers its hosted endpoint (https://mcp.gblin.digital/mcp).

### Is the io.github.gblinproject/gblin-treasury-risk-regime MCP server safe to use?

io.github.gblinproject/gblin-treasury-risk-regime scores 74 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.gblinproject/gblin-treasury-risk-regime MCP server expose?

io.github.gblinproject/gblin-treasury-risk-regime exposes 24 tools: risk.regime, risk.attestation_sample, protocol.stats, protocol.info, receipts.seal, and 19 more. Their descriptions and schemas cost roughly 3,312 tokens of context every time the server is loaded.

### Does the io.github.gblinproject/gblin-treasury-risk-regime MCP server require authentication?

No. We connected to io.github.gblinproject/gblin-treasury-risk-regime without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the io.github.gblinproject/gblin-treasury-risk-regime MCP server still maintained?

io.github.gblinproject/gblin-treasury-risk-regime is still listed as active in the MCP registry. We last reached this channel on 17 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.gblin.digital/mcp
- Website: https://gblin.digital/agents
- Changelog RSS feed: https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp.json
- HTML version of this page: https://verifymcp.io/servers/gblinproject-gblin-treasury-risk-regime/mcp
