x402 Payment Request Parser
x402 payment-request parser with a limited token list. Does not sign, approve or judge payments.
我该使用它吗
质量与安全性
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"x402-safety-kit": {
"url": "https://x402-safety-kit-production.mk-career-planning.workers.dev/mcp"
}
}
}远程端点
https://x402-safety-kit-production.mk-career-planning.workers.dev/mcpstreamable-http它能做什么
工具清单
工具(4)
🟢catalog
List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
输入模式
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}输出模式
{
"type": "object",
"properties": {
"server": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"version": {
"type": "string"
},
"stage": {
"type": "string"
}
},
"required": [
"name",
"version",
"stage"
],
"additionalProperties": {}
},
"payment": {
"type": "object",
"properties": {
"protocol": {
"type": "string"
},
"network": {
"type": "string"
},
"asset": {
"type": "string"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"protocol",
"network",
"asset",
"enabled"
],
"additionalProperties": {}
},
"daily_limits": {
"type": "object",
"properties": {},
"additionalProperties": {},
"description": "Daily limits of paid calls (calls, usd, timezone) or a misconfiguration notice."
},
"paused": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "boolean"
},
"description": "Operator pause flags (true = paused)."
},
"tools": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"price_usd": {
"type": "number",
"description": "Price per call in USD (0 = free)."
},
"description": {
"type": "string"
}
},
"required": [
"name",
"price_usd",
"description"
],
"additionalProperties": {}
},
"description": "Every tool of this server with its price."
},
"legal": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"fetch_status_values": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"type": "object",
"properties": {
"publisher": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"publisher",
"url"
],
"additionalProperties": {},
"description": "Publisher and URL of the upstream document or dataset."
},
"upstream_updated_at": {
"description": "Update time stated by the upstream, or null when it states none.",
"type": [
"string",
"null"
]
},
"retrieved_at": {
"description": "When this service retrieved the upstream data (null if unknown).",
"type": [
"string",
"null"
]
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"fetch_status": {
"type": "string",
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
}
},
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"additionalProperties": {},
"description": "Freshness receipt for one upstream source."
},
"description": "Freshness receipts for every upstream source used."
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"server",
"payment",
"daily_limits",
"paused",
"tools",
"legal",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}🟢x402_parse_payment_request(raw, transport)
Free. Decode one x402 v2 payment request (base64 PAYMENT-REQUIRED header, PaymentRequired JSON or MCP tool result) and list every accepts option with exact atomic and decimal amounts. Token addresses are compared with a limited reference list. status: parsed, ambiguous (options differ in recipient, network or amount; none is chosen), malformed or unsupported. Does not verify the merchant, authorize a transfer, assess fraud risk, or guarantee any payment. URLs in the input are never fetched.
输入模式
{
"type": "object",
"properties": {
"raw": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 90000
},
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
],
"description": "The payment request. A string: the base64 PAYMENT-REQUIRED header value (a leading 'PAYMENT-REQUIRED:' is allowed) or JSON text. An object: the PaymentRequired JSON, or for transport mcp the tool result (structuredContent, _meta x402/error or content[0].text)."
},
"transport": {
"default": "http",
"description": "Where the request came from: http (402 response) or mcp (paid tool result). Default http.",
"type": "string",
"enum": [
"http",
"mcp"
]
}
},
"required": [
"raw"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}输出模式
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"parsed",
"malformed",
"unsupported",
"ambiguous"
],
"description": "parsed = the checked x402 v2 structure had no defects (not a statement about the merchant or whether to pay). ambiguous = options differ in recipient, network or amount; none was chosen. malformed / unsupported = could not be fully read."
},
"mode": {
"type": "string",
"enum": [
"paid",
"free"
]
},
"note": {
"type": "string"
},
"checked_scope": {
"type": "object",
"properties": {
"profile": {
"type": "string"
},
"transport": {
"type": "string"
},
"registry_version": {
"type": "string"
},
"performed": {
"type": "array",
"items": {
"type": "string"
}
},
"not_performed": {
"type": "array",
"items": {}
}
},
"required": [
"profile",
"transport",
"registry_version",
"performed",
"not_performed"
],
"additionalProperties": {}
},
"decoded_from": {
"type": [
"string",
"null"
]
},
"payment_required_location": {},
"parsed": {
"anyOf": [
{
"type": "object",
"properties": {},
"additionalProperties": {}
},
{
"type": "null"
}
],
"description": "The decoded request with every accepts option (null unless status is parsed or ambiguous)."
},
"comparisons": {
"type": "array",
"items": {
"type": "object",
"properties": {
"field": {
"type": "string"
},
"outcome": {
"type": "string"
}
},
"required": [
"field",
"outcome"
],
"additionalProperties": {}
}
},
"mismatches": {
"type": "array",
"items": {
"type": "object",
"properties": {
"field": {
"type": "string"
}
},
"required": [
"field"
],
"additionalProperties": {}
}
},
"warnings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"accept_index": {
"type": [
"number",
"null"
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"accept_index",
"message"
],
"additionalProperties": {}
}
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"accept_index": {
"type": [
"number",
"null"
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"accept_index",
"message"
],
"additionalProperties": {}
}
},
"unsupported": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"accept_index": {
"type": [
"number",
"null"
]
},
"message": {
"type": "string"
}
},
"required": [
"code",
"accept_index",
"message"
],
"additionalProperties": {}
}
},
"evidence": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"input",
"request",
"registry",
"derived"
]
}
},
"required": [
"id",
"kind"
],
"additionalProperties": {}
}
},
"provenance": {
"type": "object",
"properties": {
"registry_version": {
"type": "string"
},
"registry_sources": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"note": {
"type": "string"
}
},
"required": [
"registry_version",
"registry_sources",
"note"
],
"additionalProperties": {},
"description": "Version and sources of the bundled asset table."
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"status",
"mode",
"note",
"checked_scope",
"decoded_from",
"payment_required_location",
"parsed",
"comparisons",
"mismatches",
"warnings",
"errors",
"unsupported",
"evidence",
"provenance",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}🟢x402_known_assets
Free. The limited reference list this server compares token addresses with: known assets (network, contract, symbol, decimals) with sources and check dates, known CAIP-2 networks, scheme names from the x402 specs, and payment flows. A table match is not proof that an asset or a merchant is genuine.
输入模式
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}输出模式
{
"type": "object",
"properties": {
"registry_version": {
"type": "string"
},
"assets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"network": {
"type": "string"
},
"asset": {
"type": "string"
},
"symbol": {
"type": "string"
},
"decimals": {
"type": "number"
}
},
"required": [
"network",
"asset",
"symbol",
"decimals"
],
"additionalProperties": {}
},
"description": "Known assets per CAIP-2 network."
},
"networks": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"schemes": {
"type": "array",
"items": {
"type": "string"
}
},
"payment_flows": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"provenance": {
"type": "object",
"properties": {
"registry_version": {
"type": "string"
},
"registry_sources": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"note": {
"type": "string"
}
},
"required": [
"registry_version",
"registry_sources",
"note"
],
"additionalProperties": {},
"description": "Version and sources of the bundled asset table."
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"registry_version",
"assets",
"networks",
"schemes",
"payment_flows",
"provenance",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}🟢get_receipt(receipt_id)
Re-fetch the stored result of a settled paid call by its receipt_id, for when the response was lost after payment. Free. Unknown or unsettled receipt ids return RECEIPT_NOT_FOUND. Results are kept for 90 days after settlement.
输入模式
{
"type": "object",
"properties": {
"receipt_id": {
"type": "string",
"minLength": 1,
"maxLength": 80,
"description": "The receipt_id returned with a paid result (\"rcpt_\" + 64 hex characters)."
}
},
"required": [
"receipt_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}输出模式
{
"type": "object",
"properties": {
"receipt_id": {
"type": "string",
"description": "Receipt id of the settled paid call (\"rcpt_\" + 64 hex). Use with get_receipt."
},
"tool": {
"type": "string",
"description": "Name of the paid tool that produced the result."
},
"settled_at": {
"type": [
"string",
"null"
]
},
"payment": {
"type": "object",
"properties": {
"network": {
"type": [
"string",
"null"
]
},
"transaction": {
"type": [
"string",
"null"
]
}
},
"required": [
"network",
"transaction"
],
"additionalProperties": {}
},
"result": {
"description": "The stored result, exactly as returned by the paid call."
},
"provenance": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source": {
"type": "object",
"properties": {
"publisher": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"publisher",
"url"
],
"additionalProperties": {},
"description": "Publisher and URL of the upstream document or dataset."
},
"upstream_updated_at": {
"description": "Update time stated by the upstream, or null when it states none.",
"type": [
"string",
"null"
]
},
"retrieved_at": {
"description": "When this service retrieved the upstream data (null if unknown).",
"type": [
"string",
"null"
]
},
"content_sha256": {
"type": [
"string",
"null"
]
},
"parser_version": {
"type": "string"
},
"fetch_status": {
"type": "string",
"enum": [
"found",
"empty",
"stale",
"unavailable",
"unsupported"
],
"description": "found / empty / stale / unavailable / unsupported (see catalog fetch_status_values)."
},
"processed_by": {
"type": "string"
}
},
"required": [
"source",
"upstream_updated_at",
"retrieved_at",
"content_sha256",
"parser_version",
"fetch_status",
"processed_by"
],
"additionalProperties": {},
"description": "Freshness receipt for one upstream source."
},
"description": "Freshness receipts for every upstream source used."
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"receipt_id",
"tool",
"settled_at",
"payment",
"result",
"provenance",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}社区
证据