Japan Finance Reference Checks
Which JPY rate did Japan Customs publish for a date? Is a firm on an FSA list? Hosted. No advice.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"jp-finance": {
"url": "https://jp-finance-production.mk-career-planning.workers.dev/mcp"
}
}
}Remote endpoints
https://jp-finance-production.mk-career-planning.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
π’catalog
List the tools of this server with prices, data sources, licensing, daily limits and data freshness.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output 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": {}
}π’jp_customs_fx(currency, date)
Which JPY rate did Japan Customs publish for this currency on this date? Input: ISO 4217 code and YYYY-MM-DD date. Returns status (valid/invalid/unknown), the inclusive effective period, the JPY rate as published with its base units (1 or 100), source URLs, retrieval and verification times and SHA-256 hashes. Dates from 2021-08-15. Unpublished periods and unlisted currencies return unknown. Reference for customs and bookkeeping only; not a market or remittance rate; no tax calculation.
Input Schema
{
"type": "object",
"properties": {
"currency": {
"type": "string",
"maxLength": 16,
"description": "Uppercase ISO 4217 alpha-3 code, e.g. USD"
},
"date": {
"type": "string",
"maxLength": 40,
"description": "Calendar date YYYY-MM-DD (Japan), e.g. 2026-10-07"
}
},
"required": [
"currency",
"date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"valid",
"invalid",
"unknown"
],
"description": "valid = published rate found; invalid = malformed input; unknown = could not be confirmed from the checked sources."
},
"reason": {
"type": "string",
"enum": [
"matched",
"invalid_input",
"invalid_currency",
"invalid_date",
"outside_supported_range",
"period_not_published",
"currency_not_listed",
"coverage_gap",
"source_unavailable",
"source_conflict",
"parse_error",
"freshness_expired",
"currency_reference_unavailable"
]
},
"query": {},
"effective_period": {
"anyOf": [
{
"type": "object",
"properties": {
"start": {
"type": "string"
},
"end": {
"type": "string"
}
},
"required": [
"start",
"end"
],
"additionalProperties": {}
},
{
"type": "null"
}
],
"description": "Inclusive effective period of the rate (YYYY-MM-DD)."
},
"rate": {
"anyOf": [
{
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "JPY value as published (decimal string)."
},
"base_units": {
"type": "number",
"description": "1 or 100 units of the currency."
},
"quote_currency": {
"type": "string"
}
},
"required": [
"value",
"base_units",
"quote_currency"
],
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"sources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"rate",
"index"
]
},
"url": {
"type": "string"
},
"sha256": {
"type": [
"string",
"null"
]
}
},
"required": [
"role",
"url",
"sha256"
],
"additionalProperties": {}
}
},
"dataset_version": {
"type": [
"string",
"null"
]
},
"answered_at": {
"type": "string"
},
"notice": {
"type": "string"
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"status",
"reason",
"query",
"effective_period",
"rate",
"sources",
"dataset_version",
"answered_at",
"notice",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}π’jp_fsa_registry_lookup(name, number, domain)
Is this business (name, registration or 13-digit corporate number) on a Japan FSA register or warning list? Exact match (optional domain) against: registered financial instruments, crypto-asset exchange, electronic payment instruments, funds transfer and money lending businesses, and FSA warnings to unregistered businesses. Returns matches, unconfirmed name candidates, domain links only when a list states them, and which lists were checked as of when. Absence does not mean safe; no advice.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Business name as written, e.g. ζ ͺεΌδΌη€ΎSBIθ¨ΌεΈ or Bybit Fintech Limited",
"type": "string",
"maxLength": 200
},
"number": {
"description": "Registration number (e.g. ι’ζ±θ²‘εε±ι·(ιε)第44ε·) or 13-digit corporate number",
"type": "string",
"maxLength": 80
},
"domain": {
"description": "Optional domain or URL, e.g. example.com",
"type": "string",
"maxLength": 300
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
},
"number": {
"type": [
"string",
"null"
]
},
"domain": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"number",
"domain"
],
"additionalProperties": {}
},
"interpreted": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"registry_exact_matches": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"description": "Exact matches in FSA registers of licensed businesses."
},
"warning_exact_matches": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
},
"description": "Exact matches in FSA warnings to unregistered businesses."
},
"name_candidates": {
"type": "object",
"properties": {
"total_found": {
"type": "number"
},
"truncated": {
"type": "boolean"
},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"list_id": {
"type": "string"
}
},
"required": [
"list_id"
],
"additionalProperties": {}
}
}
},
"required": [
"total_found",
"truncated",
"items"
],
"additionalProperties": {},
"description": "Partial name matches, NOT confirmed to be the same entity."
},
"domain_association": {},
"sources_checked": {
"type": "array",
"items": {
"type": "object",
"properties": {
"list_id": {
"type": "string"
}
},
"required": [
"list_id"
],
"additionalProperties": {}
}
},
"coverage_complete": {
"type": "boolean",
"description": "True only when every FSA list was loaded and recently verified."
},
"source_errors": {
"type": "array",
"items": {
"type": "object",
"properties": {},
"additionalProperties": {}
}
},
"not_covered": {
"type": "array",
"items": {
"type": "string"
}
},
"note": {
"type": "string"
},
"answered_at": {
"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": [
"query",
"interpreted",
"registry_exact_matches",
"warning_exact_matches",
"name_candidates",
"domain_association",
"sources_checked",
"coverage_complete",
"source_errors",
"not_covered",
"note",
"answered_at",
"provenance",
"terms"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {}
}π’fsa_register_changes(since, list, change_type, limit)
Which entries were added to, dropped from, changed in or returned to Japan FSA registers and warning lists since a date? From this service's own record of list versions (the FSA publishes only current lists). Each change has the list, registration number, name as published (personal names withheld), before/after fields, observed_at and the list as-of date. Reasons are not published or inferred. History starts at tracking_since; free window: last 30 days.
Input Schema
{
"type": "object",
"properties": {
"since": {
"type": "string",
"maxLength": 40,
"description": "ISO 8601 date or date-time with time zone, e.g. 2026-10-01 or 2026-10-01T00:00:00Z"
},
"list": {
"description": "Optional: one list id (fib, cae, epi, fts, ml, w_fib_dom, w_fib_ovs, w_fib_qii, w_cae_dom, w_cae_ovs) or registers / warnings; default all lists",
"type": "string",
"maxLength": 20
},
"change_type": {
"description": "Optional filter: added, no_longer_listed, details_changed or relisted",
"type": "string",
"enum": [
"added",
"no_longer_listed",
"details_changed",
"relisted"
]
},
"limit": {
"description": "Maximum number of changes, 1-500 (default 100)",
"type": "integer",
"minimum": 1,
"maximum": 500
}
},
"required": [
"since"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"official_check": {
"type": "object",
"properties": {
"message": {
"type": "string"
},
"urls": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"message",
"urls"
],
"additionalProperties": {}
},
"query": {
"type": "object",
"properties": {
"since": {
"type": "string"
},
"list": {
"type": [
"string",
"null"
]
},
"change_type": {
"type": [
"string",
"null"
]
},
"limit": {
"type": "number"
}
},
"required": [
"since",
"list",
"change_type",
"limit"
],
"additionalProperties": {}
},
"tracking_since": {
"description": "Latest start of continuous change recording among the lists asked about. Nothing before it was compared.",
"type": [
"string",
"null"
]
},
"checked_until": {
"description": "Oldest last verification among the lists asked about: changes are recorded up to this time. Use it as the next since.",
"type": [
"string",
"null"
]
},
"history_window": {
"type": "object",
"properties": {
"free_days": {
"type": "number",
"description": "Days of recorded history served free of charge."
},
"requested_since": {
"type": "string",
"description": "The since you asked for (normalized to ISO 8601)."
},
"served_since": {
"type": "string",
"description": "The since actually applied: requested_since, or the start of the free window if requested_since was earlier."
},
"clamped": {
"type": "boolean",
"description": "true when requested_since was earlier than the free window and the answer covers only the window."
},
"older_history": {
"type": "string",
"description": "Status of recorded history older than the free window."
}
},
"required": [
"free_days",
"requested_since",
"served_since",
"clamped",
"older_history"
],
"additionalProperties": {},
"description": "Free history window applied to this answer."
},
"coverage": {
"type": "object",
"properties": {
"since_before_tracking": {
"type": "boolean"
},
"list_fresh": {
"type": "boolean"
},
"list_status": {
"type": "string",
"enum": [
"fresh",
"stale",
"not_loaded"
]
},
"note": {
"type": "string"
}
},
"required": [
"since_before_tracking",
"list_fresh",
"list_status",
"note"
],
"additionalProperties": {}
},
"lists": {
"type": "array",
"items": {
"type": "object",
"properties": {
"list_id": {
"type": "string"
},
"tracking_since": {
"type": [
"string",
"null"
]
},
"checked_until": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string",
"enum": [
"fresh",
"stale",
"not_loaded"
]
}
},
"required": [
"list_id",
"tracking_since",
"checked_until",
"status"
],
"additionalProperties": {}
}
},
"versions_observed": {
"type": "array",
"items": {
"type": "object",
"properties": {
"list_id": {
"type": "string"
},
"observed_at": {
"type": "string"
},
"baseline": {
"type": "boolean"
}
},
"required": [
"list_id",
"observed_at",
"baseline"
],
"additionalProperties": {}
}
},
"changes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"observed_at": {
"type": "string"
},
"list_id": {
"type": "string"
},
"change_type": {
"type": "string",
"enum": [
"added",
"no_longer_listed",
"details_changed",
"relisted"
]
},
"registration_number": {
"type": [
"string",
"null"
]
},
"entity_name": {
"type": [
"string",
"null"
]
},
"name_withheld": {
"type": "boolean"
},
"changed_fields": {
"type": "array",
"items": {
"type": "string"
}
},
"before": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
}
},
"required": [
"name"
],
"additionalProperties": {}
},
{
"type": "null"
}
],
"description": "Compared fields as published (name null when withheld)."
},
"after": {
"anyOf": [
{
"type": "object",
"properties": {
"name": {
"type": [
"string",
"null"
]
}
},
"required": [
"name"
],
"additionalProperties": {}
},
{
"type": "null"
}
],
"description": "Compared fields as published (name null when withheld)."
},
"last_seen_at": {
"type": [
"string",
"null"
]
},
"list_version": {
"type": "object",
"properties": {
"as_of": {
"type": [
"string",
"null"
]
},
"as_of_label_ja": {
"type": [
"string",
"null"
]
}
},
"required": [
"as_of",
"as_of_label_ja"
],
"additionalProperties": {}
},
"statement": {
"type": "string"
}
},
"required": [
"observed_at",
"list_id",
"change_type",
"registration_number",
"entity_name",
"name_withheld",
"changed_fields",
"before",
"after",
"last_seen_at",
"list_version",
"statement"
],
"additionalProperties": {}
},
"description": "Changes observed by this service between list versions, oldest first. Reasons are not published or inferred."
},
"truncated": {
"type": "boolean"
},
"legal_notice": {
"type": "string"
},
"history_note": {
"type": "string"
},
"name_note": {
"type": "string"
},
"answered_at": {
"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": [
"official_check",
"query",
"tracking_since",
"checked_until",
"history_window",
"coverage",
"lists",
"versions_observed",
"changes",
"truncated",
"legal_notice",
"history_note",
"name_note",
"answered_at",
"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.
Input Schema
{
"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#"
}Output 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": {}
}π’jp_customs_fx_batch(items)
Which JPY rates did Japan Customs publish for these 1-50 currency/date pairs? One call returns ordered per-item status, effective periods, JPY rates as published with base units (1 or 100), source URLs, retrieval and verification times and hashes, read from one dataset snapshot. Dates from 2021-08-15. Unpublished periods and unlisted currencies return unknown. Not charged if no item can be answered. No date selection, tax calculation, market or remittance rates, or forecasts.
Input Schema
{
"type": "object",
"properties": {
"items": {
"minItems": 1,
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"currency": {
"description": "Uppercase ISO 4217 alpha-3 code, e.g. USD (current or historic codes; not auto-corrected)",
"type": "string",
"maxLength": 16
},
"date": {
"description": "Calendar date YYYY-MM-DD, interpreted in Japan",
"type": "string",
"maxLength": 40
}
},
"additionalProperties": {}
},
"description": "1 to 50 items {currency, date}; order kept, duplicates answered twice"
}
},
"required": [
"items"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": {},
"description": "Either the paid result (with receipt_id) or, with isError true, the x402 PaymentRequired to pay and retry.",
"anyOf": [
{
"type": "object",
"properties": {
"receipt_id": {
"type": "string",
"description": "Receipt id of the settled paid call (\"rcpt_\" + 64 hex). Use with get_receipt."
},
"status": {
"type": "string",
"enum": [
"valid",
"invalid",
"unknown"
],
"description": "Overall: invalid if any item is invalid, else unknown if any is unknown, else valid."
},
"reason": {
"type": "string",
"const": "completed"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"valid",
"invalid",
"unknown"
],
"description": "valid = published rate found; invalid = malformed input; unknown = could not be confirmed from the checked sources."
},
"reason": {
"type": "string",
"enum": [
"matched",
"invalid_input",
"invalid_currency",
"invalid_date",
"outside_supported_range",
"period_not_published",
"currency_not_listed",
"coverage_gap",
"source_unavailable",
"source_conflict",
"parse_error",
"freshness_expired",
"currency_reference_unavailable"
]
},
"query": {},
"effective_period": {
"anyOf": [
{
"type": "object",
"properties": {
"start": {
"type": "string"
},
"end": {
"type": "string"
}
},
"required": [
"start",
"end"
],
"additionalProperties": {}
},
{
"type": "null"
}
],
"description": "Inclusive effective period of the rate (YYYY-MM-DD)."
},
"rate": {
"anyOf": [
{
"type": "object",
"properties": {
"value": {
"type": "string",
"description": "JPY value as published (decimal string)."
},
"base_units": {
"type": "number",
"description": "1 or 100 units of the currency."
},
"quote_currency": {
"type": "string"
}
},
"required": [
"value",
"base_units",
"quote_currency"
],
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"sources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"enum": [
"rate",
"index"
]
},
"url": {
"type": "string"
},
"sha256": {
"type": [
"string",
"null"
]
}
},
"required": [
"role",
"url",
"sha256"
],
"additionalProperties": {}
}
},
"dataset_version": {
"type": [
"string",
"null"
]
},
"answered_at": {
"type": "string"
}
},
"required": [
"status",
"reason",
"query",
"effective_period",
"rate",
"sources",
"dataset_version",
"answered_at"
],
"additionalProperties": {}
},
"description": "One result per item, in input order."
},
"dataset_version": {
"type": [
"string",
"null"
]
},
"answered_at": {
"type": "string"
},
"billable_items": {
"type": "number"
},
"notice": {
"type": "string"
},
"billable_reasons": {
"type": "array",
"items": {
"type": "string"
}
},
"terms": {
"type": "string",
"description": "URL of the terms of service."
}
},
"required": [
"receipt_id",
"status",
"reason",
"results",
"dataset_version",
"answered_at",
"billable_items",
"notice",
"billable_reasons",
"terms"
],
"additionalProperties": {}
},
{
"type": "object",
"properties": {
"x402Version": {
"type": "number"
},
"error": {
"type": "string"
},
"resource": {
"type": "object",
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
],
"additionalProperties": {}
},
"accepts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"scheme": {
"type": "string"
},
"network": {
"type": "string"
}
},
"required": [
"scheme",
"network"
],
"additionalProperties": {}
},
"description": "Payment options (x402 v2 PaymentRequirements)."
}
},
"required": [
"x402Version",
"accepts"
],
"additionalProperties": {},
"description": "x402 PaymentRequired (returned with isError true when payment is required or was not accepted)."
}
]
}Community
Evidence