Skip to main content
Glama

gblin-treasury-risk-regime

Server Details

Risk regime + treasury for AI agents on Base: free regime reads, signed attestations, idle USDC.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
gblinproject/gblin-treasury-risk-regime
GitHub Stars
1
Server Listing
@gblin-protocol/mcp-server

Available Tools

8 tools
coherence.reportA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
methodNo
subjectYesObserved subject
promisesYes
observing_sinceNo

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given annotations already declare read-only, open-world, idempotent, and non-destructive hints, the description adds value by clarifying the data source (self-observation, v0), the frequency (every 10 minutes), and the sealing mechanism (EAS attestation on Base). This goes beyond mere reputation and provides useful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise at about 40 words, with all information relevant. It front-loads the core purpose (tallies) and then adds necessary detail. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is sufficient for a zero-parameter, read-only report with annotations and an output schema. It explains the data source, frequency, and sealing, but could offer a bit more on the exact contents of the report (e.g., what fields are included). However, given the output schema exists, the description need not detail return values, so this is adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the description does not need to explain parameters. Since there are no params, the description's job is to set expectations, and it does so by describing what is included in the report. A baseline of 4 is appropriate because the description compensates for the lack of param details.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: reporting kept/violated tallies for GBLIN's hash-pinned promises, with details on how data is collected (every 10 minutes) and sealed (EAS attestation on Base). It distinguishes itself from siblings by focusing on tallies and attestation, which is unique among the listed tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies its use for checking compliance tallies and notes that it is self-observation only in v0, which gives context but does not explicitly state when to use this tool versus alternatives. It could benefit from mentioning that this is for read-only reporting, but the self-observation note provides some guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

protocol.infoA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
llms_txtYesThe full llms.txt document (plain text)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already show readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds that the output is plain text and lists contents, but it does not disclose any limitations, rate limits, or output details beyond what the annotations already convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the core resource name and format, followed by a compact, useful list of contents. There is no redundant wording.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, an output schema, and simple annotations, the description is sufficiently complete for a protocol information fetch. The only notable gap is the lack of explicit usage guidance relative to sibling tools, which may still be inferred.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters and an empty input schema, the description carries the full semantic burden and does so by indicating exactly what kind of data will be returned. No parameter-level documentation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that protocol.info returns 'GBLIN llms.txt as plain text' and lists its contents: contract addresses, endpoints, prices, payment flow, and field contract of the attestation. This identifies the resource and distinguishes it from sibling tools like protocol.stats and receipts.get, though it lacks an explicit verb like 'retrieve'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when protocol-level information is needed, but it does not explicitly state when to use this tool versus alternatives or mention exclusions. For a simple zero-parameter read, this is adequate but not fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

protocol.statsA
Read-onlyIdempotent
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
_sourceNoProvenance and disclosure of the counters
total_paid_callsYesSettled x402 calls, cumulative
total_usdc_earnedYesUSDC received, cumulative
total_unique_agentsYesDistinct payer wallets, cumulative (our own wallets excluded)

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag read-only, open-world, idempotent, and non-destructive behavior, so the description only needs to add non-obvious context. It adds 'Cached 5 min' (stale data window) and 'methodology disclosure', which are useful beyond structured annotations. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences front-load the counters and add only the cache and methodology caveats. No filler, no repetition of schema or annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, annotations are rich, and no parameters require explanation. The description covers data scope, freshness via 'Cached 5 min', and methodology disclosure. This is complete for a no-input stats tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is fully self-describing with additionalProperties false. The description therefore does not need to explain inputs. Baseline 4 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with 'Cumulative public counters of GBLIN's x402 endpoints' and enumerates paid calls, unique payer wallets, USDC earned, and methodology disclosure. This clearly identifies the tool as an aggregate stats endpoint, distinct from receipt/risk/info siblings. The metric scope is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'cumulative public counters' phrasing and 'Cached 5 min' note establish when this tool is appropriate: for aggregate, quick, read-only metrics. It does not explicitly name alternatives, but no exclusions are needed for a zero-parameter stats endpoint. The context is clear enough for selection among siblings like receipts.get.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

receipts.getA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
indexYesReceipt index in the log (0-based; current size at GET /log/checkpoint)

Output Schema

