Skip to main content
Glama

Server Details

Find NOAA tide stations and NDBC buoys, fetch tide predictions, currents, and live conditions.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.5/5 across 5 of 5 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct data type: station lookup, buoy conditions, tidal currents, tide predictions, and water levels. Descriptions are detailed and clearly differentiate the tools.

Naming Consistency5/5

All tool names follow the consistent pattern 'noaa_marine_<verb>_<noun>', using lowercase and underscores. Verbs are either 'find' or 'get', and nouns precisely describe the resource.

Tool Count5/5

With 5 tools, the server covers essential marine data retrieval operations without being overwhelming. The count is well-scoped for the domain.

Completeness4/5

The tool surface covers the core workflow: station discovery, buoy conditions, tides, currents, and water levels. Minor gaps exist (e.g., no current observations), but the set is sufficient for typical marine data queries.

Available Tools

5 tools
noaa_marine_find_stationsFind Marine StationsA
Read-only
Inspect

Find CO-OPS tide/water-level/current stations and NDBC buoys near a location or by name/state. Returns a unified station list with source, type, capabilities, and coordinates. This is the required first step to resolve place names or coordinates to station IDs before calling data tools. CO-OPS station IDs are numeric (e.g. 9447130 for Seattle); current station IDs are alphanumeric (e.g. ACT4176). NDBC buoy IDs are 5-character alphanumeric codes (e.g. 46041). Provide latitude/longitude for proximity search, or query/state for name-based search — both may be combined. Note: CO-OPS current stations are cataloged by monitoring capability, not prediction availability. If noaa_marine_get_currents returns no_predictions for a station, try the next nearest current station.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of stations to return. Defaults to 20.
queryNoStation name substring to search (case-insensitive token match). E.g. "seattle", "puget sound".
stateNoFilter by 2-letter US state or territory code (CO-OPS stations only). E.g. "WA", "CA", "PR".
typesNoFilter by station type/capability. Omit to return all types.
sourceNoData source to search: coops (tide/water-level/current stations), ndbc (buoys), or all (default).all
latitudeNoCenter latitude in decimal degrees for proximity search. Pair with longitude and optionally radius_km.
longitudeNoCenter longitude in decimal degrees for proximity search. Pair with latitude and optionally radius_km.
radius_kmNoSearch radius in kilometers when latitude/longitude are provided. Defaults to 100 km.

Output Schema

ParametersJSON Schema
NameRequiredDescription
stationsYesStations matching the search criteria, sorted by distance (if lat/lon provided) or name.
total_foundYesTotal stations matching the filters before the limit was applied.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and openWorldHint. The description adds valuable behavioral context: station ID formats (numeric, alphanumeric, 5-char), a note about current stations cataloged by monitoring capability, and the no_predictions fallback. This builds on annotations without redundancy.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections, front-loads the purpose and required-first-step guidance, and uses short paragraphs and bullets for ID formats. Every sentence adds value, though slightly lengthy – could be tightened without loss.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 8 optional parameters, a rich output schema (implicit), and 4 siblings, the description covers purpose, parameter combinations, station ID formats, and a behavioral note about current stations. It does not need to explain return values due to output schema. Adequate for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds parameter usage context (latitude/longitude for proximity search, query/state for name-based), explains how to combine them, and describes station ID formats – adding meaning beyond what the schema alone provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool finds CO-OPS and NDBC stations by location or name/state, specifies the types (tide, current, water_level, buoy, met), and explicitly positions it as the required first step before data tools, distinguishing it from sibling tools that retrieve data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use this tool ('required first step to resolve place names or coordinates to station IDs before calling data tools'), provides guidance on proximity vs. name-based search, and notes alternatives (try next nearest current station if no predictions) – a model of clear usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

noaa_marine_get_conditionsGet Marine ConditionsA
Read-only
Inspect

Live marine conditions from an NDBC buoy: wave height/period/direction, wind speed/gust/direction, sea-surface temperature, air temperature, barometric pressure, and dew point. All values are SI units — wind in m/s, wave height in m, pressure in hPa, temperatures in °C. Exceptions: TIDE is in feet and VIS is in nautical miles (rarely populated at offshore buoys). Numeric fields are null when the buoy sensor did not report a value — this is normal for offshore buoys. Observations are updated approximately every 10 minutes; data may be 10–20 minutes old. Use noaa_marine_find_stations with source="ndbc" to find buoy station IDs near a location.

ParametersJSON Schema
NameRequiredDescriptionDefault
station_idYesNDBC buoy station ID (5-character alphanumeric, e.g. "46041" for Cape Elizabeth). Obtain from noaa_marine_find_stations with source="ndbc".

Output Schema

