TrustBench
Server Details
x402 provider rankings + Ed25519-signed payment receipts + signature verification (3 tools).
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- lithvall/TrustBench
- GitHub Stars
- 0
- Server Listing
- trustbench
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 3 of 3 tools scored.
Each tool has a clearly distinct purpose: get_rankings retrieves liveness rankings, get_receipt fetches a receipt by ID, and verify_receipt validates receipt signatures. There is no overlap in functionality.
All tool names follow a consistent verb_noun pattern in snake_case: get_rankings, get_receipt, verify_receipt. The naming is uniform and predictable.
Three tools is a reasonable count for a focused server dealing with rankings and receipt verification. It is slightly on the lower side but not too few, as each tool serves a distinct and necessary function.
The tool set covers core operations: retrieving rankings and handling receipts (fetch and verify). However, there are notable gaps such as no tool to list receipts or query provider capabilities beyond rankings, which could limit agent workflows.
Available Tools
3 toolsget_rankingsARead-onlyInspect
Get TrustBench liveness rankings for x402 providers by capability. Returns a scored list of providers with latency and success-rate telemetry. Methodology note: scores are derived from HEAD-probe liveness checks (3 samples from one host), not a rigorous benchmark. See trustbench.io/methodology. Output: returns a JSON array. Each object has name (string, provider name), score (number 0-100, composite liveness score), latency_p50 (number, ms), success_rate (number 0.0-1.0, last 7 days), endpoint (string, URL), capabilities (array of strings).
| Name | Required | Description | Default |
|---|---|---|---|
| capability | Yes | The provider capability to query rankings for. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds valuable behavioral context beyond annotations by disclosing the limited methodology (3 samples from one host) and that this is not a rigorous benchmark, which helps set expectations about data reliability.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is slightly longer than a minimal two-sentence description, but every sentence serves a purpose: purpose, methodology caveat, and output format. It is front-loaded with the core action and uses structured formatting for the output specification, balancing detail with readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter and no output schema, the description fully compensates by detailing the exact JSON array structure, field names, types, and meanings. It also includes a methodology note and reference link, providing complete context for an agent to understand the tool's behavior and results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single 'capability' parameter, so the schema already documents the enum values. The description reinforces the meaning by saying rankings are 'by capability' and mentions 'capabilities' in the output, but does not add new syntax or additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('TrustBench liveness rankings for x402 providers by capability'), clearly distinguishing it from sibling tools which deal with receipts. It also states the output type (scored list with latency and success-rate telemetry), leaving no ambiguity about the tool's purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving provider rankings by capability and even adds a methodology note (HEAD-probe checks, 3 samples) that cautions against over-interpreting results. However, it does not explicitly mention when to use this tool versus alternatives, though the sibling tools are clearly unrelated, making the context reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_receiptARead-onlyIdempotentInspect
Fetch a TrustBench routing receipt by ID. Receipts are immutable, Ed25519-signed records of a routing or payment event. Use to verify what was paid, to whom, for what capability, and what the on-chain settlement reference is. IDs start with rcpt_ (Phase 3) or rrcpt_ (Phase 4). Output: returns the signed receipt envelope as JSON. Phase 3 (rcpt_) returns a SignedReceipt with receipt (call metadata + settlement ref) and signature (Ed25519 over JCS-canonicalized receipt body). Phase 4 (rrcpt_) returns {receipt, signature} where receipt.paid contains routing details and signature covers the canonical envelope. To verify an envelope offline use the verify_receipt tool with the returned JSON, or @trustbench/verify-receipt npm.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | Yes | The receipt ID, e.g. rcpt_01KQY7C44GAPSXZPFQYRZ1D10C or rrcpt_… |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the annotations (readOnly, idempotent, non-destructive) by explaining that receipts are Ed25519-signed, immutable, and describing the exact JSON envelope structure for both Phase 3 and Phase 4 variants. It also mentions the canonicalization method (JCS), providing deep context about the data returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence in the description serves a purpose: purpose, use case, ID format, return structure, and verification alternative. The text is well-structured, starting with the core action and then adding necessary detail. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description fully compensates by detailing the response format for both receipt types, including the fields inside receipt.paid. It covers immutability, signature coverage, and offline verification. This is complete enough for an agent to know exactly what to expect and how to use the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents receipt_id with example prefixes. The description adds meaningful context by explaining that rcpt_ and rrcpt_ correspond to Phase 3 and Phase 4, which helps agents understand the two possible response formats without needing external knowledge. This enriches the parameter, though the schema itself is already sufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-resource pair: 'Fetch a TrustBench routing receipt by ID.' It clearly defines what the tool does and distinguishes itself from the sibling verify_receipt tool by positioning verification as a separate action. The 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the typical use case: 'Use to verify what was paid, to whom, for what capability, and what the on-chain settlement reference is.' It also provides an explicit alternative for offline verification: 'use the verify_receipt tool with the returned JSON, or @trustbench/verify-receipt npm.' This gives clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_receiptARead-onlyIdempotentInspect
Verify the Ed25519 signature on a TrustBench receipt. Two modes: (1) Lookup mode — pass receipt_id and the server fetches the receipt from trustbench.io and re-runs verification (handy when you only have an ID). (2) Offline mode — pass receipt_json (the full {receipt, signature} envelope an agent received from a third party) and the server verifies the Ed25519 signature against the published public key at trustbench.io/.well-known/trustbench-pubkey without trusting the database. Exactly one of receipt_id or receipt_json must be provided. Output: returns JSON with receipt_id, signature_valid (boolean), on_chain_verified (boolean, where present), signature_alg ("ed25519"), verify_url, pubkey_url. For non-server-mediated verification with no network round-trip, use the @trustbench/verify-receipt npm package.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | No | Lookup mode: the receipt ID to fetch and verify. Mutually exclusive with receipt_json. | |
| receipt_json | No | Offline mode: a full signed-receipt envelope {receipt, signature} (or a Phase 3 SignedReceipt). Verified against the published Ed25519 public key without database lookup. Mutually exclusive with receipt_id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive, but the description adds critical behavioral context: it fetches from trustbench.io in lookup mode, avoids database trust in offline mode, returns a specific JSON shape (receipt_id, signature_valid, on_chain_verified, etc.), and enforces that exactly one of receipt_id or receipt_json must be provided. This goes well beyond the annotations and gives the agent a clear model of what will happen.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is information-dense but well-organized: one core purpose sentence, two mode explanations, a combined constraint and output summary, and an alternative-tool recommendation. It avoids redundancy with the schema and remains compact. It could be slightly more scannable with bullets, but it earns its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema, the description thoroughly documents the return fields. It also covers both operational modes, input constraints, cryptographic algorithm, and public key source. It even mentions legacy Phase 3 SignedReceipt support. For a moderately complex tool with nested objects and multiple modes, this description leaves no significant gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both receipt_id and receipt_json, so the baseline is 3. The description elevates this by explaining the distinction between lookup and offline modes, the envelope structure '{receipt, signature}', and the trust model ('without trusting the database'). It confirms the oneOf constraint and adds operational context that helps the agent choose the correct parameter for the situation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Verify the Ed25519 signature on a TrustBench receipt.' It clearly distinguishes the tool's purpose from siblings like get_receipt (which fetches a receipt) and get_rankings (which likely retrieves rankings). The two modes are explicitly named, making the scope unmistakable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance by breaking out two modes with concrete triggers: 'Lookup mode — pass receipt_id... handy when you only have an ID' and 'Offline mode — pass receipt_json... without trusting the database.' It also suggests an alternative for non-server-mediated verification: 'use the @trustbench/verify-receipt npm package.' This directly tells the agent when to use this tool versus when to use something else.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
Alicense-qualityBmaintenanceMCP server that verifies scraped web data by re-fetching source pages and returning ed25519-signed pass, fail, or unverifiable verdicts, with x402 in-band payment.MIT
rugmunch-baseofficial
Flicense-qualityDmaintenance33 crypto security tools via x402 micropayments. Auto-refund guarantee. $0.01-$0.15/call.- Flicense-qualityDmaintenance33 crypto security tools via x402 micropayments. Auto-refund guarantee. $0.01-$0.15/call.
- Flicense-qualityCmaintenanceFind and vet paid x402 API services before an agent spends money on them, with live reliability scores and recency-weighted probing.
Your Connectors
Sign in to create a connector for this server.