ParametersJSON Schema
NameRequiredDescription
leafYesbase64 SHA256(0x00 || canonical)
rootYesbase64 Merkle root at tree_size
indexYes
anchorYesLatest daily EAS anchor of the tree root on Base and whether it already covers this receipt
formatYes
payloadYesThe signed, canonicalized record (gblin-canonical-json/1)
signatureYesbase64 Ed25519 over 'gblin-receipt/v1\n' + canonical
tree_sizeYes
checkpointYesC2SP signed note (origin, size, root)
provenanceYesWhat the receipt does and does not prove
verifier_keyYesC2SP note verifier key: origin+hash+base64(0x01||pub)
inclusion_proofYes
canonicalizationNoThe 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.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds genuine context beyond those hints: it discloses that the receipt is re-signed with a fresh inclusion proof, explains why re-signing yields deterministic output ('Ed25519 is deterministic'), notes the response includes the current signed checkpoint and latest on-chain anchor, and states it is free. This gives the agent useful behavioral expectations without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense sentence plus 'Free.', with the core resource (receipt from the log) front-loaded. Every phrase earns its place — re-signing, inclusion proof, checkpoint, anchor — and the parenthetical on Ed25519 determinism explains a non-obvious property. Slightly telegraphic, but appropriately sized with essentially no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (one required parameter, fully described in schema), has an output schema so return format need not be spelled out, and annotations cover the safety profile (read-only, idempotent, non-destructive). The description enriches this with the response contents and cost. Missing only minor context like rate limits or what GBLIN's log is, which are not necessary for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: the 'index' parameter is fully documented in the schema ('Receipt index in the log (0-based; current size at GET /log/checkpoint)'). Per the baseline for high schema coverage, the description need not repeat parameter details; its 'Receipt #index' phrasing aligns with the schema. The description adds no new parameter semantics, but none are required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the resource precisely — a receipt from GBLIN's receipts log — and enumerates what is returned (re-signed receipt, inclusion proof, signed checkpoint, on-chain anchor). The annotation title 'Get a receipt by index' supplies the explicit verb. It is clear what the tool does, though the description itself reads as a noun phrase and does not explicitly contrast with the related siblings receipts.seal and receipts.verify.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives. Siblings like receipts.seal and receipts.verify are functionally adjacent, but the description never says 'use this to fetch an existing receipt; use receipts.verify to check one' or any exclusion. Nothing is misleading, but the agent is left to infer the usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

receipts.sealAInspect

Append the HASHES of an AI action to GBLIN's public RFC 6962 transparency log and return a portable receipt: Ed25519 signature, inclusion proof, operator-signed C2SP checkpoint, plus the latest on-chain anchor (EAS on Base, daily). mode=demo (the only mode over MCP): 5 seals/day/IP, receipts marked demo:true. Unlimited seals are a paid x402 HTTP endpoint (resource gblin://howto/seal). Provenance is self-reported: the receipt proves existence and time of the record, not that the action happened. The action/agent_id/tool/meta strings are PUBLISHED in the log: identifiers only, never secrets. Fields not listed here are ignored and NOT recorded.

ParametersJSON Schema
NameRequiredDescriptionDefault
metaNoExtra JSON object as a string (optional). PUBLISHED.
modeNoOnly 'demo' is available over MCP (5/day/IP). Paid seals go through x402 HTTP.demo
toolNoTool/model used (optional). PUBLISHED.
actionYesWhat the AI did, short label. PUBLISHED in the log.
agent_idNoYour agent identifier (optional). PUBLISHED.
input_hashYessha256 of the input/prompt, 64 hex chars (0x prefix optional)
output_hashNosha256 of the output, 64 hex chars (optional; empty or blank = omitted)

Output Schema

