Skip to main content
Glama

Check URL — Custom

check_url_custom
Idempotent

Your conditions, one fetch: status, substring, JSON value — signed pass/fail receipt. Default status 200. Public proof: check_url_sealed. Watch: check_url_changes. POST the tool inputs as JSON to paid_url with an x402 v2 PAYMENT-SIGNATURE header. See https://docs.cdp.coinbase.com/x402 Paid tool — $0.001, USDC on Base or Arbitrum One. Paid URL: https://aemb.pro/v1/check/ping.

Input Schema

NameRequiredDescriptionDefault
urlYesHTTPS URL to check (max 2000 chars; no credentials in URL). Fetched once; up to 3 redirects followed, 10s timeout, 1MB body cap
expect_statusNoExpected HTTP status code; truncated to an integer. Defaults to 200 when omitted
idempotency_keyYesIdempotency key: UUID v4, client-generated, one per logical request. Replaying the same key on this tool returns the original receipt — the action is not re-run, and the first request's receipt wins even if you resend different inputs. Published example keys are rejected. Keys are scoped per tool and per payer account: a key never returns another wallet's receipt.
expect_json_pathNoDot-separated path into the JSON body, e.g. 'data.price' (max 500 chars). Only evaluated when set
expect_json_equalsNoExpected value at expect_json_path; compared by canonical JSON equality. Defaults to null when omitted
expect_body_containsNoSubstring that must appear in the response body (max 5000 chars). Skipped when empty or omitted

Output Schema

NameRequiredDescriptionDefault
howYesHow to pay: POST the tool inputs as JSON to paid_url with an x402 v2 PAYMENT-SIGNATURE header
toolYesTool name, e.g. check_url_custom
assetYesSettlement asset
priceYesExact price, e.g. "$0.25"
networksYesEVM CAIP-2 network ids accepted
paid_urlYesx402-paid HTTPS URL to POST the tool inputs to
facilitatorYesx402 facilitator
payment_requiredYesAlways true: this MCP tool is a payment pointer; the tool itself is monetized via x402.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / price / description
      Previous value: -"Exact price, e.g. \"$0.05\""New value: +"Exact price, e.g. \"$0.25\""
  2. Added

TDQS

A3.6/5.0
Behavior4/5

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

Annotations give a broad safety profile (openWorld, idempotent, non-destructive), but the description adds information annotations cannot: this is a paid call ($0.001 USDC on Base or Arbitrum One), it requires an x402 v2 PAYMENT-SIGNATURE header and a JSON POST to a specific paid_url, and status defaults to 200. That payment/authorization context is material for an agent deciding whether and how to invoke it. Missing: what happens on a failing check (does the fetch still bill?) and any rate limits.

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

Conciseness3/5

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

The sentences are individually short and the payment/pricing information is front-loaded enough to be actionable, but the ordering is choppy: purpose, sibling routing, payment mechanics and pricing are interleaved with no paragraphing. Several fragments ('Default status 200.' 'Public proof: check_url_sealed.') read as telegraphic shorthand rather than structured guidance.

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?

An output schema exists, so the description need not explain the receipt's structure, and idempotency replay semantics are fully covered in the schema. For a 6-parameter, open-world, paid network tool, the description does cover cost, payment protocol, endpoint handling limits (via schema) and the three assertion modes. The only real omission is failure-mode billing and error behavior.

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%, so the schema already documents url, expect_status, idempotency_key, expect_json_path, expect_json_equals and expect_body_contains in detail. The description only restates the three condition types and the 200 default, adding no syntax, precedence, or interaction rules beyond the schema. Baseline 3 is the correct ceiling here.

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 opening clause names the resource (a URL) and the check types (status, substring, JSON value) with a concrete output shape (pass/fail receipt), which is far more specific than a bare 'check URL'. It also gestures at the two siblings (check_url_sealed, check_url_changes), though the labels 'Public proof' and 'Watch' are too terse to fully differentiate the family.

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 names alternatives ('Public proof: check_url_sealed', 'Watch: check_url_changes') but never states the conditions under which an agent should pick this one over them. The reader must infer that 'public proof' and 'watch' mean publishing and recurring monitoring respectively. 'Your conditions, one fetch' implies a one-shot custom assertion but does not say when that is preferred over the alternatives.

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.