get_child_element
Retrieve a single child element by its identifier (UUID or token ID) from OSCAL documents, with optional parent document UUID to resolve ambiguous IDs across multiple documents.
Instructions
Retrieve a single child element by its identifier.
OSCAL uses two identifier schemes:
UUIDs (globally unique) for most elements such as tasks, activities, results, findings, POA&M items, mappings, and system-components.
Token IDs (e.g.
ac-1,sc) for catalog controls and groups — these are human-readable but only unique within their containing document.
For elements with token-based IDs, parent_doc_uuid should be
provided to disambiguate. For elements with UUIDs,
parent_doc_uuid is optional.
If parent_doc_uuid is omitted and the element_id matches
elements in more than one document, an error dict is returned with
error: "ambiguous_element_id" and a list of matching parent
document UUIDs so the caller can retry with disambiguation.
Args: ctx: MCP server context (injected automatically). element_id: The element identifier (UUID or token ID). parent_doc_uuid: Optional parent document UUID to scope the lookup using the composite key (element_id, parent_doc_uuid).
Returns: A dict with keys: id, title, element_type, description, parentDocumentTitle, parentDocumentUuid, raw_json — or None if not found. Returns an error dict if the element_id is ambiguous across documents.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| element_id | No | ||
| parent_doc_uuid | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |