Statistics Canada 2021 Profile Value
statcanprofile/profile-value
Returns one figure from Statistics Canada's 2021 population profile: the value of one characteristic (for example 1 = population 2021, 6 = population density, 7 = land area in square kilometres) for one gender group (1 total, 2 men+, 3 women+) and one statistic (1 counts, 4 rates) in one geography of one table. Choose the table (DF_PR provinces and territories down to DF_DA dissemination areas), the area code, the gender, the characteristic and the statistic. Example: DF_PR, area 2021A000011124, gender 1, characteristic 1, statistic 1 returns Canada's 2021 population, 36991981. The answer lists the matching series with its key, attributes (release date, geography level, data quality flag, non-response rates) and its observation (period 2021, value, decimals). A key that names nothing in the table, such as an area from another table, fails as a provider error; a cell the agency suppresses returns value null with a FLAG. Area codes of the main tables come from the code-list tool.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Source: Statistics Canada, 2021 population profile data, reference date 2021. Contains information licensed under the Statistics Canada Open Licence (https://www.statcan.gc.ca/en/terms-conditions/open-licence). Reproduced and distributed on an "as is" basis with the permission of Statistics Canada. Served by Eden Engine; not an official Statistics Canada product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "statcanprofile/profile-value" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "statcanprofile/profile-value" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "statcanprofile/profile-value", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "statcanprofile/profile-value", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 25, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"dataflow",
"ref_area",
"gender",
"characteristic",
"statistic"
],
"properties": {
"gender": {
"enum": [
"1",
"2",
"3"
],
"type": "string",
"description": "Gender group: 1 total, 2 men+, 3 women+."
},
"dataflow": {
"enum": [
"DF_ADA",
"DF_CD",
"DF_CMACA",
"DF_CSD",
"DF_CT",
"DF_DA",
"DF_DCSD",
"DF_DPL",
"DF_ER",
"DF_FED",
"DF_FSA",
"DF_HR",
"DF_POPCNTR",
"DF_PR"
],
"type": "string",
"description": "Geography level of the profile table: DF_PR country, provinces and territories; DF_ER economic regions; DF_HR health regions; DF_CMACA metropolitan areas and agglomerations; DF_CD divisions; DF_CSD subdivisions; DF_DCSD dissolved subdivisions (2016 boundaries); DF_FED federal electoral districts (2023 representation order); DF_FSA forward sortation areas; DF_DPL designated places; DF_POPCNTR population centres; DF_CT tracts; DF_DA dissemination areas; DF_ADA aggregate dissemination areas. The area code must belong to the chosen table."
},
"ref_area": {
"type": "string",
"pattern": "^[A-Za-z0-9_]{4,30}$",
"description": "Geography code in the chosen table, for example 2021A000011124 (Canada) or 2021A000235 (Ontario) in DF_PR. Codes of DF_PR, DF_ER, DF_HR, DF_CMACA and DF_CD are listed by the code-list tool; letters, digits and underscore only, 4 to 30 characters."
},
"statistic": {
"enum": [
"1",
"4"
],
"type": "string",
"description": "Statistic: 1 counts, 4 rates."
},
"characteristic": {
"type": "string",
"pattern": "^[0-9]{1,4}$",
"description": "Characteristic code, a whole number: 1 population 2021, 2 population 2016, 3 population percentage change 2016 to 2021, 4 total private dwellings, 5 private dwellings occupied by usual residents, 6 population density per square kilometre, 7 land area in square kilometres, 8 total age groups of the population (100% data), 9 0 to 14 years, 10 0 to 4 years, 11 5 to 9 years, 12 10 to 14 years, 13 15 to 64 years. There are 2631 characteristics in all (up to 2631); the full list is too large to return, so these leading codes are the supported starting point."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"series",
"series_count",
"truncated"
],
"properties": {
"series": {
"type": "array",
"items": {
"type": "object",
"required": [
"key",
"attributes",
"observations"
],
"properties": {
"key": {
"type": "object",
"description": "Dimension id to member code: FREQ, REF_AREA, GENDER, CHARACTERISTIC, STATISTIC.",
"additionalProperties": {
"type": "string"
}
},
"attributes": {
"type": "object",
"description": "Series attributes as Statistics Canada sends them: TOPIC, NOTE, RELEASE_DATE, GEO_LEVEL, ALT_GEO_CODE, GEO_DESC, DATA_QUALITY_FLAG, TNR_LF and TNR_SF (non-response rates), and PROV_TERR where the table has it.",
"additionalProperties": {
"type": "string"
}
},
"observations": {
"type": "array",
"items": {
"type": "object",
"required": [
"period",
"value"
],
"properties": {
"value": {
"type": [
"number",
"null"
],
"description": "The figure, or null when the agency suppresses the cell."
},
"period": {
"type": "string",
"description": "Reference period, a year such as 2021."
},
"attributes": {
"type": "object",
"description": "Observation attributes: DECIMALS (decimal places of the figure) and FLAG when the cell is suppressed or flagged.",
"additionalProperties": {
"type": "string"
}
}
},
"additionalProperties": false
},
"description": "The observation of the cell (one for a valid key)."
}
},
"additionalProperties": false
}
},
"dataflow": {
"type": [
"string",
"null"
],
"description": "The dataflow id the service answered for, for example DF_PR."
},
"prepared": {
"type": [
"string",
"null"
],
"description": "When the service prepared the message, ISO 8601 without a zone marker."
},
"truncated": {
"type": "boolean",
"description": "True when the response was cut at 50 series or 2000 observations."
},
"series_count": {
"type": "integer",
"description": "Number of series returned (one for a valid key)."
}
},
"description": "The series the key matched, converted from SDMX-ML.",
"additionalProperties": false
}