Capabilities
Fx Convert
Convert using same-date ECB reference legs; excludes fees and spreads. Financial reference/information data only. Not personalised financial advice, not an execution venue, and not a guarantee of a tradable price.
How this capability is exposed
- Stable ID
ursy.finance:fx-convert- Owning service
- URSY.finance
- Runtime
- See the source declaration
Capability declarations describe what the service exposes. They are not a guarantee of availability or permission to execute an operation.
Accepted contract
{
"id": "ursy.finance:fx-convert",
"mcp_tool": "convert_currency",
"description": "Convert using same-date ECB reference legs; excludes fees and spreads. Financial reference/information data only. Not personalised financial advice, not an execution venue, and not a guarantee of a tradable price.",
"routes": [
{
"operation_id": "convertCurrency",
"method": "POST",
"url": "https://ursy.finance/wp-json/ursy-finance/v2/fx/convert",
"rate_limit": {
"bucket": "calculations",
"requests_per_minute": 30
},
"mcp_rate_limit": {
"bucket": "mcp",
"requests_per_minute": 60
}
}
],
"input_schema": {
"type": "object",
"properties": {
"from": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"minLength": 3,
"maxLength": 3
},
"to": {
"type": "string",
"pattern": "^[A-Za-z]{3}$",
"minLength": 3,
"maxLength": 3
},
"amount": {
"type": "number",
"minimum": 0,
"maximum": 1000000000000
}
},
"required": [
"from",
"to",
"amount"
],
"additionalProperties": false
},
"output_schema": {
"type": "object",
"properties": {
"schema": {
"const": "ursy.finance/fx-conversion/v2"
},
"base": {
"type": "string"
},
"quote": {
"type": "string"
},
"input_amount": {
"type": "number"
},
"output_amount": {
"type": "number"
},
"reference_rate": {
"type": "number"
},
"inverse_rate": {
"type": "number"
},
"observation": {
"type": "object",
"properties": {
"schema": {
"const": "ursy.finance/observation/v2"
},
"instrument": {
"type": "object",
"properties": {
"schema": {
"const": "ursy.finance/instrument/v2"
},
"id": {
"type": "string"
},
"symbol": {
"type": [
"string",
"null"
]
},
"name": {
"type": [
"string",
"null"
]
},
"asset_class": {
"type": "string"
},
"country": {
"type": [
"string",
"null"
]
},
"currency": {
"type": [
"string",
"null"
]
},
"venue": {
"type": [
"string",
"null"
]
},
"publisher": {
"type": [
"string",
"null"
]
},
"provider": {
"type": [
"string",
"null"
]
},
"series_id": {
"type": [
"string",
"null"
]
},
"unit": {
"type": [
"string",
"null"
]
},
"frequency": {
"type": [
"string",
"null"
]
},
"data_kind": {
"type": "string"
},
"source_id": {
"type": "string"
},
"canonical_url": {
"type": "string"
},
"methodology_url": {
"type": [
"string",
"null"
]
},
"source_url": {
"type": [
"string",
"null"
]
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_status": {
"type": "string"
},
"definition_history": {
"type": "object",
"properties": {
"schema": {
"const": "ursy.finance/definition-history/v2"
},
"status": {
"enum": [
"published_segments",
"specification_only",
"definition_changed_review_required",
"not_retained_in_snapshot",
"not_applicable"
]
},
"metadata_scope": {
"enum": [
"current_registry",
"accepted_snapshot",
"not_applicable"
]
},
"history_complete": {
"const": false
},
"publisher_definition": {
"type": [
"string",
"null"
]
},
"publisher_definition_sha256": {
"type": [
"string",
"null"
]
},
"evidence_url": {
"type": [
"string",
"null"
]
},
"evidence_location": {
"type": [
"string",
"null"
]
},
"date_convention": {
"type": "string"
},
"segments": {
"type": "array",
"items": {
"type": "object",
"properties": {
"effective_from": {
"type": [
"string",
"null"
]
},
"effective_to": {
"type": [
"string",
"null"
]
},
"effective_from_precision": {
"enum": [
"year",
"month",
null
]
},
"effective_to_precision": {
"enum": [
"year",
"month",
null
]
},
"effective_from_basis": {
"enum": [
"publisher",
"derived_from_adjacent_publisher_period",
"unknown"
]
},
"effective_to_basis": {
"enum": [
"publisher",
"derived_from_adjacent_publisher_period",
"unknown"
]
},
"description": {
"type": "string"
}
},
"required": [
"effective_from",
"effective_to",
"effective_from_precision",
"effective_to_precision",
"effective_from_basis",
"effective_to_basis",
"description"
]
}
}
},
"required": [
"schema",
"status",
"metadata_scope",
"history_complete",
"publisher_definition",
"publisher_definition_sha256",
"evidence_url",
"evidence_location",
"date_convention",
"segments"
]
}
},
"required": [
"schema",
"id",
"symbol",
"name",
"asset_class",
"country",
"currency",
"venue",
"publisher",
"provider",
"series_id",
"unit",
"frequency",
"data_kind",
"source_id",
"canonical_url",
"methodology_url",
"source_url",
"aliases",
"identity_status"
]
},
"value": {
"type": "number"
},
"unit": {
"type": "string"
},
"state": {
"type": "object",
"properties": {
"data_state": {
"enum": [
"live",
"delayed",
"reference",
"stale",
"historical",
"unavailable"
]
},
"market_state": {
"type": [
"string",
"null"
]
},
"freshness": {
"type": "string"
},
"stale": {
"type": "boolean"
},
"observation_age_seconds": {
"type": [
"number",
"null"
]
},
"retrieval_age_seconds": {
"type": [
"number",
"null"
]
},
"fail_closed": {
"type": "boolean"
},
"expected_cadence": {
"type": "string"
}
},
"required": [
"data_state",
"market_state",
"freshness",
"stale",
"observation_age_seconds",
"retrieval_age_seconds",
"fail_closed",
"expected_cadence"
]
},
"time": {
"type": "object",
"properties": {
"observation_at": {
"type": "string"
},
"published_at": {
"type": [
"string",
"null"
]
},
"retrieved_at": {
"type": [
"string",
"null"
]
},
"served_at": {
"type": "string"
}
},
"required": [
"observation_at",
"published_at",
"retrieved_at",
"served_at"
]
},
"source": {
"type": "object",
"properties": {
"source_id": {
"type": "string"
},
"publisher": {
"type": [
"string",
"null"
]
},
"provider": {
"type": [
"string",
"null"
]
},
"dataset": {
"type": "string"
},
"adapter": {
"type": "string"
},
"adapter_version": {
"type": "string"
},
"licence": {
"type": [
"string",
"null"
]
},
"licence_url": {
"type": [
"string",
"null"
]
},
"terms_url": {
"type": [
"string",
"null"
]
},
"url": {
"type": [
"string",
"null"
]
},
"methodology_url": {
"type": [
"string",
"null"
]
},
"attribution": {
"type": "string"
},
"redistribution_rights": {
"type": "string"
},
"api_allowed": {
"type": "boolean"
},
"history_allowed": {
"type": "boolean"
},
"bulk_download_allowed": {
"type": "boolean"
},
"human_display_allowed": {
"type": [
"boolean",
"null"
]
},
"attribution_required": {
"type": "boolean"
},
"last_reviewed": {
"type": "string"
},
"rights_scope": {
"type": "string"
},
"refresh_cadence": {
"type": "string"
},
"freshness_rules": {
"type": "object"
},
"live_definition": {
"type": "string"
}
},
"required": [
"source_id",
"publisher",
"provider",
"dataset",
"adapter",
"adapter_version",
"licence",
"licence_url",
"terms_url",
"url",
"methodology_url",
"attribution",
"redistribution_rights",
"api_allowed",
"history_allowed",
"bulk_download_allowed",
"human_display_allowed",
"attribution_required",
"last_reviewed",
"rights_scope",
"refresh_cadence",
"freshness_rules",
"live_definition"
]
},
"calculation": {
"type": "object",
"properties": {
"derived": {
"type": "boolean"
},
"method": {
"type": "string"
},
"formula": {
"type": [
"string",
"null"
]
},
"input_observations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_id": {
"type": "string"
},
"series": {
"type": "string"
},
"observation_date": {
"type": "string"
},
"value": {
"type": "number"
}
},
"required": [
"source_id",
"series",
"observation_date",
"value"
]
}
}
},
"required": [
"derived",
"method",
"formula",
"input_observations"
]
},
"quality": {
"type": "object",
"additionalProperties": {
"type": "boolean"
}
},
"integrity": {
"type": "object"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
},
"snapshot": {
"type": [
"object",
"null"
]
},
"value_decimal": {
"type": [
"string",
"null"
]
},
"warning_codes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"schema",
"instrument",
"value",
"unit",
"state",
"time",
"source",
"calculation",
"quality",
"integrity",
"warnings"
]
},
"fees_excluded": {
"const": true
},
"calculation": {
"type": "object"
},
"warnings": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"schema",
"base",
"quote",
"input_amount",
"output_amount",
"reference_rate",
"inverse_rate",
"observation",
"fees_excluded",
"calculation",
"warnings"
]
},
"data_class": "reference",
"auth": "none",
"read_only": true,
"risk": "read_only_reference_information",
"service_id": "ursy-finance",
"parent_id": "",
"name": "Fx Convert",
"summary": "Convert using same-date ECB reference legs; excludes fees and spreads. Financial reference/information data only. Not personalised financial advice, not an execution venue, and not a guarantee of a tradable price.",
"source_url": "https://ursy.finance/.well-known/ursy-capabilities.json",
"source_type": "capability_manifest",
"verified_at": "2026-09-26 06:31:27",
"revision": "127e4e9e761b41299b1c96ededde16f2da3d6c1908bcc3bb419951eb326f18d9",
"type": "capabilities",
"source": {
"url": "https://ursy.finance/.well-known/ursy-capabilities.json",
"type": "capability_manifest"
},
"last_verified_at": "2026-09-26 06:31:27",
"stale": true
}