DataQuoll
REMOTE · DATAQUOLL.IO · SCANNED OCT 2
Australian public data as MCP tools: incidents, gauges, declarations, industry calendars, archive.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security97
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
- The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents. View diagnostics → Partial
Transport & Reachability0
- Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http. See how to fix → View diagnostics → Unverified
Schema Quality & AI Usability0
- Schema blocked by authentication: the endpoint requires auth we don't have to read it. See how to fix → Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Tool Safety0
- Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Capabilities0
- Capabilities blocked by authentication: the endpoint requires auth we don't have to read them. See how to fix → Unverified
Unverified: 6 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm. Claim this server and supply a read-only token to verify it and lift the score.
How do I install the DataQuoll MCP server?
DataQuoll is a hosted endpoint at https://dataquoll.io/api/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · dataquoll.io
claude mcp add --transport http io-dataquoll-data-api 'https://dataquoll.io/api/mcp'
{
"mcpServers": {
"io-dataquoll-data-api": {
"url": "https://dataquoll.io/api/mcp"
}
}
} {
"servers": {
"io-dataquoll-data-api": {
"type": "http",
"url": "https://dataquoll.io/api/mcp"
}
}
} [mcp_servers.io-dataquoll-data-api] url = "https://dataquoll.io/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"io-dataquoll-data-api": {
"type": "remote",
"url": "https://dataquoll.io/api/mcp",
"enabled": true
}
}
} openclaw mcp add io-dataquoll-data-api --url 'https://dataquoll.io/api/mcp' --transport streamable-http
mcp_servers:
io-dataquoll-data-api:
url: "https://dataquoll.io/api/mcp" {
"McpServers": {
"io-dataquoll-data-api": {
"Transport": "http",
"Url": "https://dataquoll.io/api/mcp"
}
}
} assistant mcp add io-dataquoll-data-api -t streamable-http -u 'https://dataquoll.io/api/mcp'
{
"mcpServers": {
"io-dataquoll-data-api": {
"type": "http",
"url": "https://dataquoll.io/api/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 8 Sept 26 −27
- Endpoint reachability: reachable → behind authorisation ▼ security
- Tool safety: pass → unverified ▼ security
- Transport: pass → unverified ▼ security
- Stability: 0.03 → unverified ▼ security
- Authorization: unverified → pass ▲ security
- First check of Authorization: partial security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- 7 Sept 26 +1
- Stability: unverified → 0.03 ▲ functional
- Server version: 1.1.0 → 1.2.0 functional
- New tool “get_calendar_day” functional
- New tool “get_calendar_days” functional
- New tool “list_calendars” functional
- 6 Sept 26 65
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 2 Oct 2026 · Probed https://dataquoll.io/api/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=dataquoll.io | CN=YR1,O=Let's Encrypt,C=US | 10 Aug 2026 | 8 Nov 2026 | RSA 2048 | SHA256-RSA | 54bec5a44b4c1bab2d87bc4e81242603b50 |
| SANs: dataquoll.io | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of dataquoll.io. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 57355 | 8 | Verified |
| dataquoll.io. | present | 5977 | 8 | Verified |
| dataquoll.io. | Verified address RRset verified with the apex keys |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On connection |
| HTTP status | 401 |
WWW-Authenticate challenge Bearer resource_metadata="https://dataquoll.io/.well-known/oauth-protected-resource/api/mcp", scope="mcp:tools"
Bearer resource_metadata="https://dataquoll.io/.well-known/oauth-protected-resource/api/mcp", scope="mcp:tools" | Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline' https://cdn.jsdelivr.net https://www.googletagmanager.com; worker-src blob:; style-src 'self' 'unsafe-inline' https://cdn.jsdelivr.net; font-src 'self' https://cdn.jsdelivr.net; img-src 'self' data: https://protomaps.github.io https://img.buymeacoffee.com; connect-src 'self' https://*.supabase.co https://api.github.com https://protomaps.github.io https://www.google-analytics.com; frame-ancestors 'none'; object-src 'none'; base-uri 'self'; form-action 'self'; upgrade-insecure-requests; |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(self) |
| www-authenticate | Bearer resource_metadata="https://dataquoll.io/.well-known/oauth-protected-resource/api/mcp", scope="mcp:tools" |
Protected resource metadata
| Document | https://dataquoll.io/.well-known/oauth-protected-resource/api/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://dataquoll.io/api/mcp |
| Authorisation server | https://dataquoll.io |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://dataquoll.io/api/mcp | Auth required | 401 | |
| http (plaintext) | http://dataquoll.io/api/mcp | HTTPS enforced | 308 | https://dataquoll.io/api/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
declaration_by_agrn One disaster event by AGRN (across sources) ~76
The declaration/activation for an Australian Government Reference Number, merged across sources with the full affected-LGA list. Requires the "declarations" entitlement on the API key. Accounts without it get a clear error rather than an empty result, so an empty response never means "not entitled".
| Name | Type | Req | Description |
|---|---|---|---|
| agrn | string | yes | – |
No output schema declared.
No examples provided.
declarations_by_point Disaster declaration status for an exact point ~285
Returns the declaration STATUS for the local government area containing a lat/lng point, resolved against ABS LGA 2022 (ASGS Edition 3) boundary polygons at full resolution. POST with a JSON body is used deliberately so coordinates never appear in URLs or request logs; the request is read-only and safe to retry. Coordinates are never stored, logged, or echoed back, and the response is Cache-Control: no-store. Reports declared-area status only; the billing decision rests with the practitioner. A point outside every Australian LGA returns unknown_location. A point exactly on a shared LGA boundary returns every covering area with onBoundary=true. LGA matching is at ABS code level; some ABS codes aggregate multiple administrative areas (for example Unincorporated NSW covers both Far West and Lord Howe Island). Requires the "declarations" entitlement on the API key. Accounts without it get a clear error rather than an empty result, so an empty response never means "not entitled".
| Name | Type | Req | Description |
|---|---|---|---|
| as_at | string | – | Point-in-time check (YYYY-MM-DD). Defaults to today. |
| include_expired | boolean | – | Include expired records in the per-LGA lists. Never changes matchStatus. |
| instrument_type | string | – | Trim the returned record lists to one instrument type. Never changes matchStatus. |
| lat | number | yes | – |
| lng | number | yes | – |
No output schema declared.
No examples provided.
declarations_by_postcode Disaster declaration status for a postcode ~308
Returns the declaration STATUS for a postcode: declared, partial, activation_only, not_declared, uncertain, or unknown_postcode, with per-LGA detail and official source links. Reports declared-area status only; the billing/eligibility decision rests with the practitioner. Built for Medicare disaster telehealth checks. Requires the "declarations" entitlement on the API key. Accounts without it get a clear error rather than an empty result, so an empty response never means "not entitled".
| Name | Type | Req | Description |
|---|---|---|---|
| as_at | string | – | Point-in-time check (YYYY-MM-DD). Defaults to today. |
| include_expired | boolean | – | Include expired records in the per-LGA lists. Never changes matchStatus. |
| instrument_type | string | – | Trim the returned record lists to one instrument type. Never changes matchStatus. |
| postcode | string | yes | – |
| suburb | string | – | Optional suburb/locality name (ABS SAL) to narrow the result to the local government areas that suburb falls in, within this postcode only. Matching is exact after normalisation; there is no fuzzy ma… |
No output schema declared.
No examples provided.
get_attribution Data source attributions ~27
Returns attribution information for all data sources, including licence details. Required for CC BY compliance.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_calendar_day Is this a working day ~115
The answer for one date in one jurisdiction. A jurisdiction-wide public holiday wins, then the weekend, then the calendar's own entries in order (industry shutdown, RDO, part-day holiday, annual leave, industry event); otherwise working. Restricted holidays (a show day for one region, a public-service-only day) never decide it and are returned under restricted for the caller to apply to the employer's area.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | yes | The date, YYYY-MM-DD |
| jurisdiction | string | yes | Jurisdiction code |
No output schema declared.
No examples provided.
get_calendar_days Calendar days for a jurisdiction ~140
The day rows for one jurisdiction across a date range, each date answered by exactly one edition. Defaults to the current calendar year in the jurisdiction's own time zone; a lone from or to extends to the edge of its own year. Every place the calendar disagrees with the official list is returned under discrepancies. Rows can be CSV with format=csv.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Comma-separated categories to include (default all). Values are the CalendarDay category enum. |
| from | string | – | First date, YYYY-MM-DD |
| jurisdiction | string | yes | Jurisdiction code |
| to | string | – | Last date, YYYY-MM-DD |
No output schema declared.
No examples provided.
get_event Get a single event with optional linked incidents ~60
Returns a single clustered event by ID. Use `include_incidents=true` to also retrieve all incidents that belong to this event cluster.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Event UUID |
| include_incidents | boolean | – | Include linked incidents in the response |
No output schema declared.
No examples provided.
get_gauge One gauge with a 6-hour recent window ~74
Returns a single gauge station plus its trailing 6 hours of raw readings (enough to see the current trend). Deeper history is the tier-gated /gauges/{id}/readings endpoint.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Gauge id from /gauges (e.g. hydstra-nsw-410001) |
No output schema declared.
No examples provided.
get_gauge_summary Flood status counts by state or LGA ~145
Counts of gauges at or above minor/moderate/major flood classification, grouped by state or LGA, plus the full list of at-or-above-minor stations (capped at 500). STALE GUARD: only readings within the staleness horizon enter class counts — a days-old reading above minor is counted as stale, never as a current flood signal.
| Name | Type | Req | Description |
|---|---|---|---|
| groupBy | string | – | state (default) or lga (requires the state parameter) |
| state | string | – | – |
| variable | string | – | Measured variable. Defaults to water_level (rain gauges carry no flood class, so they are excluded from the counts by default). |
No output schema declared.
No examples provided.
get_incident Get a single incident ~40
Returns a single incident as a GeoJSON Feature.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Incident ID (e.g. nsw-rfs-1234567) |
No output schema declared.
No examples provided.
get_schema API schema and valid enum values ~46
Returns all valid enum values for event types, categories, states, warning levels, and other filterable fields. Use this to discover what values are accepted by filter parameters. No authentication required.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
hazard_history_by_point Observed record and declared status for an exact point ~373
What official sources recorded near a location, unioned with the disaster declarations that covered its local government area. Two lanes are returned because both are required: the observed lane (historical archive plus live-era incident history within a radius) and the declared lane (declarations for the covering ABS LGA, counted once per AGRN even when several authorities recorded the same event). Measured example: a Lismore address returns the February 2022 flood only through the declared lane, because the spatial lane holds no record for it at address precision. POST with a JSON body is used deliberately so coordinates never appear in URLs or request logs; the request is read-only and safe to retry. Coordinates are never stored, logged, or echoed back, and the response is Cache-Control: no-store. This reports a RECORD and a declared STATUS. It is not an assessment of risk, insurability, or any obligation, and absence of a record is not evidence that nothing happened. Precision is reported per record: a record at postcode precision sits at a postcode centroid, which can be kilometres from the event. Requires the "hazard-history" entitlement on the API key. Accounts without it get a clear error rather than an empty result, so an empty response never means "not entitled".
| Name | Type | Req | Description |
|---|---|---|---|
| lat | number | yes | Latitude in decimal degrees, -90 to 90. Never logged or echoed. |
| lng | number | yes | Longitude in decimal degrees, -180 to 180. Never logged or echoed. |
| radiusKm | number | – | Search radius for the observed lane, greater than 0 and no more than 5. Defaults to 1. |
| records | integer | – | Maximum observed records returned in the list. Aggregates always cover everything in radius. 1 to 100, defaults to 25. |
No output schema declared.
No examples provided.
incident_snapshot Audit trail snapshot ~198
Returns the incidents that were active at a specific point in time. Recent datetimes are reconstructed from live and lifecycle data. Datetimes before 2026-04-08 are reconstructed from the historical archive (4.8M+ records) and are gated by the same tier lookback as /incidents/history (free has no archive access; Starter 1 year, Developer and Business 5 years, Pro and Enterprise unlimited). Archive (pre-2026-04-08) snapshots require a state filter, and meta.source indicates whether the result came from "live" or "archive".
| Name | Type | Req | Description |
|---|---|---|---|
| datetime | string | yes | ISO 8601 datetime to query (cannot be in the future) |
| event_type | string | – | Filter by event type |
| limit | integer | – | Max results (default 500) |
| state | string | – | Filter by state code. Required for archive (pre-2026-04-08) snapshots. |
No output schema declared.
No examples provided.
list_calendars Industry calendar editions ~93
Every industry-calendar edition on the platform, one per jurisdiction and year (NSW, VIC, QLD, WA, SA, TAS, ACT and NT for 2026), with its publisher, cover range and per-category counts. RDOs, public holidays, school holidays and industry shutdowns, read from each branch calendar and verified against the Fair Work Ombudsman list and the education departments' term dates.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_declarations List/filter declarations ~128
Browse and historically report on declaration records. Filters and keyset (cursor) pagination. Record status is derived at query time. Requires the "declarations" entitlement on the API key. Accounts without it get a clear error rather than an empty result, so an empty response never means "not entitled".
| Name | Type | Req | Description |
|---|---|---|---|
| active_on | string | – | – |
| cursor | string | – | Opaque pagination cursor from links.next. |
| disaster_type | string | – | – |
| instrument_type | string | – | – |
| jurisdiction | string | – | – |
| limit | integer | – | – |
| status | string | – | – |
No output schema declared.
No examples provided.
list_events List clustered events (incident intelligence) ~161
Returns spatially clustered emergency events as a GeoJSON FeatureCollection. Events group related incidents using PostGIS ST_ClusterDBSCAN spatial clustering. Each event has a boundary polygon, centroid, affected suburbs, contributing agencies, and auto-generated title and summary. Only active events are returned by default.
| Name | Type | Req | Description |
|---|---|---|---|
| eventType | string | – | Comma-separated event types (e.g. bushfire,flood) |
| limit | integer | – | Maximum events to return (default 50, max 200) |
| severity | string | – | Comma-separated max severity levels |
| state | string | – | Comma-separated state codes to filter by (e.g. nsw,vic). Uses array overlap matching. |
| warningLevel | string | – | Comma-separated max warning levels |
No output schema declared.
No examples provided.
list_gauge_readings Gauge reading history (paid tier) ~224
Historical water level readings for one gauge. Free tier is blocked (the free surface is current readings on /gauges and the 6-hour window on /gauges/{id}). Starter tier limited to 1 year lookback, Developer and Business to 5 years, Pro and Enterprise unlimited. Retention ladder: raw 30 days, hourly rollups 90 days, daily forever — plus full-resolution raw inside flood-event windows kept forever. interval=auto picks the finest granularity available for the requested window.
| Name | Type | Req | Description |
|---|---|---|---|
| above | string | – | Only readings at/above this published flood classification for the gauge |
| after | string | – | Start of range (ISO 8601, inclusive). Tier-limited. |
| before | string | – | End of range (ISO 8601, exclusive). Defaults to now. |
| cursor | string | – | Pagination cursor from meta.nextCursor (ISO timestamp keyset) |
| id | string | yes | – |
| interval | string | – | raw, hourly, daily, or auto (default) |
| limit | integer | – | – |
No output schema declared.
No examples provided.
list_gauges River gauge stations with live flood status ~401
Returns river gauge stations with their latest water level, the Bureau of Meteorology flood classification thresholds for each gauge, and a derived floodClass (below_minor, minor, moderate, major, or unclassified) computed from the latest reading against the published thresholds. Water-level readings are in metres relative to each gauge's local datum (each gauge carries its own unit, since some report in AHD). readingStatus flags stale data (bom-kiwis sourced stations are a 1-2 day archive, stale horizon 72 hours; bcc-telemetry are event-driven council ALERT loggers, stale horizon 48 hours; telemetry sources 24 hours). Defaults to water-level gauges; pass variable=rainfall for observed rainfall gauges, which report incremental millimetres and carry no flood classification. Status reporting, not flood prediction.
| Name | Type | Req | Description |
|---|---|---|---|
| bbox | string | – | Bounding box minLng,minLat,maxLng,maxLat (within Australia) |
| cursor | string | – | Pagination cursor from meta.nextCursor |
| floodClass | string | – | Filter to gauges at or above this class (>= semantics: minor matches moderate and major too). Water-level only; cannot combine with variable=rainfall. |
| lga | string | – | ABS LGA code (the same LGA_2022 vocabulary as the declarations API) |
| limit | integer | – | Max results per page (1-500, default 100) |
| source | string | – | Polling source (hydstra-nsw, hydstra-vic, hydstra-qld, aquarius-sa, aquarius-tas, aquarius-nt, bom-kiwis, bcc-telemetry) |
| state | string | – | Lowercase state code (nsw, vic, qld, sa, wa, tas, nt, act) |
| variable | string | – | Measured variable. Defaults to water_level; rainfall returns observed rain gauges (millimetres, incremental, no flood class). |
No output schema declared.
No examples provided.
list_historical_incidents Historical incident data (paid tier) ~148
Returns historical emergency incidents from the 4.8M+ record archive (1840-2026). Free tier is blocked. Starter tier limited to 1 year lookback, Developer and Business to 5 years, Pro and Enterprise unlimited.
| Name | Type | Req | Description |
|---|---|---|---|
| after | string | – | Start of date range (ISO 8601, inclusive). Tier-limited. |
| before | string | – | End of date range (ISO 8601, exclusive). Defaults to now. |
| eventType | string | – | Comma-separated event types |
| limit | integer | – | Max results per page (1-500, default 100) |
| state | string | – | Comma-separated state codes |
No output schema declared.
No examples provided.
list_incidents List all current incidents ~814
Returns a GeoJSON FeatureCollection of all current emergency incidents, with support for filtering, pagination, and bounding box queries. Example response: { "type": "FeatureCollection", "features": [ { "type": "Feature", "id": "nsw-rfs-1234567", "geometry": { "type": "Point", "coordinates": [ 150.604, -33.883 ] }, "properties": { "source": { "state": "nsw", "agency": "RFS", "feedId": "1234567" }, "title": "Bush Fire - Warragamba", "eventType": "bushfire", "status": "active", "warningLevel": "watch_and_act", "severity": "Severe", "urgency": "Expected", "certainty": "Observed", "location": { "address": "Warragamba Dam Rd, Warragamba NSW", "suburb": "Warragamba", "state": "NSW", "latitude": -33.883, "longitude": 150.604 }, "details": { "description": "Bush fire burning in a south-easterly direction" }, "timestamps": { "reported": "2026-04-07T14:30:00+10:00", "updated": "2026-04-07T16:45:00+10:00", "fetched": "2026-04-07T16:46:12+10:00" }, "retraction": { "retracted": true, "retractedAt": "2026 ... (truncated)
| Name | Type | Req | Description |
|---|---|---|---|
| after | string | – | Alias for cursor. This is the parameter name emitted in links.next, and is accepted for backward compatibility. If both are supplied, after wins. |
| agency | string | – | Source agency filter |
| bbox | string | – | Bounding box: minLon,minLat,maxLon,maxLat |
| category | string | – | Comma-separated event categories. Groups related event types (e.g. fire includes bushfire, structure_fire, grass_fire, vehicle_fire). burn_off is its own category (planned). See /api/v1/schema for th… |
| certainty | string | – | CAP-AU certainty levels (Observed, Likely, Possible, Unlikely, Unknown) |
| cursor | string | – | Opaque pagination cursor, taken from meta.next_cursor of the previous response. Absent next_cursor means there are no further pages. |
| eventType | string | – | Comma-separated event types (bushfire, burn_off, fire_ban, structure_fire, vehicle_fire, grass_fire, hazmat, rescue, flood, storm, tree_down, cyclone, earthquake, extreme_heat, vehicle_accident, medi… |
| featureType | string | – | Comma-separated feature types. Defaults to 'incident' (point incidents only), so boundary polygons never appear unless requested. Request them explicitly: incident_area, warning_area, fire_ban_area.… |
| include_retracted | boolean | – | Include retracted incidents (default false). Retracted incidents are marked when upstream feeds stop publishing them. |
| limit | integer | – | Results per page (default 100, max 500) |
| severity | string | – | CAP-AU severity levels (Extreme, Severe, Moderate, Minor, Unknown) |
| state | string | – | Comma-separated state codes (e.g. nsw,vic,qld) |
| status | string | – | Incident status filter |
| urgency | string | – | CAP-AU urgency levels (Immediate, Expected, Future, Past, Unknown) |
| warningLevel | string | – | Australian Warning System levels |
No output schema declared.
No examples provided.
list_states Feed health by state ~27
Returns the status of each state feed, including last poll time, health, and incident count.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
nearby_incidents Find incidents near a location ~181
Returns incidents within a radius (km) of a given lat/lng coordinate, sorted by distance.
| Name | Type | Req | Description |
|---|---|---|---|
| agency | string | – | – |
| certainty | string | – | – |
| eventCategory | string | – | – |
| eventType | string | – | – |
| include_retracted | boolean | – | Set true to include retracted incidents. Default false; retracted incidents are hidden, matching /incidents. |
| lat | number | yes | Latitude |
| limit | integer | – | – |
| lng | number | yes | Longitude |
| radius | number | yes | Radius in kilometres (max 500) |
| severity | string | – | – |
| state | string | – | – |
| status | string | – | Comma-separated incident statuses (active, contained, controlled, safe, completed). Defaults to all. |
| urgency | string | – | – |
| warningLevel | string | – | – |
No output schema declared.
No examples provided.
What is the DataQuoll MCP server?
DataQuoll is an MCP server listed in the public MCP registry as io.dataquoll/data-api. Australian public data as MCP tools: incidents, gauges, declarations, industry calendars, archive. This page covers its hosted endpoint (https://dataquoll.io/api/mcp).
Is the DataQuoll MCP server safe to use?
DataQuoll scores 39 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the DataQuoll MCP server expose?
DataQuoll exposes 22 tools: list_incidents, get_incident, nearby_incidents, incident_snapshot, list_historical_incidents, and 17 more. Their descriptions and schemas cost roughly 4,064 tokens of context every time the server is loaded.
Does the DataQuoll MCP server require authentication?
Yes. DataQuoll asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the DataQuoll MCP server still maintained?
DataQuoll is still listed as active in the MCP registry. We last reached this channel on 2 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.