ParametersJSON Schema
NameRequiredDescription
leafYesbase64 SHA256(0x00 || canonical)
rootYesbase64 Merkle root at tree_size
indexYes
anchorYesLatest daily EAS anchor of the tree root on Base and whether it already covers this receipt
formatYes
payloadYesThe signed, canonicalized record (gblin-canonical-json/1)
signatureYesbase64 Ed25519 over 'gblin-receipt/v1\n' + canonical
tree_sizeYes
checkpointYesC2SP signed note (origin, size, root)
provenanceYesWhat the receipt does and does not prove
verifier_keyYesC2SP note verifier key: origin+hash+base64(0x01||pub)
inclusion_proofYes
canonicalizationNoThe 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.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant behavioral context beyond annotations: fields are published publicly, secrets must not be included, provenance is self-reported, demo receipts are marked demo:true, and unspecified fields are ignored. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence carries essential information: core behavior, mode constraints, alternative endpoint, provenance caveat, privacy warning, and ignored-field behavior. It is front-loaded with the primary action and return value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is complete for a tool with this complexity: it explains the mutated state (public log append), the receipt contents, rate limits, alternative paid access, and privacy implications. An output schema exists, so detailed return-field documentation is not required here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents each parameter. The description adds value by emphasizing that action/agent_id/tool/meta are published, that only identifiers should be used, and that unlisted fields are ignored and not recorded.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: appends hashes to a transparency log and returns a portable receipt. It clearly differentiates from sibling tools like receipts.get and receipts.verify by describing creation/publication rather than retrieval or verification.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states that demo is the only mode over MCP, gives the rate limit, and points to the paid x402 endpoint for unlimited seals. It does not explicitly describe when to choose this over sibling receipt tools, but the creation vs. retrieval/verification distinction is strongly implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

receipts.verifyA
Read-onlyIdempotent
Inspect

Verify a gblin-receipt/v1 JSON with pure math (no log lookup, no trust in this server): leaf hash, Ed25519 signature, RFC 6962 inclusion proof, C2SP checkpoint signature, verifier-key hash. Same checks as the zero-dependency verify-receipt.mjs you can run offline. For the extra on-chain-anchor consistency check use GET /v1/verify/:index.

ParametersJSON Schema
NameRequiredDescriptionDefault
receiptYesThe receipt JSON as returned by receipts.seal / receipts.get / GET /v1/receipt/:i (bare or wrapped in {receipt})

Output Schema

ParametersJSON Schema
NameRequiredDescription
indexNo
validYes
checksYes
errorsYes
formatNo
reminderNo
tree_sizeNo

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already declare readOnlyHint, idempotentHint, and destructiveHint, the description adds meaningful behavioral context: it performs verification without log lookups (i.e., no server-side state), equivalent to an offline script, and does not perform on-chain anchor checks (pointing to another endpoint). This transparency about what the tool does and does not do goes beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences of substantive content plus a third sentence pointing to an alternative. It front-loads the purpose, lists specific checks, and includes a clear pointer to related functionality. No filler or redundancy—every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is cryptographically complex, but the description covers its core behavior, the exact checks, the lack of trust assumptions, and references an offline script for reproducibility. An output schema exists, so return value details are not needed. The pointer to the alternative endpoint fills the only gap (on-chain consistency). This is fully complete for an agent to decide and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema describes the single parameter 'receipt' with its expected format (bare or wrapped in {receipt}) and sources. The description adds the version specifier 'gblin-receipt/v1' and clarifies it's JSON, but these are minor additions. Since schema coverage is 100%, the description provides modest extra value, warranting a 4 rather than the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with the specific verb 'Verify' and identifies the exact resource: 'a gblin-receipt/v1 JSON'. It enumerates the specific checks performed (leaf hash, Ed25519 signature, RFC 6962 inclusion proof, etc.), which clearly distinguishes it from sibling tools like receipts.seal or receipts.get. The phrase 'pure math (no log lookup, no trust in this server)' differentiates it further from trust-based checks.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool: to verify a receipt with pure math and no trust in the server. It also provides an alternative for a different need: 'For the extra on-chain-anchor consistency check use GET /v1/verify/:index.' This gives clear context and exclusions, making the usage boundaries obvious.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

risk.attestation_sampleA
Read-onlyIdempotent
Inspect

