Skip to main content
Glama
CryptoAPIs-io

CryptoAPIs x402 Pay MCP

Official

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.3.0

  • Disambiguation5/5

    The two tools are cleanly separated: x402_discover is for finding monetized endpoints, while x402_pay is for paying them. There is no overlap or ambiguity between their purposes.

    Naming Consistency5/5

    Both tool names follow a consistent x402_ + verb pattern (discover, pay). The prefix clearly ties them to the domain, and the verbs are precise and predictable.

    Tool Count4/5

    With only 2 tools, the set is on the small side, but the server's purpose is extremely focused on a single payment workflow. The count feels slightly thin but reasonable for the narrow scope.

    Completeness4/5

    The surface covers the essential flow: discover a paid resource, then pay for it. Minor gaps exist (e.g., no explicit payment status or history retrieval beyond the settlement info returned by pay), but the core lifecycle is functional.

  • Average 4.7/5 across 2 of 2 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • 0 of 1 community issues answered or closed in the last 6 months
    • 7 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior5/5

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

    With no annotations, the description carries full behavioral disclosure. It explicitly states that signing is LOCAL and non-custodial ('key never leaves this process'), explains the retry with X-PAYMENT header, details the return shape, and discloses error behavior ('errors cleanly (never mis-signs)'). It also highlights security tradeoffs (holding spending keys, env var protection, allowlist pinning). This is exemplary transparency.

    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 a dense, single paragraph but is front-loaded with the core action and then structured into relevant sections (flow, supported chains, setup, safety, security). Every sentence conveys non-obvious information, and no content is filler. It could be slightly more scannable with line breaks, but the content justifies the length.

    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?

    Given 16 parameters and no output schema, the description covers all essential context: supported blockchains, key configuration per chain, return format, error semantics, security warnings, and safety mechanisms. It even explains how to create a walletId. The lack of an output schema is mitigated by explicitly specifying 'Returns { status, paid, body, settlement? }'. This is complete for a tool of this complexity.

    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 description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining the shared env-var fallback pattern, the walletId vs address distinction, and the security rationale for params like allowedHosts and maxAmount. It references several params directly, but not all 16—though the schema descriptions already handle those. Overall it meaningfully enriches setup and intent without fully compensating for every param.

    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 a specific verb+resource+behavior: 'Fetch an HTTP resource and, if it returns 402 Payment Required, pay it automatically with x402 and return the paid response.' It clearly distinguishes from sibling x402_discover by focusing on the payment execution flow rather than discovery. The step-by-step breakdown of the 402 handling further reinforces a unique, well-defined purpose.

    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 gives clear context for when to use the tool (on any 402-paywalled resource) and provides explicit guidance on configuration, supported networks, and safety controls. It notes that Tron/UTXO/etc. are 'UPCOMING' and return a coming-soon error, which implicitly tells users not to rely on those yet. It doesn't explicitly contrast with x402_discover, but the usage context is unambiguous and actionable.

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

  • Behavior5/5

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

    With no annotations, the description carries the full burden and succeeds. It discloses that the call is 'PUBLIC: needs no API key, no wallet and spends nothing, so it is always safe to call,' and warns that `amount` is in ATOMIC units (with a conversion example). These are behavioral traits beyond what the schema/annotations convey, essential for an agent to safely invoke the tool.

    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 moderately long but each sentence earns its place: purpose, sibling differentiation, return structure, atomic-unit caveat, safety, and filtering/pagination guidance. It is front-loaded with the main purpose and flows logically. No redundancy or 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?

    Given the absence of an output schema, the description fully compensates by detailing the return shape ({ resources: [...], pagination: {...} }), explaining atomic unit conversion, and noting safety. It also covers filtering and pagination usage. For a moderately complex tool with no annotations or output schema, this description is comprehensive enough for correct selection and 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 coverage is 100%, so the baseline is 3. The description mentions 'Filter with `type` (e.g. "http") and page with `limit`/`offset`,' but this largely restates the schema descriptions and adds minimal new meaning. It does contextualize parameters in the workflow, but doesn't go beyond what the schema already provides, so it remains at baseline.

    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: 'Discover x402-gated APIs you can pay for — browse the facilitator's Bazaar catalogue of registered x402 resources.' It uses a specific verb ('Discover') and resource, and explicitly distinguishes from its sibling x402_pay by noting that the pay tool only fetches a URL you already have, making this the only way to locate a paid endpoint independently.

    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?

    It gives explicit guidance: 'Use this BEFORE x402_pay whenever you need to FIND a paid endpoint rather than call one you were already given.' It also provides follow-up direction ('Then pass a chosen `resource` URL to x402_pay') and clarifies exclusions (when you already have a URL, use pay instead). This fully covers when-to-use and alternatives.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

cryptoapis-mcp-x402-pay MCP server

Copy to your README.md:

Score Badge

cryptoapis-mcp-x402-pay MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CryptoAPIs-io/cryptoapis-mcp-x402-pay'

If you have feedback or need assistance with the MCP directory API, please join our Discord server