Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Recently observed → Live
Live → Recently observed
Certificate changed, valid to 2027-01-18
Changed the definition of "get_data" and "list_collections"
⟨145 unchanged words⟩ means add a bbox/datetime/depth/filter. 'no_natural_order' means the sourcedeclareshas no columnorderingto order a partial read by, so no partial set can be givenhonestly — narrow until itfits, or use 'stats'. The rest aretransient; retry. OTHER FIELDS: - 'stats': exact ⟨45 unchanged words⟩ say so, or re-run with a quality filter. When a mode was applied, 'qc_screened' lists the variables it actually checked — a variable not in it was NOT flag-checked, and an empty list means nothing was screened despite 'qc' naming a mode. 'qc_note', when present, explains that the screen drops whole rows, so it shapes every variable's figures. - 'structure': how many distinct floats/stations/profiles matched ⟨190 unchanged words⟩ . filters: JSON object of extra column filters on ordinary columns, e.g.{"data_mode": "D"}.
Recently observed → Live
Live → Recently observed
Added "get_data" and "list_data_sources"; changed the definition of "list_collections" and "search_datasets" (4 tools before, 6 now)
⟨20 unchanged words⟩ and keywords. Use collection IDs to filter searches. These are CATALOG collections. Several are also queryable row by row — see list_data_sources for the sources get_data can pull observations from. Args: tag: Only collections with this tag, e.g. "uxs" for uncrewed systems. Pass the returned IDs as `collections` to search_datasets to search only those. output_format: "csv" (default, sectioned CSV ⟨57 unchanged words⟩
⟨6 unchanged words⟩ json","toon"],"type":"string"},"tag":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}},"type":"object"}
Recently observed → Live
Live → Recently observed
Recently observed → Live
Live → Recently observed
Recently observed → Live
Live → Recently observed
Recently observed → Live
Live → Recently observed
Certificate recorded, valid to 2026-11-23
Certificate recorded, valid to 2026-11-23
Authorization not required
First tool surface recorded: 4 tools (server version 2.14.2)
Showing the latest 19 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨42 unchanged words⟩ for the sources get_data can pull observations from. A collection's bbox and temporal range are OUTER BOUNDS, not a promise of coverage. They are the envelope around everything in the collection, so most of the box usually holds no data at all — an Argo collection spans the global ocean, a partner collection with one point either side of the date line spans the whole planet. An empty result for a point or window inside the extent is the normal answer, not a failure: report "no data there", not "the query did not work", and do not widen a search on the strength of a bbox alone. Args: tag: Only collections with this tag, ⟨79 unchanged words⟩
⟨27 unchanged words⟩ scientific research, data analysis, and environmental monitoring. This searches METADATA — which datasets exist. To pull the actual observations (temperature profiles, buoy readings, float positions), use get_data instead; list_data_sources shows which sources support it. You must provide at least one of: q ⟨454 unchanged words⟩
Pull actual observation rows from an AQUAVIEW data source — not catalog metadata. Use this whenever the question needs the measurements themselves (temperature profiles, float positions, buoy readings), rather than which datasets exist. Call list_data_sources first for a source's canonical variable names, its `qc_modes`, and its `engine` (gridded "xarray" sources have no rows to pull). READ 'returned' FIRST. It is one of three values: - 'complete': 'rows' holds EVERY matching row (or your whole 'limit'). Safe to compute anything from. - 'head': 'rows' holds the FIRST rows in the sou…
List the AQUAVIEW data sources you can pull actual rows from, or describe one in detail. Call this BEFORE get_data on a source you have not used. Variable names are canonical per source and cannot be guessed — this is where they come from. With an API key, sources your account is entitled to appear here too. Args: source_id: Omit to list every visible source. Give one (e.g. "gadr") to get its full detail: canonical variable names, units, row limits, and filterable columns. output_format: 'csv' (compact, default), 'json', or 'toon'.