Static, permanently expired sample of the signed Risk Attestation (sample:true), same fields and EIP-712 schema as the paid one. Use it to build and test a parser/verifier.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
metaNo
eip712NoEIP-712 domain/types/message to recompute the digest
sampleYesAlways true — never a live signal
signedYes
verifyNo
attestorNo
signatureNo
attestationYesSame field contract as the paid attestation (regime, shield_active, severity_pct, defensive_cash_pct, expires_at, ...)
attestation_idYeshashTypedData digest — recompute to verify

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds meaningful context: the sample is static, permanently expired, and schema-compatible with the paid attestation, which is valuable beyond the annotations. No contradiction exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the core identity and state of the resource, then gives a direct use-case instruction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters, supportive annotations, and an output schema present, the description fully covers what an agent needs to know: what the sample is, its constraints, and how to use it. Nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema requires no parameter documentation. Per the baseline for 0-parameter tools, a score of 4 is appropriate since there is nothing the description needs to compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as a static, permanently expired sample of the signed Risk Attestation, with the same fields and EIP-712 schema as the paid version. It states a specific purpose (building/testing a parser/verifier) and distinguishes the sample from the paid attestation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to use the tool to build and test a parser/verifier, which is clear usage guidance. It also notes the sample is permanently expired, implying it is not for production or current attestation data, though it does not explicitly name sibling alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

risk.regimeA
Read-onlyIdempotent
Inspect

