io.github.SevaSk/nova-scotia-data-explorer
Official4 toolsNova Scotia Data Explorer
Query and explore Nova Scotia open datasets via the Socrata SODA API.
Query and explore Nova Scotia open datasets through the Socrata SODA API.
Captured live from the server via tools/list.
list_categories
Returns all dataset categories and popular tags available on the Nova Scotia Open Data portal. Use this first to discover valid category names before calling search_datasets with a category filter.
No parameters.
search_datasets
Search the Nova Scotia Open Data catalog (data.novascotia.ca) for datasets by keyword, category, or tag. Returns dataset names, IDs, descriptions, column names, and direct portal links. Use list_categories first to see valid category and tag names. Use the returned dataset ID with query_dataset or get_dataset_metadata for further exploration.
Parameters (5)
- querystring
Free-text search query (e.g. 'population', 'fisheries', 'road network')
- categorystring
Filter by exact category name from list_categories (e.g. 'Health and Wellness', 'Lands, Forests and Wildlife', 'Crime and Justice', 'Population and Demographics')
- tagstring
Filter by an exact tag name from list_categories (e.g. 'population', 'fisheries')
- limitinteger
Maximum number of results to return (1–50, default 10)
- offsetinteger
Offset for pagination (default 0)
get_dataset_metadata
Retrieve full schema and metadata for a Nova Scotia Open Data dataset by its 8-character identifier (e.g. '3nka-59nz'). Returns all column field names, data types, and descriptions — essential before calling query_dataset so you know the exact field names to use in $select and $where clauses.
Parameters (1)
- dataset_idstringrequired
8-character Socrata dataset identifier (e.g. '3nka-59nz')
query_dataset
Run a SoQL query against a Nova Scotia Open Data dataset. SoQL is SQL-like. Key clauses (combine with &): $select=col1,col2 — choose columns $where=field='value' — filter rows (use single quotes for strings) $where=field like '%val%' — partial match $order=field DESC — sort $limit=50 — row count (default 25, max 50000) $offset=50 — pagination $group=field — group by (use with aggregate functions) $q=search term — full-text search Aggregates: count(*), sum(col), avg(col), min(col), max(col) Examples: $where=year='2024'&$order=total DESC&$limit=10 $select=department,count(*)&$group=department&$order=count(*) DESC $where=area like '%Halifax%'&$limit=5 Always call get_dataset_metadata first to find exact field names.
Parameters (3)
- dataset_idstringrequired
8-character Socrata dataset identifier (e.g. '3nka-59nz')
- soqlstring
SoQL query string. Multiple clauses joined with '&'. String values in $where must use single quotes: field='value'. Do NOT URL-encode — pass the raw string.
- limitinteger
Max rows to return (1–1000, default 25). Ignored if $limit is in soql.
README not available yet.
Install
claude_desktop_config.json
{
"mcpServers": {
"nova-scotia-data-explorer": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://scotiasignal.ca/mcp"
]
}
}
}Desktop config is stdio-only; this bridges via mcp-remote. Native remote: Settings > Connectors.