Nova Scotia Data Explorer
Server Details
Search, explore, and analyze hundreds of datasets from the Nova Scotia government's datasets
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.5/5 across 4 of 4 tools scored.
Each tool has a clearly distinct purpose: metadata retrieval, category listing, querying, and searching. There is no overlap that would cause an agent to select the wrong tool.
All tool names follow a consistent verb_noun pattern (get_, list_, query_, search_) and use snake_case throughout, making the set predictable and easy to navigate.
With 4 tools, the set is well-scoped for an open data explorer. Each tool covers an essential workflow step without unnecessary bloat or thinness.
The tool set covers the full exploration lifecycle: discover datasets (search, list_categories), understand their schema (get_dataset_metadata), and retrieve data (query_dataset). No obvious gaps for read-only exploration.
Available Tools
4 toolsget_dataset_metadataGet Nova Scotia Dataset MetadataAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| dataset_id | Yes | 8-character Socrata dataset identifier (e.g. '3nka-59nz') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description discloses the primary behavior: it returns column names, data types, and descriptions. The verb 'Retrieve' signals no side effects. It doesn't mention authentication or error conditions, but for a metadata read this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the key purpose, and every clause adds value (format, return, use case). No filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description covers the identifier format, the return content, and the practical purpose. It is fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully documents dataset_id (100% coverage). The description adds an 8-character format and concrete example '3nka-59nz', enriching the parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Retrieve full schema and metadata' – a specific verb and resource – and immediately distinguishes itself from query_dataset by stating it is 'essential before calling query_dataset'. The example identifier '3nka-59nz' makes the tool's target crisp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the tool is 'essential before calling query_dataset' to learn exact field names for $select and $where clauses, giving a clear when-to-use context. It doesn't explicitly contrast with list_categories or search_datasets, but the purpose is so distinct that no exclusion is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesList Nova Scotia Open Data CategoriesAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool returns all categories and tags, which implies a read-only operation. However, it doesn't mention pagination, output format, or any limitations, but for a simple listing tool this is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: the first states the function, the second gives usage guidance. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, low-complexity tool, the description is fully complete. It states what is returned, the portal context, and how the tool fits with sibling tools. No output schema is needed because the return values are described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is nothing for the description to add. Per rubric, 0 params baseline is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Returns all dataset categories and popular tags available on the Nova Scotia Open Data portal.' This is a specific verb+resource combination that distinguishes it from sibling tools like search_datasets, which search datasets rather than categories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly instructs to 'Use this first to discover valid category names before calling search_datasets with a category filter,' naming the alternative tool and the exact context in which to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_datasetQuery a Nova Scotia Open DatasetAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| soql | No | 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. | |
| limit | No | Max rows to return (1–1000, default 25). Ignored if $limit is in soql. | |
| dataset_id | Yes | 8-character Socrata dataset identifier (e.g. '3nka-59nz') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full responsibility. It discloses key behaviors: SoQL syntax details, single-quote requirement, no URL encoding, default and maximum limits, pagination via $offset, and full-text search option. It also gives a clear prerequisite (call metadata first). This is a rich behavioral disclosure that goes beyond the minimum.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with bullets, examples, and a clear call-to-action. Every sentence provides useful information for using SoQL, and the organization makes it easy to scan. It is long but not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a full query language) and lack of output schema/annotations, the description covers the essential aspects: query clauses, aggregates, examples, limits, pagination, and the prerequisite to fetch metadata. It is sufficiently complete for an agent to invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already has 100% coverage with descriptive text for all three parameters. The description adds significant value by detailing the SoQL key clauses ($select, $where, $order, $limit, $offset, $group, $q) and aggregate functions, which is essential for constructing the 'soql' parameter. It also clarifies the distinction between the limit parameter (max 1000) and the $limit clause (max 50000), though this nuance is not fully highlighted.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Run a SoQL query against a Nova Scotia Open Data dataset,' which clearly identifies the action (run a query) and target (rows within a specific dataset). This contrasts with siblings like search_datasets (finds datasets) and get_dataset_metadata (returns metadata), making it well-differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives concrete usage guidance: it explains the query syntax, provides examples, and explicitly instructs to 'Always call get_dataset_metadata first to find exact field names.' It does not, however, explicitly mention when to use search_datasets as an alternative, so it earns a 4 rather than a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_datasetsSearch Nova Scotia Open DatasetsAInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter by an exact tag name from list_categories (e.g. 'population', 'fisheries') | |
| limit | No | Maximum number of results to return (1–50, default 10) | |
| query | No | Free-text search query (e.g. 'population', 'fisheries', 'road network') | |
| offset | No | Offset for pagination (default 0) | |
| category | No | Filter by exact category name from list_categories (e.g. 'Health and Wellness', 'Lands, Forests and Wildlife', 'Crime and Justice', 'Population and Demographics') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the return payload (dataset names, IDs, descriptions, column names, links) and the search scope. However, it does not mention potential rate limits, permission requirements, or any edge-case behaviors, leaving some ambiguity about side effects and constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place: it states the action, lists the return values, and gives workflow guidance. There is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with five parameters, no output schema, and no annotations, the description is quite complete: it covers purpose, returns, and downstream usage. It only misses explicit details about response pagination behavior or empty-result handling, but the schema documents offset/limit, and the workflow is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and every parameter has a descriptive explanation with examples. The description adds no extra parameter semantics beyond what the schema already provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool searches the Nova Scotia Open Data catalog by keyword, category, or tag. It also differentiates from siblings by explaining the workflow with list_categories and query_dataset/get_dataset_metadata.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs users to run list_categories first to get valid category/tag names, and to use the returned dataset ID with query_dataset or get_dataset_metadata for further exploration. This provides clear when-to-use guidance and a workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenanceEnables searching and querying the Nova Scotia Open Data catalog via Socrata SoQL. Provides tools to find datasets, query data, and get metadata by resource ID.9MIT
- Flicense-qualityDmaintenanceProvides access to 250,000+ Canadian government datasets and specialized querying of transportation infrastructure including bridges, airports, cycling networks, transit systems, railways, and tunnels across multiple provinces.4
- Flicense-qualityDmaintenanceProvides access to Ontario open government data through the CKAN API, enabling dataset search, organization browsing, and resource data queries.
- Alicense-qualityCmaintenanceEnables searching and querying Norfolk Open Data datasets through Socrata SoQL, including metadata retrieval.8MIT