GnistAI GnistAI
Log in

NOAA Tides & Currents

Tidal predictions, observed water levels, and coastal station meteorological data for U.S. coastlines.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 5 tools tools 5 5 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Environment

Data source: NOAA CO-OPS Tides & Currents

REST Bridge Endpoint https://context.gnist.ai/rest/noaa-tides/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (5)

get_tide_predictions

Get tide predictions for a NOAA CO-OPS station.

Returns predicted high/low tide times and heights, or water level predictions
at regular intervals. Use 'hilo' interval for high/low tide times, or a numeric
interval for evenly-spaced predictions.

Args:
station: NOAA station identifier.
begin_date: Start date (yyyyMMdd).
end_date: End date (yyyyMMdd).
datum: Tidal datum reference level.
interval: Prediction granularity.
units: Measurement units.

Returns:
Predictions with time, value (water level), and type (high/low if hilo).

ParameterTypeRequiredDescription
stationstringrequiredNOAA station ID (e.g. '9414290' for San Francisco, '8518750' for The Battery NYC).
begin_datestringrequiredStart date in yyyyMMdd format (e.g. '20260320').
end_datestringrequiredEnd date in yyyyMMdd format (e.g. '20260321'). Max 1 year for high/low.
datumstringoptionalTidal datum reference. Common: MLLW (default), MSL, NAVD, MHHW. (default: "MLLW")
intervalstringoptionalPrediction interval: 'hilo' for high/low only, 'h' for hourly, or minutes (1,5,6,10,15,30,60). (default: "hilo")
unitsstringoptionalUnits: 'metric' (meters, Celsius) or 'english' (feet, Fahrenheit). (default: "metric")
Request Body
{
  "station": "example",
  "begin_date": "example",
  "end_date": "example"
}
get_water_levels

Get observed (actual) water level data from a NOAA tide station.

Returns real-time or historical water level observations at 6-minute intervals.
Compare with predictions to see storm surge, wind effects, or other anomalies.

Args:
station: NOAA station identifier.
begin_date: Start date (yyyyMMdd).
end_date: End date (yyyyMMdd).
datum: Tidal datum reference level.
units: Measurement units.

Returns:
Observations with time, value (water level), sigma (std dev), and quality flag.

ParameterTypeRequiredDescription
stationstringrequiredNOAA station ID (e.g. '9414290' for San Francisco).
begin_datestringrequiredStart date in yyyyMMdd format.
end_datestringrequiredEnd date in yyyyMMdd format. Max 1 month for 6-minute data.
datumstringoptionalTidal datum reference. Common: MLLW (default), MSL, NAVD. (default: "MLLW")
unitsstringoptionalUnits: 'metric' or 'english'. (default: "metric")
Request Body
{
  "station": "example",
  "begin_date": "example",
  "end_date": "example"
}
get_station_data

Get meteorological observations from a NOAA coastal station.

Retrieves current or recent readings for water temperature, air temperature,
wind speed/direction, barometric pressure, and other environmental parameters.

Args:
station: NOAA station identifier.
product: Type of meteorological data.
date: Time filter.
units: Measurement units.

Returns:
Readings with time and measured values (varies by product).

ParameterTypeRequiredDescription
stationstringrequiredNOAA station ID (e.g. '9414290').
productstringrequiredData product: 'water_temperature', 'air_temperature', 'wind', 'air_pressure', 'humidity'.
datestringoptionalDate filter: 'latest' for most recent, 'today', 'recent' (last 72h). (default: "latest")
unitsstringoptionalUnits: 'metric' or 'english'. (default: "metric")
Request Body
{
  "station": "example",
  "product": "example"
}
search_stations

Search for NOAA tide prediction stations.

Find stations by US state. Returns station IDs, names, and coordinates
that can be used with other tide tools.

Args:
state: US state abbreviation to filter by.
max_results: Maximum results.

Returns:
List of stations with id, name, state, latitude, longitude.

ParameterTypeRequiredDescription
stateanyoptionalFilter by US state abbreviation (e.g. 'CA', 'NY', 'FL').
max_resultsintegeroptionalMaximum number of stations to return (1-500). (default: 50)
Request Body
{
  "query": "example"
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
Request Body
{
  "feedback": "example"
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/rest/noaa-tides/get_tide_predictions" \
  -H "Content-Type: application/json" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"station": "example", "begin_date": "example", "end_date": "example"}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/rest/noaa-tides/get_tide_predictions",
    headers={"Gnist-API-Key": "YOUR_API_KEY"},
    json={
  "station": "example",
  "begin_date": "example",
  "end_date": "example"
},
)
print(resp.json())

Related Toolkits (Environment)

Resources