ParametersJSON Schema
NameRequiredDescription
sourceYesData source — always "ndbc" for this tool.
tide_ftYesTide height in feet. NOTE: always in feet regardless of other unit settings. Rarely populated at offshore buoys. Null if not reported.
latitudeYesStation latitude in decimal degrees.
longitudeYesStation longitude in decimal degrees.
air_temp_cYesAir temperature in °C. Null if not reported.
station_idYesStation ID echoed from the request — for chaining.
dew_point_cYesDew point temperature in °C. Null if not reported.
observed_atYesISO 8601 UTC timestamp of the observation row used.
pressure_hpaYesAtmospheric pressure in hPa. Null if not reported.
station_nameYesStation name from the NDBC active stations list.
water_temp_cYesSea-surface temperature in °C. Null if not reported.
gust_speed_msYesWind gust speed in m/s. Null if not reported.
wave_height_mYesSignificant wave height in meters. Null if not reported.
wind_speed_msYesWind speed in m/s. Null if not reported.
visibility_nmiYesVisibility in nautical miles. NOTE: always in nautical miles regardless of other unit settings. Null if not reported.
average_period_secYesAverage wave period in seconds. Null if not reported.
wind_direction_degYesWind direction in degrees true (0–360). Null if not reported by the buoy.
dominant_period_secYesDominant wave period in seconds. Null if not reported.
mean_wave_direction_degYesMean wave direction in degrees true. Null if not reported.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already set readOnlyHint=true and openWorldHint=true. Description adds valuable context: update frequency (~10 min), possible data lag (10–20 min), null values for unreported sensors, and unit exceptions (TIDE in feet, VIS in nautical miles). No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single paragraph front-loaded with main purpose, followed by essential details (units, null handling, update frequency, sibling tool reference). Every sentence earns its place without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, description fully covers: data source, fields, units, exceptional units, null behavior, update frequency, and station ID acquisition. Comprehensive for a single-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a detailed description for station_id including pattern and example. Description adds some value (linking to find_stations) but doesn't significantly expand beyond what the schema already provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it provides live marine conditions from an NDBC buoy and lists specific parameters (wave height, wind, etc.). Distinguishes from sibling tool noaa_marine_find_stations by mentioning it for finding station IDs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance to use noaa_marine_find_stations with source='ndbc' to find station IDs. Implicitly defines when to use this tool (when live buoy data is needed), though no explicit 'when not to use' is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

noaa_marine_get_currentsGet Tidal CurrentsA
Read-onlyIdempotent
Inspect

Tidal current predictions for a CO-OPS current station: max flood/ebb speeds, slack times, and directions. Defaults to MAX_SLACK interval — the practical planning view showing when currents peak and when slack water occurs. Optionally returns 6-minute continuous predictions for detailed analysis. Current station IDs use alphanumeric format (e.g. ACT4176), distinct from numeric tide/water-level IDs. Date range is limited to 1 year per request. Use noaa_marine_find_stations with types=["current"] to obtain valid current station IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
unitsNoUnit system: english = knots; metric = m/s.english
end_dateYesEnd date in YYYYMMDD format (inclusive), e.g. "20240607".
intervalNoPrediction interval: MAX_SLACK (default) returns max flood, max ebb, and slack water events — ideal for passage planning. 6min returns a continuous current curve.MAX_SLACK
time_zoneNoTime zone for returned timestamps. lst_ldt = local standard/daylight time (default); gmt = UTC; lst = local standard time year-round.lst_ldt
begin_dateYesStart date in YYYYMMDD format, e.g. "20240601".
station_idYesCO-OPS current station ID (alphanumeric, e.g. "ACT4176"). Obtain from noaa_marine_find_stations with types=["current"].

Output Schema

ParametersJSON Schema
NameRequiredDescription
unitsYesSpeed units: "english" (knots) or "metric" (m/s).
eventsNoMax flood, max ebb, and slack events. Present for MAX_SLACK interval.
station_idYesStation ID echoed from the request — for chaining.
predictionsNo6-minute continuous current predictions. Present for 6min interval.
station_nameYesStation name as returned by CO-OPS.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds behavioral details beyond the annotations: it specifies the default interval behavior, the format of IDs, and the date range limit. Annotations already state readOnlyHint, openWorldHint, and idempotentHint as true, and the description aligns without contradiction, providing additional context about data and limitations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is five sentences, front-loaded with the main purpose, and includes only necessary details without redundancy. It is well-structured and concise, earning its place with every sentence providing value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description is comprehensive given the tool's complexity: it covers purpose, parameter usage, defaults, limitations (date range, ID format), and references a sibling tool for station lookup. The output schema exists, so return values are not needed in the description. No gaps are apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with all parameters described. The description adds extra meaning for key parameters: it explains the practical use of the interval parameter and clarifies that station IDs are alphanumeric and distinct from tide IDs. This adds value beyond the schema, justifying a score above the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves tidal current predictions for a CO-OPS station and specifies the return data (max flood/ebb speeds, slack times, directions). It distinguishes from sibling tools by mentioning the alphanumeric station ID format and referencing noaa_marine_find_stations, providing a specific verb and resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the default interval (MAX_SLACK) for practical planning versus 6min for detailed analysis, and notes the date range limit of 1 year. It gives guidance on obtaining valid station IDs via noaa_marine_find_stations. However, it does not explicitly compare with sibling tools like get_tide_predictions or get_water_level, so while clear context is provided, direct alternatives are not mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

noaa_marine_get_tide_predictionsGet Tide PredictionsA
Read-onlyIdempotent
Inspect

High/low tide predictions for a CO-OPS tide station over a date range. Returns time, height, and tide type (H=high, L=low) for each event when using the default hilo interval, or 6-minute interval predictions for a detailed tide curve. Datum defaults to MLLW (mean lower low water — standard for US nautical charts). Date range is limited to 1 year per request; split longer ranges across multiple calls. Use noaa_marine_find_stations first to resolve a station name or location to a numeric station ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
datumNoTidal datum reference plane. MLLW (default) is the US nautical chart datum. MSL = mean sea level; MHHW = mean higher high water (flooding reference).MLLW
unitsNoUnit system for heights: english = feet; metric = meters.english
end_dateYesEnd date in YYYYMMDD format (inclusive), e.g. "20240607".
intervalNoPrediction interval: hilo (default) returns only high and low tide events; 6min returns a continuous prediction curve at 6-minute intervals.hilo
time_zoneNoTime zone for returned timestamps. lst_ldt = local standard/daylight time (default); gmt = UTC; lst = local standard time year-round.lst_ldt
begin_dateYesStart date in YYYYMMDD format, e.g. "20240601".
station_idYesCO-OPS tide station ID (numeric, e.g. "9447130" for Seattle). Obtain from noaa_marine_find_stations with types=["tide"].

Output Schema

ParametersJSON Schema
NameRequiredDescription
datumYesTidal datum used (e.g. MLLW) — echoed for correct interpretation of heights.
unitsYesHeight units: "english" (feet) or "metric" (meters).
station_idYesStation ID echoed from the request — for chaining.
predictionsYesTide predictions for the requested date range.
station_nameYesStation name as returned by CO-OPS — confirms the correct station was queried.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds valuable context like the 1-year date range limit, datum default (MLLW), interval options, and time zone options. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise, front-loaded first sentence states core functionality. Every sentence adds value: purpose, interval distinction, datum note, date limit, prerequisite. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema and strong annotations, the description covers purpose, usage, constraints, and integrates with sibling tools. Could mention pagination or response format, but output schema fills that gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds minimal extra meaning beyond the schema (e.g., 'MLLW is standard for US nautical charts'), which is helpful but not significantly beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns high/low tide predictions for a CO-OPS station over a date range, specifying time, height, and tide type. It distinguishes between hilo and 6min intervals and mentions datum defaults. It differentiates from sibling tools by instructing to use noaa_marine_find_stations first.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use noaa_marine_find_stations to resolve a station name/location to a numeric ID. Notes the 1-year date range limit and advises splitting longer ranges across multiple calls, providing clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

noaa_marine_get_water_levelGet Water LevelA
Read-onlyIdempotent
Inspect

Observed water level (real-time or historical) for a CO-OPS water-level station, with paired predictions for comparison. The difference (residual = observed − predicted) indicates storm surge (positive) or anomalous drawdown (negative). Returns 6-minute observations alongside 6-minute predictions. Date range is limited to 31 days per request; split longer ranges into multiple calls. Use noaa_marine_find_stations first to resolve a station name or location to a valid station ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
datumNoTidal datum reference plane. MLLW (default) is the US nautical chart datum. MSL = mean sea level; MHHW = mean higher high water (flooding reference).MLLW
unitsNoUnit system: english = feet; metric = meters.english
end_dateYesEnd date in YYYYMMDD format (inclusive), e.g. "20240601".
time_zoneNoTime zone for returned timestamps. lst_ldt = local standard/daylight time (default); gmt = UTC; lst = local standard time year-round.lst_ldt
begin_dateYesStart date in YYYYMMDD format, e.g. "20240601".
station_idYesCO-OPS water-level station ID (numeric, e.g. "9447130" for Seattle). Obtain from noaa_marine_find_stations with types=["water_level"].

Output Schema

ParametersJSON Schema
NameRequiredDescription
datumYesTidal datum used — echoed for correct interpretation of water heights.
unitsYesHeight units: "english" (feet) or "metric" (meters).
station_idYesStation ID echoed from the request — for chaining.
predictionsYesPaired 6-minute tide predictions for the same period. May be empty if CO-OPS predictions are unavailable for this station.
observationsYes6-minute observed water level readings.
station_nameYesStation name as returned by CO-OPS.
residual_summaryNoSummary of observed-minus-predicted residuals in the requested units. Only present when both observations and predictions are available.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint and idempotentHint. The description adds useful behavioral details: returns 6-minute data, computes residual, and mentions date range limit. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with three sentences plus actionable guidance. It front-loads the core purpose and uses efficient language without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description adequately covers all essential aspects: data resolution, residual meaning, date range limits, and prerequisite station lookup. Nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context for station_id (how to obtain) and datum (explaining common datums), but most parameters already have clear schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns observed water levels with paired predictions, including the residual calculation. It specifies 6-minute observations and distinguishes itself from sibling tools by referencing noaa_marine_find_stations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use noaa_marine_find_stations first to obtain a valid station ID, and advises splitting date ranges longer than 31 days into multiple calls. While it does not explicitly state when not to use, the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources