DataScoop public data
Server Details
Official UK, US and Australia public datasets as filtered CSV, REST API and MCP for AI agents.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 6 tools
The tools are mostly distinct: list/search datasets, get schema, query data, get area stats, and access info. get_area_statistics could be seen as a specialized query_dataset, but its description clearly scopes it to aggregate statistics for rated datasets, so the boundary is understandable.
All tool names follow a consistent verb_noun pattern (get_, list_, query_, search_), with clear verbs. Minor deviation: get_access_info is more of a meta/help tool than a data access tool, but the naming pattern is still consistent.
Six tools is well-scoped for a public-data access server: discovery (list/search), schema inspection, querying, area statistics, and access/pricing info. Each tool earns its place without overlap or bloat.
The server covers the full workflow: discover datasets, inspect schema, query rows, get aggregate stats, and understand access limits. Minor gaps: no explicit tool for downloading/exporting full data, but the next_step mechanism in query_dataset handles that, so it's a workable gap.
Available Tools
6 toolsget_access_infoGet access and pricingARead-onlyIdempotentInspect
How to get full access: the current plan of this connection, row caps, prices (free preview, one-off export, Pro subscription), the signup and pricing URLs, how to pass an API key, and the wording to use when telling a user how to get every row.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. The description adds behavioral context beyond that: it reveals the tool returns not just raw values but also instructional wording meant to be relayed to users, and that it is tied to the current connection's plan. No contradiction with annotations.
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 a single sentence with a colon-separated list; every listed item conveys a distinct piece of the expected response. It is dense but not bloated, although the opening 'How to get full access' is slightly convoluted and could have been phrased more directly as 'Returns...'.
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 parameterless read-only tool with no output schema, the description fully inventories the categories of returned information (plan, caps, prices, URLs, API key instructions, user wording). An agent knows exactly what to expect from the call, and annotations cover the safety profile, so nothing essential is missing.
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 tool has zero parameters, so the baseline is 4. The description adds value by clarifying what the no-argument call will surface, which indirectly helps the agent understand there is nothing to configure before invoking it.
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 enumerates exactly what the tool provides: current plan, row caps, prices, URLs, API key passing, and user-facing wording. This is a specific resource (access/pricing info for the connection) with a clear scope that distinguishes it from the data-focused siblings like query_dataset and search_datasets.
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 phrasing 'How to get full access' and 'wording to use when telling a user how to get every row' establishes a clear use case: retrieving access guidance and pricing details for an end-user. It doesn't explicitly name alternatives, but the domain is distinct enough from the sibling tools that an agent can infer when to select it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_area_statisticsGet area statisticsARead-onlyIdempotentInspect
Free aggregate statistics for datasets that have a rating (food hygiene ratings by local authority, Scotland FHIS by council, US restaurant inspections and building permits by city area): totals, share rated well or poorly, rank among areas, breakdown by type, and the most recently rated low performers. Omit area to list the areas available. Cite the page URL returned.
| Name | Required | Description | Default |
|---|---|---|---|
| area | No | Area name or slug, e.g. "Leeds" or "leeds". Omit to list areas. | |
| dataset | Yes | Dataset id with statistics, e.g. fsa, fhis-scotland, us-food-inspections, us-building-permits |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds meaningful behavioral context beyond annotations: it returns a page URL that should be cited, enumerates the aggregate dimensions returned, and defines the omit-area listing behavior. There is no contradiction with annotations.
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 definition is dense but efficient: it packs the dataset scope, output categories, and area-omission behavior into one sentence, then adds a concise citation instruction. The long list of dataset families is necessary context rather than 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?
Even without an output schema, the description tells an agent what it will receive: totals, share ratings, rank, breakdown by type, low performers, and a page URL to cite. It also covers the key parameter behavior (omit area to list areas). For a read-only, idempotent tool with two simple parameters, this is complete.
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 coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining that omitting area lists available areas, and by mapping dataset ids to real-world categories such as food hygiene ratings by local authority, US restaurant inspections, and building permits.
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 aggregate statistics for rating datasets and enumerates the exact output categories: totals, share rated well/poorly, rank among areas, breakdown by type, and low performers. It also calls out a distinct secondary behavior—omitting area lists available areas—which distinguishes it from raw-data query or dataset-search tools.
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 establishes a clear context for use: aggregate statistics over rating datasets, with concrete dataset families listed. It also provides a direct instruction for listing areas ('Omit area to list the areas available'). It does not explicitly contrast with siblings like query_dataset or search_datasets, so it falls short of a full when-not-to-use explanation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dataset_schemaGet dataset schemaARead-onlyIdempotentInspect
Get a dataset's columns and the exact filters it accepts (key, type, allowed options, example). Use the filter keys, not column names, when calling query_dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| dataset | Yes | Dataset id from list_datasets, e.g. fsa, cqc, charity-commission, us-food-inspections, us-building-permits, fhis-scotland |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds that the tool returns both columns and filters, which is useful but not a significant behavioral disclosure beyond what the schema hints. No contradictions.
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, no fluff. The key information (what it does, and the critical usage note about filter keys) is front-loaded and every word earns its place.
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-only tool with full schema coverage and no output schema, the description is nearly complete. It lacks an explicit mention of the output format, but the description of 'columns' and 'filters' suffices. Could be a 5, but the lack of output details is a minor gap.
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 only parameter 'dataset' is fully described in the schema with examples, so schema coverage is 100%. The description does not add any extra parameter-specific information beyond what is in the schema, but given full coverage this is adequate.
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 retrieves a dataset's columns and accepted filters, which is specific and distinct from siblings like query_dataset and list_datasets. It names the resource type (dataset) and the exact information returned.
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 to use filter keys rather than column names when calling query_dataset, providing a clear when-to-use and a corrective note for a common mistake. It also implies query_dataset is the next step after getting the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_datasetsList datasetsARead-onlyIdempotentInspect
List every dataset DataScoop carries (official public records: UK food hygiene ratings, Scotland FHIS, CQC care providers, the UK charity register, US restaurant inspections, US building permits, and more as added) with country, coverage, row count, licence, refresh date and the page URLs. Call this or search_datasets first.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | Optional ISO 3166-1 alpha-2 country code to filter by, e.g. GB or US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish that this is read-only, idempotent, and non-destructive. The description adds useful behavioral context beyond those annotations by stating that the tool returns every dataset in the catalog and specifying exactly what information is included, plus noting that the catalog grows over time.
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 front-loaded with the core action and scope, and the parenthetical list of datasets is informative rather than padding. The final sentence adds useful workflow guidance. It is slightly dense due to the long enumeration, but every part contributes.
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?
Despite having no output schema, the description clearly states the return fields and scope, and the optional filter is documented in the input schema. The tool is simple (one optional parameter, no required arguments), and the description supplies enough context for correct first-time invocation.
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 fully documents the single optional 'country' parameter with an ISO 3166-1 alpha-2 description, so schema coverage is 100%. The tool description does not add parameter-specific guidance, but it does not need to; the baseline 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 uses a specific verb and resource: 'List every dataset DataScoop carries', and enumerates the dataset categories. It also names the return fields (country, coverage, row count, licence, refresh date, page URLs), making the tool's purpose unmistakable and distinct from siblings like search_datasets.
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 clear entry-point guidance: 'Call this or search_datasets first.' This situates the tool in a workflow and names the main sibling alternative, though it does not explicitly explain when to prefer one over the other.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_datasetQuery a datasetARead-onlyIdempotentInspect
Return the rows of a dataset that match a set of filters, with the total count and the attribution to cite. Organisational data only (businesses, premises, charities, permits), never personal contact data. Without a Pro key each call returns at most 25 rows and sets truncated=true with the total; the result then includes next_step with the exact links and wording to give the user so they can get every row (one-off spreadsheet export, or a free account upgraded to Pro for unlimited API and MCP rows). Page with offset; ask for format "summary" to get counts only.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows to return (default 25, max 1000 per call; free plans are capped at 25) | |
| format | No | "rows" (default) returns the rows; "summary" returns only the total and links | |
| offset | No | Rows to skip, for paging through large results (Pro) | |
| dataset | Yes | Dataset id, e.g. fsa | |
| filters | No | Filter object keyed by the filter keys from get_dataset_schema (not column names), e.g. {"localAuthority":"Leeds","rating":"1"}. Text filters are case-insensitive; "contains" filters match substrings; enum filters must use one of the listed options. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description richly discloses behavior beyond the annotations: free-tier truncation at 25 rows, 'truncated=true', inclusion of 'next_step' with links and wording, Pro upgrade implications, paging with offset, and summary mode. This is exactly the kind of non-obvious behavioral context an agent needs.
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 core purpose is front-loaded, and each sentence earns its place: scope, data type restriction, free-tier behavior, next_step guidance, and paging/summary tips. It is dense and slightly longer than strictly necessary, but it is well organized and relevant.
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 read-only query tool with full parameter documentation and no output schema, the description covers the essential results (total count, attribution, truncated flag, next_step), free vs Pro behavior, and paging options. Nothing critical is missing for an agent to invoke it 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?
Schema coverage is 100%, with each parameter already well-described (defaults, max, filter key semantics, enum options). The description's 'page with offset' and 'format summary' guidance mostly restates the schema rather than adding new meaning, so baseline 3 is appropriate.
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?
Opens with a specific verb and resource: 'Return the rows of a dataset that match a set of filters, with the total count and the attribution to cite.' The added scoping to organisational data and exclusion of personal contact data clearly separates it from list/search sibling tools.
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?
Provides clear operational guidance: 'Page with offset; ask for format "summary" to get counts only', and gives an explicit exclusion ('never personal contact data'). However, it does not name sibling alternatives or say when to prefer query_dataset over search_datasets, so it stops short of full alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_datasetsSearch datasetsARead-onlyIdempotentInspect
Find which DataScoop dataset answers a need, by keywords such as "care homes Yorkshire", "restaurant inspections Chicago", "charities income", "food hygiene Leeds", "building permits". Returns matching datasets with their filters and an example query.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | What the user is looking for, in plain words | |
| country | No | Optional ISO country code, e.g. GB or US |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this as safe, read-only, and idempotent, so the bar for behavioral disclosure is lower. The description adds useful behavioral context by stating the return contents: matching datasets with their filters and an example query, which goes beyond the annotations.
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 with no filler: the first gives the tool's purpose and illustrative examples, and the second states the return value. Every sentence earns its place and the key action is front-loaded.
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 simple search tool with no output schema, the description covers the input style and the nature of the response. It could be slightly richer by noting that results are limited to DataScoop datasets, but the tool name and overall context make that implicit.
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%, so the schema already documents both parameters. The description adds value by showing how the query parameter should be phrased with natural-language examples, but it does not elaborate on the country parameter beyond what the schema provides.
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 states a specific verb ('Find') and resource ('which DataScoop dataset answers a need') and clarifies that it is a keyword-based search tool. It also names concrete example queries, distinguishing it from siblings like list_datasets and query_dataset.
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 strongly implies when to use it: when the user has a need expressed in natural keywords rather than knowing a specific dataset. It does not explicitly exclude alternatives like list_datasets for browsing all datasets, so it lacks an explicit when-not-to-use statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
6 tool updates
- First observed
get_access_info - First observed
get_area_statistics - First observed
get_dataset_schema - First observed
list_datasets - First observed
query_dataset - First observed
search_datasets
Related MCP Connectors
Official data with free samples, provenance, aggregations, freshness and agent-ready insights.
Normalized official data with provenance, aggregations, insights, free samples and agent access.
Normalized official data with provenance, aggregations, insights, free samples and agent access.
UK public procurement data for AI agents: tenders, contracts, buyer and supplier profiles.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceUK public procurement data for AI agents. Tenders, contracts, buyer and supplier profiles over MCP and REST. 250 free credits.MIT- AlicenseNot gradedqualityCmaintenanceA research MCP server for UK geospatial and statistical data, enabling AI assistants to query Ordnance Survey and ONS datasets.3MIT
- AlicenseNot gradedqualityBmaintenanceMachine-readable utilities and datasets for AI agents. MCP + HTTP + x402.MIT
- AlicenseAqualityBmaintenanceUK planning application data for AI agents. Search, look up, and geo-query every UK planning application from Claude, Cursor, or any MCP client — conversationally.434 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.