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