compare_dataflow_dimensions
Compare dimension structures of two dataflows to find shared dimensions, overlapping time periods, and recommended join columns for combining datasets across providers.
Instructions
Compare dimension structures across two dataflows to understand how they relate.
Use this whenever you want to combine or contrast data from two dataflows.
Returns which dimensions are shared, whether their codes overlap, time period
coverage, and recommended join columns. Works across providers too — e.g.
compare SPC population data with UNICEF child health indicators.
**When to use this tool:**
- After discovering dataflows with find_code_usage_across_dataflows(), compare
them to understand how they can be joined.
- When a user asks about combining datasets from different topics or providers.
- To check geographic, temporal, and dimensional overlap before writing queries.
Supports cross-provider comparison (e.g., SPC vs IMF) by specifying endpoint_a/b.
When endpoints are omitted, uses the current session endpoint.
Args:
dataflow_id_a: First dataflow identifier
dataflow_id_b: Second dataflow identifier
endpoint_a: Optional endpoint key for dataflow A (e.g., "SPC", "IMF", "ECB")
endpoint_b: Optional endpoint key for dataflow B
ctx: MCP context
Returns:
DataflowDimensionComparisonResult with dimension comparison, overlap stats,
and join column recommendations
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| endpoint_a | No | ||
| endpoint_b | No | ||
| dataflow_id_a | Yes | ||
| dataflow_id_b | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dataflow_a | Yes | ||
| dataflow_b | Yes | ||
| dimensions | Yes | ||
| endpoint_a | Yes | Endpoint key used for dataflow A (e.g. 'SPC') | |
| endpoint_b | Yes | Endpoint key used for dataflow B (e.g. 'IMF') | |
| next_steps | No | ||
| join_columns | No | Recommended join keys | |
| time_overlap | No | Time period overlap between the two dataflows. None when constraint time ranges are unavailable. | |
| api_calls_made | No | ||
| interpretation | No | ||
| dataflow_name_a | No | ||
| dataflow_name_b | No | ||
| discovery_level | No | dataflow_dimension_comparison | |
| shared_dimensions | No | Same dim ID, same codelist ID+agency | |
| compatible_dimensions | No | Same dim ID, different codelist |