Skip to main content
Glama

Server Details

A2A & MCP Pre-Flight Security: SHA-256 tool schema rug-pull detection and liveness grades.

Ownership verified
Status
Healthy
Uptime
100.0% over 20 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.6/5.0

Scored across 4 tools

Disambiguation5/5

Each tool occupies a distinct lifecycle stage: assay_get_ledger_policy reads/pins stored policy, assay_preflight performs live pre-call gating, assay_probe registers/refreshes public telemetry, and assay_verify_delivery audits post-payment delivery. The descriptions explicitly cross-reference each other to route callers away from adjacent tools, eliminating overlap.

Naming Consistency4/5

All tools use the assay_ prefix and snake_case, giving a predictable namespace. The action component is mostly verb-based (get, verify) but includes noun-like actions (preflight, probe), so the strict verb_noun pattern is not perfectly uniform.

Tool Count5/5

Four tools is well-scoped for a focused endpoint verification and gating service. Each tool earns its place by covering a distinct phase of the Assay workflow, with no redundant or filler operations.

Completeness4/5

The core lifecycle is covered: register/refresh (probe), pre-call gate (preflight), historical policy management (get_ledger_policy), and post-payment SLA audit (verify_delivery). Minor gaps exist around ledger maintenance (e.g., unpinning/deleting policy hashes, listing indexed endpoints) and quota management, but agents can work within the provided surface.

Available Tools

4 tools
assay_get_ledger_policyQuery Historical Ledger & Pin Expected Schema HashesA
Idempotent
Inspect

Retrieve historical conformance observations and manage pinned SHA-256 tools/list policy hashes in the Assay ledger for a target endpoint. When expected_tools_hash is provided, it pins that 64-hex digest as the target's baseline policy and compares it against the latest stored observation; when omitted, it returns the stored dossier and last 20 drift observations without network probing unless the target is unindexed. Idempotent; first 5 calls/IP are free. Use to audit historical drift or pin mcp-lock.json hashes; for live pre-execution gating use assay_preflight; for live re-indexing use assay_probe; for post-payment SLA receipts use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.

NameRequiredDescriptionDefault
targetYesPublic HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked.
expected_tools_hashNoOptional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating.

Output Schema

NameRequiredDescription
errorNo
reasonNo
statusNo
dossierNo
receiptYes
verdictYes

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare idempotentHint=true and destructiveHint=false, but the description adds genuinely new context: pinning behavior when a hash is supplied, no network probing when omitted unless the target is unindexed, and a rate limit ('first 5 calls/IP are free'). It also resolves the apparent read/write ambiguity implied by the 'get' name and readOnlyHint=false.

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?

Front-loaded with purpose, then branching behavior, then sibling routing, then an example. The closing example URL duplicates the schema's own example field, which is the only real waste in an otherwise dense, purposeful block.

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 so return values need not be enumerated, yet the description still states what comes back (dossier and last 20 drift observations). Combined with the pinning semantics, rate limit, and sibling routing, an agent has everything needed to call this 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?

Schema coverage is 100%, so the baseline is 3, but the description adds consequence-level meaning the schema does not: supplying expected_tools_hash pins that digest as the baseline and compares it to the latest observation, while omitting it returns the dossier plus the last 20 drift observations.

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?

States a specific compound verb+resource: retrieve historical conformance observations and manage pinned SHA-256 tools/list policy hashes in the Assay ledger for a target endpoint. This is clearly distinguishable from the sibling tools named in the same description.

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?

Explicitly routes the agent: use here to audit historical drift or pin mcp-lock.json hashes; use assay_preflight for live pre-execution gating, assay_probe for live re-indexing, and assay_verify_delivery for post-payment SLA receipts. When-to-use and alternatives are both spelled out.

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

assay_preflightPre-Flight MCP & A2A Security GateA
Read-onlyIdempotent
Inspect

Gate a remote MCP, A2A, or x402 endpoint before calling or paying it by probing live JSON-RPC reachability, hashing tools/list (SHA-256), and scanning for prompt-injection poisoning. When expected_tools_hash is provided, any mismatch against the live tools/list digest forces verdict='deny' to block silent schema rug-pulls; when omitted, verdict reflects liveness and injection safety alone. Read-only gate; first 5 calls/IP are free and quota-exceeded calls return a 402 top-up prompt. Use before tool execution or payment; to register or refresh public leaderboard telemetry use assay_probe; to read or pin stored policy hashes use assay_get_ledger_policy; after payment use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.

NameRequiredDescriptionDefault
targetYesPublic HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked.
expected_tools_hashNoOptional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating.

Output Schema

NameRequiredDescription
errorNo
reasonNo
statusNo
dossierNo
receiptYes
verdictYes

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), but the description adds genuinely new behavior: hash mismatch forces verdict='deny', and quota limits (5 free calls/IP, 402 top-up on exceed). It stops short of describing output shape or latency, but output schema exists, so the remaining gap is small.

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?

Front-loaded with the primary action and mechanism, then conditional behavior, then sibling routing. Dense but nearly every clause carries information; the inline example URL is arguably redundant with the schema examples.

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 annotations, a full two-parameter schema, and an output schema all present, the description supplies everything missing: gating semantics, payment/quota behavior, and tool routing. An agent can call this correctly without further inference.

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 baseline is 3; the description adds meaning by explaining the consequence of each mode — passing a digest enforces zero-drift gating, omitting it reads/auto-pins the live digest. This is more than a restatement of the schema text.

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?

States a specific verb ('gate'), a precise resource class (remote MCP, A2A, or x402 endpoint), and the three concrete mechanisms (JSON-RPC reachability probe, SHA-256 tools/list hashing, injection scanning). It is clearly distinguishable from siblings, which are named in the same breath.

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?

Explicitly says when to use it ('before tool execution or payment') and routes to each alternative by condition: assay_probe for registration/telemetry, assay_get_ledger_policy for stored policy hashes, assay_verify_delivery after payment. Both when-to-use and when-to-use-something-else are covered.

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

assay_probeRegister & Refresh Endpoint Conformance TelemetryA
Idempotent
Inspect

Register a new remote MCP, A2A, or x402 endpoint or refresh its public Assay Observatory dossier by running a live HTTP, agent-card, and JSON-RPC tools/list inspection without policy gating. Target must be a public HTTPS origin (private IPs are rejected with a 400 error); each call appends a timestamped observation and increments rug_pulls if tools_hash drifted since the prior stored observation. Writes to the public ledger; first 5 calls/IP are free and retries are idempotent on steady schemas. Use to onboard or re-index a server; for pre-call allow/deny gating use assay_preflight; for historical observations or hash pinning use assay_get_ledger_policy; for post-payment disputes use assay_verify_delivery. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.

NameRequiredDescriptionDefault
targetYesPublic HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked.

Output Schema

NameRequiredDescription
errorNo
reasonNo
statusNo
dossierNo
receiptYes
verdictYes

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare a non-read-only, open-world, idempotent, non-destructive tool; the description adds substantial value beyond that. It discloses the 400-rejection of private IPs, that each call appends a timestamped observation, that rug_pulls increments on tools_hash drift, that it writes to a public ledger, the first-5-calls/IP free tier, and conditional idempotency on steady schemas. This richness is well above the annotation baseline.

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?

Dense but front-loaded: purpose first, then constraints, effects, and routing alternatives in a compact block with a concrete example. Each sentence carries weight, though the single long opening paragraph packs several concerns together and could be marginally more scannable.

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, so return-value explanation is unnecessary, and annotations already carry the safety profile. The description covers the remaining agent-critical facts: eligibility constraints, side effects on the public ledger, drift counter behavior, rate limits, and idempotency semantics.

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% for the single 'target' parameter, and the schema already states that private/loopback IPs are blocked. The description restates the public-HTTPS constraint and format but adds no syntax, normalization, or validation detail the schema lacks, so the baseline of 3 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?

States a specific verb+resource (register/refresh a remote MCP, A2A, or x402 endpoint dossier) and names the mechanism (live HTTP, agent-card, JSON-RPC tools/list inspection without policy gating). The agent can distinguish this onboarding/re-indexing action from the sibling gating, ledger, and verification tools without opening any schema.

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?

Explicitly routes the agent: 'Use to onboard or re-index a server' plus three named alternatives with selecting conditions (pre-call gating -> assay_preflight, historical observations/hash pinning -> assay_get_ledger_policy, post-payment disputes -> assay_verify_delivery). Nothing is left to inference.

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

assay_verify_deliveryVerify Post-Payment x402 Delivery & Mint SLA ReceiptA
Idempotent
Inspect

Audit a paid x402 or A2A provider after payment to confirm delivery or prove an SLA breach with an HMAC-SHA256 signed receipt. Passing status_code >= 500 forces verdict='sla_breach_confirmed' even if the live re-probe succeeds, while passing tx_hash cryptographically binds your Base or Solana payment signature into the receipt (omitting tx_hash still verifies liveness and issues a probe-bound receipt). Non-destructive; first 5 calls/IP are free and failed target connections do not throw tool errors. Use only after paying a provider; before payment use assay_preflight; for public indexing use assay_probe; for policy history use assay_get_ledger_policy. Example: target='https://agentdiet-72343955726.us-central1.run.app/mcp'.

