Published registry snapshot. Checking the current listing…
Run through Relay · mcp / x402
Frame and convention validation
Validate this bounded frame graph and report unit, axis, handedness, rotation, and transform-direction violations.
RQM-operated service.
Version: 1.0.0 · Registry observed: 2026-08-23T20:01:22.843Z · current
- Supported Relay purchase route; check current admission before paying
- RQM-operated service
Price and connection
0.010000 USD per request, provider price. Supported Relay purchases add max(0.002 USDC, 5% of provider price). Your fresh quote supplies the exact total.
Authentication: x402 payment for purchases; discovery is free. Never paste keys into this website.
Inputs and outputs
Input contract
{
"$defs": {
"CoordinateFrame": {
"additionalProperties": false,
"properties": {
"frame_id": {
"pattern": "^[A-Za-z][A-Za-z0-9_.:-]{0,63}$",
"title": "Frame Id",
"type": "string"
},
"parent_frame_id": {
"anyOf": [
{
"pattern": "^[A-Za-z][A-Za-z0-9_.:-]{0,63}$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Parent Frame Id"
},
"translation": {
"$ref": "#/$defs/Translation"
},
"rotation": {
"discriminator": {
"mapping": {
"matrix": "#/$defs/MatrixRotation",
"quaternion": "#/$defs/QuaternionRotation"
},
"propertyName": "kind"
},
"oneOf": [
{
"$ref": "#/$defs/QuaternionRotation"
},
{
"$ref": "#/$defs/MatrixRotation"
}
],
"title": "Rotation"
},
"transform_direction": {
"enum": [
"parent_to_child",
"child_to_parent"
],
"title": "Transform Direction",
"type": "string"
},
"rotation_semantics": {
"enum": [
"active",
"passive"
],
"title": "Rotation Semantics",
"type": "string"
},
"handedness": {
"enum": [
"right",
"left"
],
"title": "Handedness",
"type": "string"
},
"axis_convention": {
"enum": [
"ENU",
"NED",
"NWU",
"FLU",
"FRD"
],
"title": "Axis Convention",
"type": "string"
}
},
"required": [
"frame_id",
"translation",
"rotation",
"transform_direction",
"rotation_semantics",
"handedness",
"axis_convention"
],
"title": "CoordinateFrame",
"type": "object"
},
"MatrixRotation": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "matrix",
"default": "matrix",
"title": "Kind",
"type": "string"
},
"values": {
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"type": "array"
},
{
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"type": "array"
},
{
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"type": "array"
}
],
"title": "Values",
"type": "array"
}
},
"required": [
"values"
],
"title": "MatrixRotation",
"type": "object"
},
"QuaternionRotation": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "quaternion",
"default": "quaternion",
"title": "Kind",
"type": "string"
},
"values": {
"maxItems": 4,
"minItems": 4,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"title": "Values",
"type": "array"
},
"order": {
"enum": [
"wxyz",
"xyzw"
],
"title": "Order",
"type": "string"
}
},
"required": [
"values",
"order"
],
"title": "QuaternionRotation",
"type": "object"
},
"Tolerances": {
"additionalProperties": false,
"properties": {
"quaternion_norm": {
"default": 0.000001,
"maximum": 0.01,
"minimum": 1e-12,
"title": "Quaternion Norm",
"type": "number"
},
"matrix_orthogonality": {
"default": 1e-8,
"maximum": 0.01,
"minimum": 1e-12,
"title": "Matrix Orthogonality",
"type": "number"
},
"matrix_determinant": {
"default": 1e-8,
"maximum": 0.01,
"minimum": 1e-12,
"title": "Matrix Determinant",
"type": "number"
}
},
"title": "Tolerances",
"type": "object"
},
"Translation": {
"additionalProperties": false,
"properties": {
"values": {
"maxItems": 3,
"minItems": 3,
"prefixItems": [
{
"type": "number"
},
{
"type": "number"
},
{
"type": "number"
}
],
"title": "Values",
"type": "array"
},
"unit": {
"enum": [
"m",
"cm",
"mm"
],
"title": "Unit",
"type": "string"
}
},
"required": [
"values",
"unit"
],
"title": "Translation",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"schema_version": {
"const": "rqm.robotics.frame-convention-validation-request.v1",
"default": "rqm.robotics.frame-convention-validation-request.v1",
"title": "Schema Version",
"type": "string"
},
"frames": {
"items": {
"$ref": "#/$defs/CoordinateFrame"
},
"maxItems": 64,
"minItems": 1,
"title": "Frames",
"type": "array"
},
"declared_length_unit": {
"enum": [
"m",
"cm",
"mm"
],
"title": "Declared Length Unit",
"type": "string"
},
"declared_transform_direction": {
"enum": [
"parent_to_child",
"child_to_parent"
],
"title": "Declared Transform Direction",
"type": "string"
},
"declared_rotation_semantics": {
"enum": [
"active",
"passive"
],
"title": "Declared Rotation Semantics",
"type": "string"
},
"declared_handedness": {
"enum": [
"right",
"left"
],
"title": "Declared Handedness",
"type": "string"
},
"declared_axis_convention": {
"enum": [
"ENU",
"NED",
"NWU",
"FLU",
"FRD"
],
"title": "Declared Axis Convention",
"type": "string"
},
"tolerances": {
"$ref": "#/$defs/Tolerances"
}
},
"required": [
"frames",
"declared_length_unit",
"declared_transform_direction",
"declared_rotation_semantics",
"declared_handedness",
"declared_axis_convention"
],
"title": "FrameConventionValidationRequest",
"type": "object"
}Output contract
{
"$defs": {
"ConventionSummary": {
"additionalProperties": false,
"properties": {
"length_unit": {
"enum": [
"m",
"cm",
"mm"
],
"title": "Length Unit",
"type": "string"
},
"transform_direction": {
"enum": [
"parent_to_child",
"child_to_parent"
],
"title": "Transform Direction",
"type": "string"
},
"rotation_semantics": {
"enum": [
"active",
"passive"
],
"title": "Rotation Semantics",
"type": "string"
},
"handedness": {
"enum": [
"right",
"left"
],
"title": "Handedness",
"type": "string"
},
"axis_convention": {
"enum": [
"ENU",
"NED",
"NWU",
"FLU",
"FRD"
],
"title": "Axis Convention",
"type": "string"
},
"frame_count": {
"maximum": 64,
"minimum": 1,
"title": "Frame Count",
"type": "integer"
},
"root_frame_ids": {
"items": {
"type": "string"
},
"maxItems": 64,
"title": "Root Frame Ids",
"type": "array"
}
},
"required": [
"length_unit",
"transform_direction",
"rotation_semantics",
"handedness",
"axis_convention",
"frame_count",
"root_frame_ids"
],
"title": "ConventionSummary",
"type": "object"
},
"EvidenceEnvelope": {
"additionalProperties": false,
"properties": {
"schema_version": {
"const": "rqm.robotics.frame-validation-evidence.v1",
"default": "rqm.robotics.frame-validation-evidence.v1",
"title": "Schema Version",
"type": "string"
},
"capability_id": {
"const": "frame-convention-validation-v1",
"default": "frame-convention-validation-v1",
"title": "Capability Id",
"type": "string"
},
"evidence_record": {
"const": "robotics-frame-validation-v0.1",
"default": "robotics-frame-validation-v0.1",
"title": "Evidence Record",
"type": "string"
},
"evidence_revision": {
"const": "1",
"default": "1",
"title": "Evidence Revision",
"type": "string"
},
"evidence_verdict": {
"const": "functional_local_validation",
"default": "functional_local_validation",
"title": "Evidence Verdict",
"type": "string"
},
"request_hash": {
"pattern": "^[0-9a-f]{64}$",
"title": "Request Hash",
"type": "string"
},
"catalog_digest": {
"pattern": "^[0-9a-f]{64}$",
"title": "Catalog Digest",
"type": "string"
},
"constraints": {
"items": {
"type": "string"
},
"maxItems": 16,
"title": "Constraints",
"type": "array"
}
},
"required": [
"request_hash",
"catalog_digest",
"constraints"
],
"title": "EvidenceEnvelope",
"type": "object"
},
"Finding": {
"additionalProperties": false,
"properties": {
"code": {
"enum": [
"DUPLICATE_FRAME_ID",
"MISSING_PARENT",
"SELF_PARENT",
"FRAME_CYCLE",
"DISCONNECTED_GRAPH",
"NONFINITE_VALUE",
"UNSUPPORTED_UNIT",
"UNSUPPORTED_CONVENTION",
"AMBIGUOUS_QUATERNION_ORDER",
"INVALID_QUATERNION_NORM",
"NON_ORTHONORMAL_ROTATION",
"IMPROPER_ROTATION",
"HANDEDNESS_MISMATCH",
"TRANSFORM_DIRECTION_MISMATCH",
"ROTATION_SEMANTICS_MISMATCH",
"UNIT_MISMATCH"
],
"title": "Code",
"type": "string"
},
"severity": {
"enum": [
"error",
"warning"
],
"title": "Severity",
"type": "string"
},
"json_paths": {
"items": {
"type": "string"
},
"maxItems": 16,
"title": "Json Paths",
"type": "array"
},
"frame_ids": {
"items": {
"type": "string"
},
"maxItems": 64,
"title": "Frame Ids",
"type": "array"
},
"measured_value": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Measured Value"
},
"applied_tolerance": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Applied Tolerance"
},
"explanation": {
"maxLength": 512,
"title": "Explanation",
"type": "string"
},
"corrective_recommendation": {
"maxLength": 512,
"title": "Corrective Recommendation",
"type": "string"
}
},
"required": [
"code",
"severity",
"json_paths",
"frame_ids",
"explanation",
"corrective_recommendation"
],
"title": "Finding",
"type": "object"
},
"InlineArtifact": {
"additionalProperties": false,
"properties": {
"artifact_id": {
"maxLength": 128,
"minLength": 1,
"title": "Artifact Id",
"type": "string"
},
"media_type": {
"const": "application/json",
"default": "application/json",
"title": "Media Type",
"type": "string"
},
"delivery": {
"const": "inline",
"default": "inline",
"title": "Delivery",
"type": "string"
},
"byte_length": {
"maximum": 131072,
"minimum": 1,
"title": "Byte Length",
"type": "integer"
},
"sha256": {
"pattern": "^[0-9a-f]{64}$",
"title": "Sha256",
"type": "string"
},
"content": {
"additionalProperties": true,
"title": "Content",
"type": "object"
}
},
"required": [
"artifact_id",
"byte_length",
"sha256",
"content"
],
"title": "InlineArtifact",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"schema_version": {
"const": "rqm.robotics.frame-convention-validation-result.v1",
"default": "rqm.robotics.frame-convention-validation-result.v1",
"title": "Schema Version",
"type": "string"
},
"verdict": {
"enum": [
"pass",
"fail",
"unsupported"
],
"title": "Verdict",
"type": "string"
},
"normalized_convention": {
"$ref": "#/$defs/ConventionSummary"
},
"findings": {
"items": {
"$ref": "#/$defs/Finding"
},
"maxItems": 256,
"title": "Findings",
"type": "array"
},
"normalization_applied": {
"items": {
"type": "string"
},
"maxItems": 64,
"title": "Normalization Applied",
"type": "array"
},
"claim_boundary": {
"maxLength": 1024,
"title": "Claim Boundary",
"type": "string"
},
"evidence": {
"$ref": "#/$defs/EvidenceEnvelope"
},
"artifact": {
"anyOf": [
{
"$ref": "#/$defs/InlineArtifact"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"verdict",
"normalized_convention",
"findings",
"normalization_applied",
"claim_boundary",
"evidence"
],
"title": "FrameConventionValidationResult",
"type": "object"
}Registry source · Buyer instructions and recovery · Public support