Australian Institute of Health and Welfare
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_datasetsA | Fuzzy-search the curated AIHW dataset catalog. All datasets ship hand-curated in v0.1: long-term mortality (GRIM), regional mortality (MORT), cancer incidence and mortality, health expenditure, youth justice detention, and the public hospitals register. Examples: # Find a dataset that gives deaths by cause results = await search_datasets("mortality cause of death") # → [{id: 'GRIM_DEATHS', name: 'GRIM — long-term mortality', ...}] Returns: List of DatasetSummary (id, name, description, update_frequency, is_curated), ranked by relevance. |
| describe_datasetA | Describe a dataset's filterable dimensions, returnable measures, units, and source. Use this before calling get_data on a new dataset — it tells you the valid filter keys ('sex', 'year', 'state'), the valid filter values ('Females', 'Males', 'Persons'), the measure aliases ('deaths', 'crude_rate_per_100000'), and the canonical source URL. Returns: DatasetDetail with id, name, description, period_coverage, list of dimensions, list of measures (each with key, source_column, unit, description), and source_url + download_url. |
| get_dataA | Query a curated AIHW dataset and return observations. Examples: # Deaths from diabetes, all years and sexes resp = await get_data( "GRIM_DEATHS", filters={"cause_of_death": "Diabetes"}, measures="deaths", ) Returns: DataResponse with records (or csv), unit, period bounds, row_count, source URL, and CC-BY attribution. |
| latestA | Return the most recent observation(s) per measure for a dataset. For transposed time-series tables this trims to the most-recent period. For wide single-year tables (most AIHW datasets) it returns the same shape as get_data — there is only one period in those tables. Examples: # Latest year of GRIM data for All causes combined resp = await latest("GRIM_DEATHS", filters={"cause_of_death": "All causes combined"}) |
| top_nA | Return the N rows with the largest (or smallest) value of a measure. This is the most common agent workflow: "show me the top 10 X by Y". Without this tool, an agent would call get_data, receive the full table, and then sort/slice locally — wasting tokens and turns. top_n does the rank server-side and returns only the requested rows. Examples: # Top 10 causes of death in 2023 (Persons) top_n("GRIM_DEATHS", "deaths", n=10, filters={"sex": "Persons", "year": "2023"}) Returns:
DataResponse with at most |
| list_curatedA | List every curated dataset ID in this version of aihw-mcp. These are the datasets where get_data accepts plain-English filter keys and returns aliased, well-typed measure columns. Each ID is documented via describe_dataset. Returns: Sorted list of dataset IDs. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Bigred97/aihw-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server