NameRequiredDescriptionDefault
targetYesPublic HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked.
tx_hashNoOptional on-chain payment transaction hash (0x Base USDC hash or base58 Solana signature) to bind into the signed SLA receipt. Omit to run an unsigned post-call SLA check.
status_codeNoOptional HTTP status code returned by the paid endpoint (e.g. '200', '502', '504'). Codes >= 500 force verdict='sla_breach_confirmed' even if a retry probe succeeds.

Output Schema

NameRequiredDescription
errorNo
reasonNo
statusNo
dossierNo
receiptYes
verdictYes

TDQS

A4.8/5.0
Behavior5/5

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

With annotations already covering the safety profile (destructiveHint=false, idempotentHint=true), the description still adds non-obvious behavior: the first 5 calls/IP are free, failed target connections do not throw tool errors, status_code>=500 forcibly overrides the verdict to 'sla_breach_confirmed', and omitting tx_hash yields a probe-bound rather than payment-bound receipt. These are exactly the rate-limit, error-semantics, and side-effect details annotations cannot express, and nothing contradicts them.

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?

Three dense sentences with the core purpose front-loaded, then behavioral rules, then sibling routing, then an example. Every clause carries information, though the middle sentence is heavily packed and could be split for readability.

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 so return values need not be explained, and the description still covers the gaps an agent needs: the post-payment precondition, the free-call quota, non-throwing failure behavior, and the two receipt modes. Complete for a 3-parameter, open-world audit 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?

Schema coverage is 100%, so the baseline is 3, but the description adds decision-relevant semantics beyond the schema: what passing tx_hash cryptographically binds (Base/Solana payment signature) and that omitting it still verifies liveness, plus the verdict-forcing effect of status_code. It reinforces rather than merely restates the field docs.

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?

Names a specific verb+resource (audit a paid x402/A2A provider post-payment) plus the concrete outcome (confirm delivery or mint an HMAC-SHA256 signed SLA-breach receipt). It is unmistakably distinct from assay_preflight, assay_probe, and assay_get_ledger_policy, which are named explicitly.

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?

