Server Details
Lints whether a paid API's 402 response speaks the x402 protocol correctly.
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
The three tools target distinct checks: free schema linting, manifest cross-checking, and adversarial payment-bypass testing. However, lint_x402_endpoint and deep_lint_x402_endpoint are conceptually close enough that an agent may initially hesitate between them, though descriptions resolve it.
All tools follow the same predictable <operation>_x402_endpoint pattern. The operation prefixes (lint, deep_lint, conform) vary meaningfully rather than chaotically.
Three tools is well-scoped for a focused x402 endpoint validation service, with each tool representing a distinct validation tier. No obvious padding or unnecessary tools.
The surface covers basic validation, manifest consistency, and adversarial testing, but two of the three tools are not actually executable via MCP and only return an HTTP request instruction. That creates a notable dead end for agents trying to run deep or adversarial checks through the server.
Available Tools
3 toolsconform_x402_endpointAInspect
Live adversarial test: fires malformed/garbage/fake payment proofs at a target to see if any trick it into returning 200 without a real payment. Requires payment (0.05 USDC on Base, x402) -- NOT callable for free over MCP. Calling this tool returns the exact HTTP request to make instead; it does not run the check itself. See GET /conform?url=... on this same origin.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute http(s) URL of the paid endpoint to check (should return HTTP 402). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full disclosure burden and meets it: it names the fee and payment rail, states the tool does not run the check itself, and explains that the return value is the exact HTTP request to make. This prevents the most likely agent error, assuming a test result comes back. It also points to the GET /conform?url=... endpoint on the same origin.
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 purpose and the adversarial technique are front-loaded in the first clause, and each following sentence adds a distinct operational fact (cost, non-execution, alternative endpoint). It is dense with em-dashes and parentheticals but has no filler. A slightly cleaner separation of the payment terms would read better.
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?
For a one-parameter tool with no output schema and no annotations, everything an agent needs is present: what the test does, its cost and payment rail, the fact that it returns a request rather than a verdict, and where the equivalent GET endpoint lives. Nothing required to invoke it correctly is missing.
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 single parameter has 100% schema description coverage, including that it must be an absolute http(s) URL expected to return 402, so the schema already does the work. The prose adds only the example query form GET /conform?url=..., which is marginal. A baseline of 3 is correct when schema coverage is complete.
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 and resource: it fires malformed/fake payment proofs at a target URL to test whether the endpoint is tricked into returning 200 without payment. That is far more concrete than a name restatement. It does not explicitly name the siblings lint_x402_endpoint or deep_lint_x402_endpoint, though 'live' versus 'lint' implies the distinction.
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 sets essential expectations for use: the call is paid (0.05 USDC on Base via x402), it is not free over MCP, and invoking the tool returns an HTTP request to execute rather than a check result. That is strong guidance about what calling actually does. It never states when an agent should prefer this live adversarial probe over the lint siblings, leaving the choice to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deep_lint_x402_endpointAInspect
Cross-checks a target's live 402 body against its /.well-known/x402.json manifest (payTo/asset/network mismatches). Requires payment (0.01 USDC on Base, x402) -- NOT callable for free over MCP. Calling this tool returns the exact HTTP request to make instead; it does not run the check itself. See GET /deep-lint?url=... on this same origin.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute http(s) URL of the paid endpoint to check (should return HTTP 402). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With zero annotations supplied, the description carries the full behavioral burden and does it well: it discloses the paid x402 requirement, the exact price and network, that the call is not free over MCP, and — critically — that the tool is a request-generator rather than an executor. That last disclosure prevents the most likely misuse (expecting a lint result from the response).
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 core behavior and the payment caveat are front-loaded in two tight sentences with no filler. The final pointer to 'GET /deep-lint?url=... on this same origin' is slightly ambiguous about when an agent would use it, but it is one short clause, not bloat.
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?
For a one-parameter tool with no annotations and no output schema, the description covers what it checks, what it costs, and what it actually returns, which is enough to call it without surprise. It stops short of describing failure handling (e.g., what the returned request looks like if no payment is made) but that is a minor gap at this complexity.
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 `url` parameter, and the schema already says it must be an absolute http(s) URL of an endpoint returning 402. The description restates that the URL targets a 'live 402 body' but adds no new syntax, format, or constraint detail beyond the schema, so the baseline 3 applies.
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 names a specific verb and resource ('Cross-checks a target's live 402 body against its /.well-known/x402.json manifest') and even enumerates what it detects (payTo/asset/network mismatches). It does not, however, differentiate itself from its siblings lint_x402_endpoint and conform_x402_endpoint, so an agent cannot tell from the text alone why it should choose deep lint over plain lint.
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?
It gives essential call-time context: the check requires payment (0.01 USDC on Base, x402), is not free over MCP, and invoking the tool merely yields the HTTP request to make rather than the result. What is missing is any comparison to the sibling tools — no statement of when deep lint is preferred over lint_x402_endpoint or conform_x402_endpoint, and no exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lint_x402_endpointAInspect
Fetch a URL, expect an HTTP 402 response, and validate the JSON body against the x402 protocol shape (x402Version, accepts[] fields, resource/description). Free, no account. Returns a pass/fail report with concrete errors and warnings.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute http(s) URL of the paid endpoint to check (should return HTTP 402). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the outbound network fetch, the expected 402 response, the free/no-account auth profile, and that the return is a pass/fail report with errors and warnings. It omits failure-mode details such as timeouts, redirect handling, or what happens when the endpoint does not return 402.
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?
A single tight sentence that front-loads the core operation (fetch + expect 402 + validate) before the secondary facts (free, no account) and the return shape. No filler.
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?
For a one-parameter diagnostic tool with no output schema, the description covers the operation, the expected input condition, the cost/auth profile, and the shape of the result. Only minor gaps remain around network edge cases (timeouts, non-402 responses, redirects).
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% and the single 'url' parameter is fully documented as an absolute http(s) URL that should return HTTP 402. The description restates that intent ('Fetch a URL, expect an HTTP 402 response') but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
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?
States a specific verb and resource: fetch a URL, expect HTTP 402, validate the JSON body against the x402 protocol shape, naming concrete fields (x402Version, accepts[], resource/description). An agent knows exactly what the tool produces without opening the schema.
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?
Gives clear invocation context — 'Free, no account' tells the agent there is no auth prerequisite or cost barrier, and the described flow implies the use case is checking a paid x402 endpoint. No alternatives or exclusions are named, but there are no sibling tools to differentiate from.
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.
2 tool updates
- Added
conform_x402_endpoint - Added
deep_lint_x402_endpoint
1 tool update
- First observed
lint_x402_endpoint
Related MCP Connectors
Free x402 endpoint linter: unpaid 402 challenge, payTo/asset/amount, CORS, directory readiness.
Diagnose x402 seller endpoints: what is wrong with your 402 challenge, and how to fix it.
Audits any URL for HTTP 402 x402 V2 compliance, PAYMENT-REQUIRED headers, Bazaar schema, and MCP.
Test any x402 paid URL without paying: 402, PAYMENT-REQUIRED, USDC, amounts, payTo, EIP-712, CORS.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables linting the unpaid path of an x402 endpoint by fetching a paid URL or inspecting a payment-required challenge you already hold, returning a verdict with severity-tagged findings, fixes, and a list of what went untested. Checks challenge fields, transport behavior, and discovery documents without ever signing or paying.1 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables agents and IDE assistants to validate x402 payment endpoints without shelling out: it fetches a URL unpaid and returns a conformance report on the returned 402 challenge, decodes and classifies base64 payment blobs, and summarises which scheme/network pairs a facilitator can settle.40 PyPIMIT
- AlicenseNot gradedqualityDmaintenanceCalls an x402-paid HTTP API and automatically handles payment when a 402 Payment Required response is received.344 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables HTTP 402 payment protocol interactions on Stellar, allowing payment intent probing, guarded paid fetches, and budget status queries.15 npmApache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.