Current BTC/ETH risk regime (calm | elevated | crash) with a suggested posture, read live from GBLIN's on-chain Crash Shield on Base (60s cache). Free and unsigned; a signed, verifiable-offline version is a paid x402 endpoint (resource gblin://howto/attestation).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
noteNo
assetsYesPer-risk-asset shield state
regimeYesCurrent risk regime
sourceNo
chain_idNo
contractNoGBLIN contract on Base
regime_codeYes0 calm, 1 elevated, 2 crash
risk_postureNoSuggested posture
severity_pctYesMax crash-shield weight cut across risk assets, percent
shield_activeYesTrue when any risk asset is currently slashed
defensive_cash_pctYesUSDC dynamic weight in the basket, percent

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds valuable behavioral context beyond the annotations: 'read live', '60s cache', 'free and unsigned', and the existence of a signed paid endpoint. This discloses data freshness and auth/security nuances without contradicting the readOnlyHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences. The first sentence delivers the core purpose and source; the second covers licensing/caching/alternative. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with an output schema, the description covers the essential context: what, where, how fresh, and what alternatives exist. Nothing is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters and 100% schema coverage, the baseline is 4. The description doesn't need to add parameter info and appropriately focuses elsewhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns the current BTC/ETH risk regime (calm | elevated | crash) with a suggested posture, and specifies the source (GBLIN's on-chain Crash Shield on Base). This is a specific verb+resource that distinguishes it from sibling tools like risk.attestation_sample.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides clear context about the free, live endpoint vs. a paid signed alternative, implying when to use each. However, it could be more explicit about when NOT to use this tool (e.g., when offline verification is needed).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updates
    • Changedreceipts.get1 field changed
      • addedOutput schema / properties / canonicalization
        Added value: +{
        +  "description": "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.",
        +  "properties": {
        +    "frozen_since": {
        +      "type": "string"
        +    },
        +    "leaf": {
        +      "type": "string"
        +    },
        +    "node": {
        +      "type": "string"
        +    },
        +    "rule": {
        +      "const": "gblin-canonical-json/1",
        +      "type": "string"
        +    },
        +    "signed_message": {
        +      "type": "string"
        +    },
        +    "spec": {
        +      "type": "string"
        +    },
        +    "verifier": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "rule",
        +    "spec"
        +  ],
        +  "type": "object"
        +}
    • Changedreceipts.seal1 field changed
      • addedOutput schema / properties / canonicalization
        Added value: +{
        +  "description": "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.",
        +  "properties": {
        +    "frozen_since": {
        +      "type": "string"
        +    },
        +    "leaf": {
        +      "type": "string"
        +    },
        +    "node": {
        +      "type": "string"
        +    },
        +    "rule": {
        +      "const": "gblin-canonical-json/1",
        +      "type": "string"
        +    },
        +    "signed_message": {
        +      "type": "string"
        +    },
        +    "spec": {
        +      "type": "string"
        +    },
        +    "verifier": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "rule",
        +    "spec"
        +  ],
        +  "type": "object"
        +}
  2. 1 tool update
    • Changedreceipts.seal6 fields changed
      • changedInput schema / additionalProperties
        Previous value: -falseNew value: +true
      • changedInput schema / properties / input_hash / description
        Previous value: -"sha256 of the input/prompt, 64 hex chars"New value: +"sha256 of the input/prompt, 64 hex chars (0x prefix optional)"
      • changedInput schema / properties / input_hash / pattern
        Previous value: -"^[0-9a-fA-F]{64}$"New value: +"^\\s*(0x)?[0-9a-fA-F]{64}\\s*$"
      • changedInput schema / properties / output_hash / description
        Previous value: -"sha256 of the output, 64 hex chars (optional)"New value: +"sha256 of the output, 64 hex chars (optional; empty or blank = omitted)"
      • changedInput schema / properties / output_hash / pattern
        Previous value: -"^[0-9a-fA-F]{64}$"New value: +"^\\s*((0x)?[0-9a-fA-F]{64})?\\s*$"
      • changedInput schema / required
        Previous value: -[
        -  "mode",
        -  "action",
        -  "input_hash"
        -]New value: +[
        +  "action",
        +  "input_hash"
        +]
  3. 2 tool updates
    • Changedreceipts.get1 field changed
      • addedOutput schema / properties / payload / properties / by
        Added value: +{
        +  "description": "Present only when this server sealed its own action; set server-side, cannot be supplied by a caller",
        +  "enum": [
        +    "operator"
        +  ],
        +  "type": "string"
        +}
    • Changedreceipts.seal1 field changed
      • addedOutput schema / properties / payload / properties / by
        Added value: +{
        +  "description": "Present only when this server sealed its own action; set server-side, cannot be supplied by a caller",
        +  "enum": [
        +    "operator"
        +  ],
        +  "type": "string"
        +}
  4. 16 tool updates
    • Addedcoherence.report
    • Removedget_agent_economy_stats
    • Removedget_attestation_sample
    • Removedget_coherence_report
    • Removedget_market_risk_regime
    • Removedget_protocol_info
    • Removedget_receipt
    • Addedprotocol.info
    • Addedprotocol.stats
    • Addedreceipts.get
    • Addedreceipts.seal
    • Addedreceipts.verify
    • Addedrisk.attestation_sample
    • Addedrisk.regime
    • Removedseal_action
    • Removedverify_receipt
  5. 8 tool updates
    • Changedget_agent_economy_stats1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedget_attestation_sample1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedget_coherence_report1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedget_market_risk_regime1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedget_protocol_info1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
    • Changedget_receipt11 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / index / description
        Previous value: -"Receipt index in the log"New value: +"Receipt index in the log (0-based; current size at GET /log/checkpoint)"
      • addedOutput schema / properties / anchor / properties / anchored_tree_size
        Added value: +{
        +  "type": [
        +    "integer",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / anchor / properties / covers_this_receipt / description
        Added value: +"deprecated alias of root_covers_this_receipt"
      • addedOutput schema / properties / anchor / properties / root_covers_this_receipt
        Added value: +{
        +  "description": "true iff index < anchored_tree_size: the anchored ROOT commits to this leaf via the inclusion proof",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / anchor / properties / what_is_anchored
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / anchor / required
        Previous value: -[
        -  "covers_this_receipt"
        -]New value: +[
        +  "root_covers_this_receipt",
        +  "anchored_tree_size",
        +  "what_is_anchored"
        +]
      • changedOutput schema / properties / provenance / properties / level / enum
        Previous value: -[
        -  "self-reported"
        -]New value: +[
        +  "self-reported",
        +  "server-observed",
        +  "externally-verified"
        +]
      • addedOutput schema / properties / provenance / properties / levels
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / provenance / properties / levels_meaning
        Added value: +{
        +  "type": "object"
        +}
      • changedOutput schema / properties / provenance / required
        Previous value: -[
        -  "level"
        -]New value: +[
        +  "level",
        +  "levels"
        +]
    • Changedseal_action24 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / action / description
        Previous value: -"What the AI did, short label (<=128 chars)"New value: +"What the AI did, short label. PUBLISHED in the log."
      • addedInput schema / properties / action / maxLength
        Added value: +128
      • addedInput schema / properties / action / minLength
        Added value: +1
      • changedInput schema / properties / agent_id / description
        Previous value: -"Your agent identifier (optional, <=128)"New value: +"Your agent identifier (optional). PUBLISHED."
      • addedInput schema / properties / agent_id / maxLength
        Added value: +128
      • changedInput schema / properties / input_hash / description
        Previous value: -"sha256 hex (64 chars) of the input/prompt"New value: +"sha256 of the input/prompt, 64 hex chars"
      • addedInput schema / properties / input_hash / pattern
        Added value: +"^[0-9a-fA-F]{64}$"
      • changedInput schema / properties / meta / description
        Previous value: -"Extra JSON, <=512 chars (optional)"New value: +"Extra JSON object as a string (optional). PUBLISHED."
      • addedInput schema / properties / meta / maxLength
        Added value: +512
      • changedInput schema / properties / output_hash / description
        Previous value: -"sha256 hex of the output (optional)"New value: +"sha256 of the output, 64 hex chars (optional)"
      • addedInput schema / properties / output_hash / pattern
        Added value: +"^[0-9a-fA-F]{64}$"
      • changedInput schema / properties / tool / description
        Previous value: -"Tool/model used (optional, <=128)"New value: +"Tool/model used (optional). PUBLISHED."
      • addedInput schema / properties / tool / maxLength
        Added value: +128
      • changedInput schema / required
        Previous value: -[
        -  "action",
        -  "input_hash"
        -]New value: +[
        +  "mode",
        +  "action",
        +  "input_hash"
        +]
      • addedOutput schema / properties / anchor / properties / anchored_tree_size
        Added value: +{
        +  "type": [
        +    "integer",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / anchor / properties / covers_this_receipt / description
        Added value: +"deprecated alias of root_covers_this_receipt"
      • addedOutput schema / properties / anchor / properties / root_covers_this_receipt
        Added value: +{
        +  "description": "true iff index < anchored_tree_size: the anchored ROOT commits to this leaf via the inclusion proof",
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / anchor / properties / what_is_anchored
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / anchor / required
        Previous value: -[
        -  "covers_this_receipt"
        -]New value: +[
        +  "root_covers_this_receipt",
        +  "anchored_tree_size",
        +  "what_is_anchored"
        +]
      • changedOutput schema / properties / provenance / properties / level / enum
        Previous value: -[
        -  "self-reported"
        -]New value: +[
        +  "self-reported",
        +  "server-observed",
        +  "externally-verified"
        +]
      • addedOutput schema / properties / provenance / properties / levels
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / provenance / properties / levels_meaning
        Added value: +{
        +  "type": "object"
        +}
      • changedOutput schema / properties / provenance / required
        Previous value: -[
        -  "level"
        -]New value: +[
        +  "level",
        +  "levels"
        +]
    • Changedverify_receipt1 field changed
      • addedInput schema / additionalProperties
        Added value: +false
  6. 7 tool updates
    • Changedget_agent_economy_stats4 fields changed
      • removedOutput schema / additionalProperties
        Removed value: -true
      • removedOutput schema / description
        Removed value: -"Observatory payload from gblin.digital/api/agent-stats — cumulative x402 call and payer counters with methodology notes"
      • addedOutput schema / properties
        Added value: +{
        +  "_source": {
        +    "description": "Provenance and disclosure of the counters",
        +    "properties": {
        +      "data_endpoint": {
        +        "type": "string"
        +      },
        +      "disclosure": {
        +        "type": "string"
        +      },
        +      "docs": {
        +        "type": "string"
        +      },
        +      "license": {
        +        "type": "string"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "url": {
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  "total_paid_calls": {
        +    "description": "Settled x402 calls, cumulative",
        +    "type": "integer"
        +  },
        +  "total_unique_agents": {
        +    "description": "Distinct payer wallets, cumulative (our own wallets excluded)",
        +    "type": "integer"
        +  },
        +  "total_usdc_earned": {
        +    "description": "USDC received, cumulative",
        +    "type": "number"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "total_paid_calls",
        +  "total_unique_agents",
        +  "total_usdc_earned"
        +]
    • Changedget_receipt15 fields changed
      • addedInput schema / properties / index / minimum
        Added value: +0
      • addedOutput schema / properties / anchor
        Added value: +{
        +  "description": "Latest daily EAS anchor of the tree root on Base and whether it already covers this receipt",
        +  "properties": {
        +    "chain": {
        +      "type": "string"
        +    },
        +    "covers_this_receipt": {
        +      "type": "boolean"
        +    },
        +    "eas_schema_uid": {
        +      "type": "string"
        +    },
        +    "explorer": {
        +      "type": "string"
        +    },
        +    "last_anchor": {
        +      "properties": {
        +        "day": {
        +          "type": "string"
        +        },
        +        "root": {
        +          "type": "string"
        +        },
        +        "tree_size": {
        +          "type": "integer"
        +        },
        +        "tx": {
        +          "type": "string"
        +        }
        +      },
        +      "type": [
        +        "object",
        +        "null"
        +      ]
        +    },
        +    "method": {
        +      "type": "string"
        +    },
        +    "promise_id": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "covers_this_receipt"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / checkpoint / description
        Added value: +"C2SP signed note (origin, size, root)"
      • addedOutput schema / properties / format
        Added value: +{
        +  "const": "gblin-receipt/v1",
        +  "type": "string"
        +}
      • addedOutput schema / properties / index
        Added value: +{
        +  "type": "integer"
        +}
      • addedOutput schema / properties / leaf
        Added value: +{
        +  "description": "base64 SHA256(0x00 || canonical)",
        +  "type": "string"
        +}
      • addedOutput schema / properties / payload / description
        Added value: +"The signed, canonicalized record (gblin-canonical-json/1)"
      • addedOutput schema / properties / payload / properties
        Added value: +{
        +  "action": {
        +    "type": "string"
        +  },
        +  "agent_id": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "demo": {
        +    "type": "boolean"
        +  },
        +  "index": {
        +    "type": "integer"
        +  },
        +  "input_hash": {
        +    "type": "string"
        +  },
        +  "log": {
        +    "type": "string"
        +  },
        +  "meta": {},
        +  "output_hash": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "tool": {
        +    "type": [
        +      "string",
        +      "null"
        +    ]
        +  },
        +  "ts": {
        +    "type": "string"
        +  },
        +  "v": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / properties / payload / required
        Added value: +[
        +  "v",
        +  "log",
        +  "index",
        +  "ts",
        +  "action",
        +  "input_hash"
        +]
      • addedOutput schema / properties / provenance
        Added value: +{
        +  "description": "What the receipt does and does not prove",
        +  "properties": {
        +    "level": {
        +      "enum": [
        +        "self-reported"
        +      ],
        +      "type": "string"
        +    },
        +    "meaning": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "level"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / root
        Added value: +{
        +  "description": "base64 Merkle root at tree_size",
        +  "type": "string"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "description": "base64 Ed25519 over 'gblin-receipt/v1\\n' + canonical",
        +  "type": "string"
        +}
      • addedOutput schema / properties / tree_size
        Added value: +{
        +  "type": "integer"
        +}
      • addedOutput schema / properties / verifier_key
        Added value: +{
        +  "description": "C2SP note verifier key: origin+hash+base64(0x01||pub)",
        +  "type": "string"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "payload",
        -  "checkpoint"
        -]New value: +[
        +  "format",
        +  "payload",
        +  "leaf",
        +  "index",
        +  "tree_size",
        +  "root",
        +  "signature",
        +  "verifier_key",
        +  "inclusion_proof",
        +  "checkpoint",
        +  "anchor",
        +  "provenance"
        +]
    • Removedhow_to_buy_live_attestation
    • Removedhow_to_seal_paid
    • Addedseal_action
    • Removedseal_action_demo
    • Addedverify_receipt
  7. 3 tool updates
    • Addedget_receipt
    • Addedhow_to_seal_paid
    • Addedseal_action_demo
  8. 6 tool updates
    • First observedget_agent_economy_stats
    • First observedget_attestation_sample
    • First observedget_coherence_report
    • First observedget_market_risk_regime
    • First observedget_protocol_info
    • First observedhow_to_buy_live_attestation

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.2/5.0
Disambiguation5/5

Each tool has a distinct purpose: coherence.report for metrics, protocol.info/stats for protocol data, receipts.get/seal/verify for receipt lifecycle, risk.regime for live risk, and risk.attestation_sample for testing. No two tools overlap in functionality.

Naming Consistency3/5

The dot-separated prefix pattern is consistent, but the second part mixes verbs (report, get, seal, verify) with nouns (info, stats, attestation_sample, regime). This inconsistency could confuse agents expecting a uniform verb-object structure.

Tool Count5/5

With 8 tools, the server covers its stated domain (risk regime, protocol info, receipts) without bloat. Each tool serves a clear, non-redundant role, fitting the typical 3-15 tool range.

Completeness5/5

The toolkit covers all core operations: querying risk, retrieving protocol info/stats, managing receipts (create, retrieve, verify), and providing a test sample. No essential functionality appears missing for the described free-tier scope.