Analyse the schema as a graph (roles, centrality, areas, ambiguity)
analyze_schemaReads the plan as a graph: each table's role (fact, dimension, bridge, isolated), the most central tables, subject areas, cycles, table pairs with more than one path, and which relationships can be active together. Requires workspace and source. Returns JSON. Metadata only, no data queries; changes nothing. Errors: {error, kind, hint}.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"workspace": "<workspace>",
"source": "<source>"
},
"name": "analyze_schema"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| keys | No | Primary keys replacing the inferred ones. Default: inferred. Example: {"order_items": ["order_id", "line_no"]}. | |
| detail | No | "auto" (default: full up to 60 tables, else summary), "full" or "summary". | auto |
| schema | No | Schema in the source. Default "dbo". | dbo |
| source | Yes | Lakehouse, warehouse or SQL database, name or id. | |
| tables | No | Table names or globs to show. Default all. Example: ["sales_*"]. | |
| confirmed | No | Relationships the user confirmed, added to the plan. Default none. Example: [{"source": "orders", "source_cols": ["ship_to_id"], "target": "addresses", "target_cols": ["address_id"]}]. | |
| workspace | Yes | Fabric workspace, name or id. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |