Skip to main content
Glama

Skavio USDC Payment Verification & Proof MCP

Web fetch

web_fetch
Idempotent

Retrieve content from a public HTTPS document under robots.txt, SSRF and byte limits. Use for a source fetch; choose web_extract when only human-visible text is needed and web_monitor for content change hashes. This is a separately authenticated company Agent Tools relay; requires a valid Bearer API key, an enabled backend operation and an accepted payment mode. x402 returns a workload-specific quote and prepaid consumes shared company credits. Retry with the SAME idempotency_key and inputs to recover, not a new job. Admission is not delivery: poll skavio_agent_job_status, retrieve through skavio_agent_job_result, and verify SHA256. No anonymous execution.

Input Schema

NameRequiredDescriptionDefault
argumentsYesTool-specific structured input object. Supply the required named fields described by its JSON Schema; source bytes must respect encoded size limits. Never include wallet private keys, passwords or API tokens.
payment_modeNox402 returns a workload-specific quote; prepaid spends your existing shared company credits. No anonymous execution.x402
idempotency_keyYesStable job key; retry exactly the same inputs and payment mode with this key to recover safely.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / arguments / description
      Added value: +"Tool-specific structured input object. Supply the required named fields described by its JSON Schema; source bytes must respect encoded size limits. Never include wallet private keys, passwords or API tokens."
  2. Changed8 schema fields changed
    • removedInput schema / properties / arguments / allOf
      Removed value: -[
      -  {
      -    "if": {
      -      "required": [
      -        "url"
      -      ]
      -    },
      -    "then": {
      -      "not": {
      -        "anyOf": [
      -          {
      -            "required": [
      -              "max_results"
      -            ]
      -          }
      -        ]
      -      }
      -    }
      -  }
      -]
    • removedInput schema / properties / arguments / not
      Removed value: -{
      -  "required": [
      -    "url",
      -    "query"
      -  ]
      -}
    • removedInput schema / properties / arguments / oneOf
      Removed value: -[
      -  {
      -    "required": [
      -      "url"
      -    ]
      -  },
      -  {
      -    "required": [
      -      "query"
      -    ]
      -  }
      -]
    • removedInput schema / properties / arguments / properties / diagnose
      Removed value: -{
      -  "default": false,
      -  "description": "Optional DeepSeek interpretation, priced separately; a provider failure never loses the primary result.",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / arguments / properties / max_results
      Removed value: -{
      -  "default": 5,
      -  "description": "Search results to return in query mode.",
      -  "maximum": 10,
      -  "minimum": 1,
      -  "type": "integer"
      -}
    • removedInput schema / properties / arguments / properties / query
      Removed value: -{
      -  "description": "Google query answered by Serper; returns real source URLs, never synthesised links. Mutually exclusive with url.",
      -  "maxLength": 256,
      -  "minLength": 1,
      -  "type": "string"
      -}
    • changedInput schema / properties / arguments / properties / url / description
      Previous value: -"Public HTTPS page to process. Mutually exclusive with query."New value: +"Public HTTPS page URL. Robots, public address and bounded response checks apply."
    • addedInput schema / properties / arguments / required
      Added value: +[
      +  "url"
      +]
  3. Changed8 schema fields changed
    • addedInput schema / properties / arguments / allOf
      Added value: +[
      +  {
      +    "if": {
      +      "required": [
      +        "url"
      +      ]
      +    },
      +    "then": {
      +      "not": {
      +        "anyOf": [
      +          {
      +            "required": [
      +              "max_results"
      +            ]
      +          }
      +        ]
      +      }
      +    }
      +  }
      +]
    • addedInput schema / properties / arguments / not
      Added value: +{
      +  "required": [
      +    "url",
      +    "query"
      +  ]
      +}
    • addedInput schema / properties / arguments / oneOf
      Added value: +[
      +  {
      +    "required": [
      +      "url"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "query"
      +    ]
      +  }
      +]
    • addedInput schema / properties / arguments / properties / diagnose
      Added value: +{
      +  "default": false,
      +  "description": "Optional DeepSeek interpretation, priced separately; a provider failure never loses the primary result.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / arguments / properties / max_results
      Added value: +{
      +  "default": 5,
      +  "description": "Search results to return in query mode.",
      +  "maximum": 10,
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • addedInput schema / properties / arguments / properties / query
      Added value: +{
      +  "description": "Google query answered by Serper; returns real source URLs, never synthesised links. Mutually exclusive with url.",
      +  "maxLength": 256,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • changedInput schema / properties / arguments / properties / url / description
      Previous value: -"Public HTTPS page URL. Robots, public address and bounded response checks apply."New value: +"Public HTTPS page to process. Mutually exclusive with query."
    • removedInput schema / properties / arguments / required
      Removed value: -[
      -  "url"
      -]
  4. Changed9 schema fields changed
    • changedInput schema / properties / arguments / additionalProperties
      Previous value: -trueNew value: +false
    • addedInput schema / properties / arguments / properties
      Added value: +{
      +  "url": {
      +    "description": "Public HTTPS page URL. Robots, public address and bounded response checks apply.",
      +    "maxLength": 2048,
      +    "type": "string"
      +  }
      +}
    • addedInput schema / properties / arguments / required
      Added value: +[
      +  "url"
      +]
    • removedInput schema / properties / arguments / title
      Removed value: -"Arguments"
    • addedInput schema / properties / idempotency_key / description
      Added value: +"Stable job key; retry exactly the same inputs and payment mode with this key to recover safely."
    • addedInput schema / properties / idempotency_key / maxLength
      Added value: +128
    • addedInput schema / properties / idempotency_key / minLength
      Added value: +8
    • addedInput schema / properties / idempotency_key / pattern
      Added value: +"^[A-Za-z0-9_.:-]{8,128}$"
    • addedInput schema / properties / payment_mode / description
      Added value: +"x402 returns a workload-specific quote; prepaid spends your existing shared company credits. No anonymous execution."
  5. Added

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond annotations: describes the authenticated relay, Bearer API key requirement, enabled-backend precondition, payment modes (x402 quote vs prepaid shared credits), and that 'admission is not delivery' with polling and SHA256 verification. This is consistent with openWorldHint=true, idempotentHint=true (retry with the SAME idempotency_key), and non-readOnly behavior (it spends credits and creates a job).

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 and sibling routing, then the auth/payment and lifecycle facts. Dense and jargon-heavy ('x402', 'SSRF', 'admission is not delivery'), but nearly every sentence carries decision-relevant information; only the payment-mode sentence partly duplicates the schema.

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?

No output schema exists, and the description still covers the full lifecycle: job creation, polling via skavio_agent_job_status, retrieval via skavio_agent_job_result, and integrity verification. It stops short of describing the shape or size of the returned content, which is a minor but real gap for a fetching 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 schema already defines url, payment_mode and idempotency_key with enum and pattern. The description adds operational meaning the schema only gestures at: that x402 yields a workload-specific quote, prepaid consumes shared credits, and recovery requires reusing the same key with identical inputs rather than starting a new job.

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 and resource ('Retrieve content from a public HTTPS document') plus the constraint envelope (robots.txt, SSRF, byte limits). It then explicitly separates itself from web_extract (human-visible text) and web_monitor (change hashes), so an agent can route without opening schemas.

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?

Names both alternatives and the exact condition that selects each ('choose web_extract when only human-visible text is needed', 'web_monitor for content change hashes'). It also states the admission/retrieval path and the retry rule, leaving no inference needed.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.