{"serverId":"mcp-registry/org.aquaview/aquaview-mcp","tools":[{"name":"get_data","fixed":{"name":"get_data","description":"Pull actual observation rows from an AQUAVIEW data source — not catalog metadata.\n\nUse this whenever the question needs the measurements themselves (temperature\nprofiles, float positions, buoy readings), rather than which datasets exist.\nCall list_data_sources first for a source's canonical variable names, its\n`qc_modes`, and its `engine` (gridded \"xarray\" sources have no rows to pull).\n\nREAD 'returned' FIRST. It is one of three values:\n  - 'complete': 'rows' holds EVERY matching row (or your wh","inputSchema":{"type":"object","required":["source","variables"],"properties":{"qc":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"bbox":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"depth":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null},"format":{"enum":["parquet","csv"],"type":"string","default":"parquet"},"source":{"type":"string"},"filters":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"datetime":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"variables":{"type":"string"},"output_format":{"enum":["csv","json","toon"],"type":"string","default":"csv"},"include_sample":{"type":"boolean","default":true}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":375,"tokensAfter":375},{"name":"get_item","fixed":{"name":"get_item","description":"Fetch a single AQUAVIEW dataset item with full details, properties, and download links (assets).\n\nSTAC items embed assets inline — each asset includes an href (download URL) and media type, so there is no need for a separate \"files\" call.\n\nArgs:\n    collection: The collection ID the item belongs to (e.g., \"NOAA\", \"NDBC\", \"WOD\"). Available from search results or list_collections.\n    item_id: The unique item identifier (e.g., \"wod_xbt_ZZ144579\"). Available from search results.\n    output_format: ","inputSchema":{"type":"object","required":["collection","item_id"],"properties":{"item_id":{"type":"string"},"collection":{"type":"string"},"output_format":{"enum":["json","toon"],"type":"string","default":"toon"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":214,"tokensAfter":214},{"name":"list_collections","fixed":{"name":"list_collections","description":"List all available AQUAVIEW data collections (sources).\n\nReturns a summary of each collection with ID, title, description, spatial/temporal extent, and keywords. Use collection IDs to filter searches.\n\nThese are CATALOG collections. Several are also queryable row by row — see\nlist_data_sources for the sources get_data can pull observations from.\n\nA collection's bbox and temporal range are OUTER BOUNDS, not a promise of\ncoverage. They are the envelope around everything in the collection, so\nmost ","inputSchema":{"type":"object","properties":{"tag":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"output_format":{"enum":["csv","json","toon"],"type":"string","default":"csv"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":208,"tokensAfter":208},{"name":"list_data_sources","fixed":{"name":"list_data_sources","description":"List the AQUAVIEW data sources you can pull actual rows from, or describe one in detail.\n\nCall this BEFORE get_data on a source you have not used. Variable names are\ncanonical per source and cannot be guessed — this is where they come from.\n\nWith an API key, sources your account is entitled to appear here too.\n\nArgs:\n    source_id: Omit to list every visible source. Give one (e.g. \"gadr\") to get its\n        full detail: canonical variable names, units, row limits, and filterable columns.\n    out","inputSchema":{"type":"object","properties":{"source_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"output_format":{"enum":["csv","json","toon"],"type":"string","default":"csv"}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":210,"tokensAfter":210},{"name":"search_datasets","fixed":{"name":"search_datasets","description":"Search the AQUAVIEW catalog — a comprehensive collection of 268K+ global oceanographic, atmospheric, and marine datasets from 15 sources (NOAA, NDBC, IOOS, WOD, CoastWatch, etc.), intended for scientific research, data analysis, and environmental monitoring.\n\nThis searches METADATA — which datasets exist. To pull the actual observations\n(temperature profiles, buoy readings, float positions), use get_data instead;\nlist_data_sources shows which sources support it.\n\nYou must provide at least one of","inputSchema":{"type":"object","properties":{"q":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"bbox":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"limit":{"type":"integer","default":10},"token":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"fields":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"filter":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":true},{"type":"null"}],"default":null},"sortby":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"license":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"datetime":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"collections":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null},"output_format":{"enum":["csv","json","toon"],"type":"string","default":"csv"},"include_assets":{"type":"boolean","default":false},"exclude_collections":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":424,"tokensAfter":424}],"toolsChanged":5,"tokensSaved":0,"todo":[{"tool":"aggregate","params":["q","bbox","filter","license","datetime","precision","collections","aggregations","output_format","exclude_collections","datetime_frequency_interval"]},{"tool":"get_data","params":["qc","bbox","depth","limit","format","source","filters","datetime","variables","output_format","include_sample"]},{"tool":"get_item","params":["item_id","collection","output_format"]},{"tool":"list_collections","params":["tag","output_format"]},{"tool":"list_data_sources","params":["source_id","output_format"]},{"tool":"search_datasets","params":["q","bbox","limit","token","fields","filter","sortby","license","datetime","collections","output_format","include_assets","exclude_collections"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}