Skip to main content

get_schema

Get complete metadata about all available entities, measures, and dimensions in the semantic layer.


Description​

Returns the full metadata for the entire semantic layer, including all entities, their measures, dimensions, and relationships. This is the most comprehensive schema exploration tool.

When to Use

Use get_schema when you need the complete picture of all available data. For exploring a single entity, use describe_entity instead.


Input Schema​

{
"type": "object",
"properties": {},
"required": []
}

This tool requires no input parameters.


Output​

Returns the complete metadata object:

FieldTypeDescription
cubesarrayAll entity definitions
cubes[].namestringEntity name
cubes[].titlestringDisplay title
cubes[].measuresarrayAll measures with types and descriptions
cubes[].dimensionsarrayAll dimensions with types and descriptions
cubes[].segmentsarrayPre-defined filter segments
cubes[].joinsarrayRelationships to other entities

Example​

Request​

"Get the full schema of the semantic layer"

Response (Abbreviated)​

{
"cubes": [
{
"name": "Studies",
"title": "Studies",
"measures": [
{ "name": "Studies.count", "type": "count", "title": "Count" },
{ "name": "Studies.activeCount", "type": "count", "title": "Active Studies" }
],
"dimensions": [
{ "name": "Studies.studyId", "type": "string", "title": "Study ID" },
{ "name": "Studies.studyName", "type": "string", "title": "Study Name" },
{ "name": "Studies.phase", "type": "string", "title": "Phase" },
{ "name": "Studies.status", "type": "string", "title": "Status" },
{ "name": "Studies.startDate", "type": "time", "title": "Start Date" }
]
},
{
"name": "Subjects",
"title": "Subjects",
"measures": [
{ "name": "Subjects.count", "type": "count", "title": "Count" },
{ "name": "Subjects.enrolledCount", "type": "count", "title": "Enrolled Count" }
],
"dimensions": [
{ "name": "Subjects.subjectId", "type": "string", "title": "Subject ID" },
{ "name": "Subjects.status", "type": "string", "title": "Status" },
{ "name": "Subjects.enrollmentDate", "type": "time", "title": "Enrollment Date" }
]
},
{
"name": "AdverseEvents",
"title": "Adverse Events",
"measures": [
{ "name": "AdverseEvents.count", "type": "count", "title": "Count" },
{ "name": "AdverseEvents.seriousCount", "type": "count", "title": "Serious Count" }
],
"dimensions": [
{ "name": "AdverseEvents.aeTerm", "type": "string", "title": "AE Term" },
{ "name": "AdverseEvents.severity", "type": "string", "title": "Severity" },
{ "name": "AdverseEvents.onsetDate", "type": "time", "title": "Onset Date" }
]
}
]
}

Use Cases​

  • Complete schema exploration: Get the full picture of available data
  • AI context loading: Load semantic layer context for complex queries
  • Documentation generation: Generate comprehensive data dictionaries
  • Query validation: Verify measure/dimension names before querying

Natural Language Examples​

You AskAI Uses
"Show me everything in the semantic layer"get_schema
"What data is available for analysis?"get_schema
"Give me the complete schema"get_schema
"List all measures and dimensions"get_schema

Performance Note​

This tool returns a large response containing all metadata. For most use cases, AI assistants will:

  1. Call list_entities first to see available entities
  2. Call describe_entity for the specific entity needed
  3. Only use get_schema when complete context is required