Shortest join path between two tables
join_pathFinds the shortest chain of relationships between two tables. Requires workspace, source, start and end. Returns JSON with each hop and its rule, every equally short path and a T-SQL SELECT … JOIN; without a path, the missing relationship as a confirmed entry. Metadata only; changes nothing. answer_query_draft drafts a query for a whole question. 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>",
"start": "<start>",
"end": "<end>"
},
"name": "join_path"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | Table the path ends at. Example: "customers". | |
| keys | No | Primary keys replacing the inferred ones. Default: inferred. Example: {"order_items": ["order_id", "line_no"]}. | |
| start | Yes | Table the path starts at. Example: "order_items". | |
| schema | No | Schema in the source. Default "dbo". | dbo |
| source | Yes | Lakehouse, warehouse or SQL database, name or id. | |
| 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 |