Skip to content
{mcpdesc}

Resolve component references in the right namespace

A component reference must identify an existing value in the namespace required by its use site, without a reference cycle. Check both the target name and the namespace. Reuse does not exempt the resolved value from validation in its containing declaration.

A Reference Object targets an existing component in the namespace its use site requires, without cycles.

Rule ID: mcpdesc.components.references
Owner: mcpdesc
Surface: Reference Object · Path: $componentRef
Kind: mcpdesc-semantic
Requirement level: must
Protocol versions: independent of the MCP protocol version
Status: internal · Enforcement: internal

Source: expected-invalid/component-reference-resolution.json · Selected: /components/schemas

{
"CycleA": {
"$componentRef": "#/components/schemas/CycleB"
},
"CycleB": {
"$componentRef": "#/components/schemas/CycleA"
}
}

document.yaml at immutable tag v0.9.0-rc.3.