publicdata.au

Search, filter, count and sum Australian government open data, with every version kept.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
100%
Calidad de los nombres
95%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,125Tokens (definiciones de herramientas)
~2.3 KBTamaño de respuesta típico
Impacto moderado en la atención (1.66% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "mcp": {
      "url": "https://publicdata.au/mcp"
    }
  }
}

Puntos de conexión remotos

https://publicdata.au/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (8)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_datasets(query)

Find datasets on publicdata.au by title, publisher or field name. Returns slug, title, publisher, licence, dataset page and the latest download URL.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Words from a title, publisher or field name"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "publisher": {
            "type": [
              "string",
              "null"
            ]
          },
          "licence": {
            "type": [
              "string",
              "null"
            ]
          },
          "page": {
            "type": [
              "string",
              "null"
            ]
          },
          "latest": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "slug",
          "title"
        ]
      }
    }
  },
  "required": [
    "results"
  ]
}
🟢get_dataset(slug)

Read one dataset: its Frictionless data package (fields, types, licence, attribution, download URLs) and every version.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Dataset slug from search_datasets"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "datapackage": {
      "type": "object"
    },
    "versions": {}
  },
  "required": [
    "datapackage",
    "versions"
  ]
}
🟢list_partitions(slug, field)

List the per-value download files of a dataset for one partition field, with the row count and URL of each, to download a slice of the data.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Dataset slug from search_datasets"
    },
    "field": {
      "type": "string",
      "description": "A partition field named in the data package, for example crash_year or loc_local_government_area"
    }
  },
  "required": [
    "slug",
    "field"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "field": {
      "type": "string"
    },
    "version_base": {
      "type": "string"
    },
    "partitions": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "value": {},
          "rows": {
            "type": "integer"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "value",
          "rows",
          "url"
        ]
      }
    }
  },
  "required": [
    "field",
    "version_base",
    "partitions"
  ]
}
🟢query_rows(slug, where, select, order, limit, ...)

Return rows from a dataset, filtered across the whole table by the query API. Returns up to limit rows, the number of rows that match, the offset of the next page, the version answered and the attribution string.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Dataset slug from search_datasets"
    },
    "where": {
      "type": "object",
      "description": "Filters by field name, applied to the whole table. A value may be a scalar for an exact, case-sensitive match, a list of scalars to match any of them, null to match blank or suppressed cells, {\"min\": n, \"max\": n} for an inclusive range, or {\"like\": \"*text*\"} for a case-insensitive match where * is the wildcard. A blank cell never matches a scalar, a list or a range.",
      "additionalProperties": true
    },
    "select": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Fields to return. Every field when absent."
    },
    "order": {
      "type": "string",
      "description": "field.asc or field.desc, comma-separated. The publisher's row order when absent."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "default": 50,
      "description": "Rows to return, 1 to 500. 50 when absent."
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "description": "Rows to skip. next_offset in each answer gives the next page."
    },
    "version": {
      "type": "string",
      "description": "A version date, YYYY-MM-DD, from get_dataset. The newest version loaded for queries when absent."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "version": {
      "type": [
        "string",
        "null"
      ]
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "matched": {
      "type": "integer"
    },
    "next_offset": {
      "type": [
        "integer",
        "null"
      ]
    },
    "query": {
      "type": "string"
    },
    "attribution": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "version",
    "rows",
    "matched",
    "next_offset",
    "query"
  ]
}
🟢count_rows(slug, group_by, metric, where, limit, ...)

Count rows in a dataset, or sum, average, min or max a field, grouped by up to three fields and filtered across the whole table by the query API. Returns groups sorted from largest, the number of rows that match, the version answered and the attribution string.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Dataset slug from search_datasets"
    },
    "group_by": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "maxItems": 3,
      "description": "Fields to group by, for example [\"crash_severity\"]. One total when absent."
    },
    "metric": {
      "type": "string",
      "default": "count",
      "description": "count, or sum, avg, min or max of a field written as sum.field_name. count when absent."
    },
    "where": {
      "type": "object",
      "description": "Filters by field name, applied to the whole table. A value may be a scalar for an exact, case-sensitive match, a list of scalars to match any of them, null to match blank or suppressed cells, {\"min\": n, \"max\": n} for an inclusive range, or {\"like\": \"*text*\"} for a case-insensitive match where * is the wildcard. A blank cell never matches a scalar, a list or a range.",
      "additionalProperties": true
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "default": 100,
      "description": "Groups to return, 1 to 1000. 100 when absent."
    },
    "version": {
      "type": "string",
      "description": "A version date, YYYY-MM-DD, from get_dataset. The newest version loaded for queries when absent."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "version": {
      "type": [
        "string",
        "null"
      ]
    },
    "group_by": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "metric": {
      "type": "string"
    },
    "groups": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "truncated": {
      "type": "boolean"
    },
    "matched": {
      "type": "integer"
    },
    "query": {
      "type": "string"
    },
    "attribution": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "version",
    "group_by",
    "metric",
    "groups",
    "truncated",
    "matched",
    "query"
  ]
}
🟢diff_versions(slug, from, to)

Compare two versions of a dataset by its key: rows added, removed and changed.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Dataset slug from search_datasets"
    },
    "from": {
      "type": "string",
      "description": "Older version date, YYYY-MM-DD"
    },
    "to": {
      "type": "string",
      "description": "Newer version date, YYYY-MM-DD"
    }
  },
  "required": [
    "slug",
    "from",
    "to"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object"
}
🟢search_catalogue(query, jurisdiction, votable_only)

Search every dataset on Australia's government portals. A row's state says whether it can take a vote; pass its vote key to vote.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Words from a title, description or publisher"
    },
    "jurisdiction": {
      "type": "string",
      "enum": [
        "cth",
        "nsw",
        "vic",
        "qld",
        "wa",
        "sa",
        "tas",
        "act",
        "nt"
      ],
      "description": "One government. All when absent."
    },
    "votable_only": {
      "type": "boolean",
      "default": false,
      "description": "Leave out records that cannot take a vote"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "catalogue_read": {
      "type": "string"
    },
    "records": {
      "type": "integer"
    },
    "total": {
      "type": "integer"
    },
    "next_offset": {
      "type": [
        "integer",
        "null"
      ]
    },
    "rows": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "publisher": {
            "type": "string"
          },
          "publisher_page": {
            "type": "string"
          },
          "jur": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "licence": {
            "type": "string"
          },
          "formats": {
            "type": "string"
          },
          "modified": {
            "type": "string"
          },
          "state": {
            "type": "string",
            "enum": [
              "votable",
              "chosen",
              "served",
              "closed"
            ]
          },
          "vote": {
            "type": "string"
          },
          "page": {
            "type": "string"
          },
          "reason": {
            "type": [
              "string",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "title",
          "state",
          "vote"
        ]
      }
    }
  },
  "required": [
    "catalogue_read",
    "rows"
  ]
}
🟡vote(slug)

Add one vote so a dataset is built sooner. No identity is recorded, and each browser counts once a day.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "The vote key of a search_catalogue row, or a backlog slug from /backlog.json"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    },
    "votes": {
      "type": "integer"
    }
  },
  "required": [
    "slug",
    "votes"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada8 herramientas