Gives an explicit when-to-use gate ('Use only after paying a provider') and routes the agent to each alternative by condition: assay_preflight before payment, assay_probe for public indexing, assay_get_ledger_policy for policy history. Nothing is left to inference.

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.

  1. 4 tool updates
    • Changedassay_get_ledger_policy2 fields changed
      • addedOutput schema / properties / error
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "type": "string"
        +}
    • Changedassay_preflight2 fields changed
      • addedOutput schema / properties / error
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "type": "string"
        +}
    • Changedassay_probe2 fields changed
      • addedOutput schema / properties / error
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "type": "string"
        +}
    • Changedassay_verify_delivery2 fields changed
      • addedOutput schema / properties / error
        Added value: +{
        +  "type": [
        +    "string",
        +    "null"
        +  ]
        +}
      • addedOutput schema / properties / status
        Added value: +{
        +  "type": "string"
        +}
  2. 4 tool updates
    • Changedassay_get_ledger_policy1 field changed
      • addedInput schema / examples
        Added value: +[
        +  {
        +    "target": "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +  }
        +]
    • Changedassay_preflight1 field changed
      • addedInput schema / examples
        Added value: +[
        +  {
        +    "target": "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +  }
        +]
    • Changedassay_probe1 field changed
      • addedInput schema / examples
        Added value: +[
        +  {
        +    "target": "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +  }
        +]
    • Changedassay_verify_delivery1 field changed
      • addedInput schema / examples
        Added value: +[
        +  {
        +    "target": "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +  }
        +]
  3. 4 tool updates
    • Changedassay_get_ledger_policy1 field changed
      • addedInput schema / properties / target / examples
        Added value: +[
        +  "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +]
    • Changedassay_preflight1 field changed
      • addedInput schema / properties / target / examples
        Added value: +[
        +  "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +]
    • Changedassay_probe1 field changed
      • addedInput schema / properties / target / examples
        Added value: +[
        +  "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +]
    • Changedassay_verify_delivery1 field changed
      • addedInput schema / properties / target / examples
        Added value: +[
        +  "https://agentdiet-72343955726.us-central1.run.app/mcp"
        +]
  4. 3 tool updates
    • Changedassay_get_ledger_policy1 field changed
      • changedInput schema / properties / expected_tools_hash / description
        Previous value: -"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. If set and the live hash differs, verdict is 'deny'."New value: +"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating."
    • Changedassay_preflight1 field changed
      • changedInput schema / properties / expected_tools_hash / description
        Previous value: -"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. If set and the live hash differs, verdict is 'deny'."New value: +"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. Omit to read or auto-pin the current live digest; pass a 64-hex digest to enforce zero-drift gating."
    • Changedassay_verify_delivery2 fields changed
      • changedInput schema / properties / status_code / description
        Previous value: -"HTTP status code returned by the paid endpoint (e.g. '200', '502', '504'). Codes >= 500 trigger verdict='sla_breach_confirmed'."New value: +"Optional HTTP status code returned by the paid endpoint (e.g. '200', '502', '504'). Codes >= 500 force verdict='sla_breach_confirmed' even if a retry probe succeeds."
      • changedInput schema / properties / tx_hash / description
        Previous value: -"On-chain payment transaction hash (0x Base USDC hash or base58 Solana signature) to bind into the signed SLA receipt."New value: +"Optional on-chain payment transaction hash (0x Base USDC hash or base58 Solana signature) to bind into the signed SLA receipt. Omit to run an unsigned post-call SLA check."
  5. 4 tool updates
    • Addedassay_get_ledger_policy
    • Changedassay_preflight1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "dossier": {
        +      "type": "object"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "receipt": {
        +      "type": "string"
        +    },
        +    "verdict": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "verdict",
        +    "receipt"
        +  ],
        +  "type": "object"
        +}
    • Changedassay_probe1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "dossier": {
        +      "type": "object"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "receipt": {
        +      "type": "string"
        +    },
        +    "verdict": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "verdict",
        +    "receipt"
        +  ],
        +  "type": "object"
        +}
    • Changedassay_verify_delivery1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "dossier": {
        +      "type": "object"
        +    },
        +    "reason": {
        +      "type": "string"
        +    },
        +    "receipt": {
        +      "type": "string"
        +    },
        +    "verdict": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "verdict",
        +    "receipt"
        +  ],
        +  "type": "object"
        +}
  6. 3 tool updates
    • Changedassay_preflight6 fields changed
      • changedInput schema / properties / expected_tools_hash / description
        Previous value: -"expected_tools_hash for assay_preflight"New value: +"Optional 64-char SHA-256 hex digest of the canonical MCP tools/list schema from mcp-lock.json. If set and the live hash differs, verdict is 'deny'."
      • addedInput schema / properties / expected_tools_hash / maxLength
        Added value: +128
      • addedInput schema / properties / expected_tools_hash / minLength
        Added value: +0
      • changedInput schema / properties / target / description
        Previous value: -"target for assay_preflight"New value: +"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."
      • addedInput schema / properties / target / maxLength
        Added value: +512
      • addedInput schema / properties / target / minLength
        Added value: +8
    • Changedassay_probe3 fields changed
      • changedInput schema / properties / target / description
        Previous value: -"target for assay_probe"New value: +"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."
      • addedInput schema / properties / target / maxLength
        Added value: +512
      • addedInput schema / properties / target / minLength
        Added value: +8
    • Changedassay_verify_delivery9 fields changed
      • changedInput schema / properties / status_code / description
        Previous value: -"status_code for assay_verify_delivery"New value: +"HTTP status code returned by the paid endpoint (e.g. '200', '502', '504'). Codes >= 500 trigger verdict='sla_breach_confirmed'."
      • addedInput schema / properties / status_code / maxLength
        Added value: +8
      • addedInput schema / properties / status_code / minLength
        Added value: +0
      • changedInput schema / properties / target / description
        Previous value: -"target for assay_verify_delivery"New value: +"Public HTTPS URL of the remote MCP server, A2A agent, or x402 endpoint to inspect (e.g. 'https://tandem.ac/mcp'). Private and loopback IPs are blocked."
      • addedInput schema / properties / target / maxLength
        Added value: +512
      • addedInput schema / properties / target / minLength
        Added value: +8
      • changedInput schema / properties / tx_hash / description
        Previous value: -"tx_hash for assay_verify_delivery"New value: +"On-chain payment transaction hash (0x Base USDC hash or base58 Solana signature) to bind into the signed SLA receipt."
      • addedInput schema / properties / tx_hash / maxLength
        Added value: +128
      • addedInput schema / properties / tx_hash / minLength
        Added value: +0
  7. 3 tool updates
    • First observedassay_preflight
    • First observedassay_probe
    • First observedassay_verify_delivery

Publisher details

Operator
Roberto Yanguas
Operator website
https://robyanguas.com/
Vendor relationship
Not applicable
Documentation
Not applicable
Trust center
Not applicable
Restrictions
Not applicable

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    MCP server for real-time Solana token risk analysis. Cross-references RugCheck.xyz, DexScreener, and GoPlus Security to generate three-layer reports: machine verdict → LLM analysis → raw on-chain evidence. Live on Solana mainnet with USDC micropayments ($0.02/audit). Give any AI agent the ability to check if a token is safe before trading.
    2
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources