LocalTides MCP Server
This server provides tools for interacting with the NOAA Tides and Currents API, enabling access to water level data, tide predictions, currents data, station information, and astronomical information like moon phases and sun times.
Tools
get_water_levels
Get water level data for a station
get_tide_predictions
Get tide prediction data
get_currents
Get currents data for a station
get_current_predictions
Get current predictions
get_meteorological_data
Get meteorological data
get_stations
Get list of stations
get_station_details
Get detailed information about a station
get_moon_phase
Get moon phase information for a specific date
get_moon_phases_range
Get moon phase information for a date range
get_next_moon_phase
Get the next occurrence(s) of a specific moon phase
get_sun_times
Get sun rise/set and other sun event times for a specific date and location
get_sun_times_range
Get sun rise/set and other sun event times for a date range and location
get_sun_position
Get sun position information for a specific date, time, and location
get_next_sun_event
Get the next occurrence(s) of a specific sun event
get_parameter_definitions
Get information about valid parameter values for NOAA API requests
README
LocalTides MCP Server
This is an MCP (Model Context Protocol) server that provides tools for interacting with the NOAA Tides and Currents API using the FastMCP framework.
Features
- Water Level data retrieval (real-time and historical)
- Tide Predictions (high/low or interval-based)
- Currents data (real-time and historical)
- Current predictions
- Station metadata retrieval
- Wind, air temperature, water temperature, and other meteorological data
- Moon phase information (past, present, and future)
- Sun rise/set and position data (past, present, and future)
Prerequisites
- Node.js (v18 or higher)
- npm or yarn
Setup
Installing via Smithery
To install NOAA Tides and Currents for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @RyanCardin15/tidesandcurrents --client claude
Manual Installation
- Clone this repository
- Install dependencies
npm install
- Build the TypeScript code
npm run build
- Start the server
npm start
Usage
This MCP server can be used with any MCP host such as Claude Desktop, which allows you to use the NOAA Tides and Currents API through the MCP protocol.
You can also test it directly using the fastmcp command-line tool:
npx fastmcp dev dist/index.js
Or, you can use the MCP Inspector:
npx fastmcp inspect dist/index.js
Available Tools
Parameter Definitions
get_parameter_definitions- Get information about valid parameter values for NOAA API requests- Parameters:
parameter(string, optional) - Parameter type to get information about (time_zones, datums, units, tide_intervals, current_intervals, velocity_types, products, station_types, date_formats, output_formats). If not provided, returns information about all parameter types.
- Parameters:
Water Levels
get_water_levels- Get water level data for a station- Parameters:
station(string) - Station IDdate(string, optional) - Date to retrieve data for ("today", "latest", "recent", or specific date)begin_date(string, optional) - Start date (YYYYMMDD or MM/DD/YYYY)end_date(string, optional) - End date (YYYYMMDD or MM/DD/YYYY)range(number, optional) - Number of hours to retrieve data fordatum(string, optional) - Datum to use (MLLW, MSL, etc.)units(string, optional) - Units to use ("english" or "metric")time_zone(string, optional) - Time zone (gmt, lst, lst_ldt)format(string, optional) - Output format (json, xml, csv)
- Parameters:
Tide Predictions
get_tide_predictions- Get tide prediction data- Parameters:
station(string) - Station IDbegin_date(string) - Start date (YYYYMMDD or MM/DD/YYYY)end_date(string) - End date (YYYYMMDD or MM/DD/YYYY)datum(string, optional) - Datum to use (MLLW, MSL, etc.)units(string, optional) - Units to use ("english" or "metric")time_zone(string, optional) - Time zone (gmt, lst, lst_ldt)interval(string, optional) - Interval (hilo, hl, h, or a number for minutes)format(string, optional) - Output format (json, xml, csv)
- Parameters:
Currents
get_currents- Get currents data for a station- Parameters:
station(string) - Station IDdate(string, optional) - Date to retrieve data for ("today", "latest", "recent", or specific date)begin_date(string, optional) - Start date (YYYYMMDD or MM/DD/YYYY)end_date(string, optional) - End date (YYYYMMDD or MM/DD/YYYY)bin(number, optional) - Bin numberunits(string, optional) - Units to use ("english" or "metric")time_zone(string, optional) - Time zone (gmt, lst, lst_ldt)format(string, optional) - Output format (json, xml, csv)
- Parameters:
Current Predictions
get_current_predictions- Get current predictions- Parameters:
station(string) - Station IDdate(string, optional) - Date to retrieve data for ("today", "latest", "recent", or specific date)begin_date(string, optional) - Start date (YYYYMMDD or MM/DD/YYYY)end_date(string, optional) - End date (YYYYMMDD or MM/DD/YYYY)bin(number, optional) - Bin numberinterval(string, optional) - Interval (MAX_SLACK or a number for minutes)vel_type(string, optional) - Velocity type (speed_dir or default)units(string, optional) - Units to use ("english" or "metric")time_zone(string, optional) - Time zone (gmt, lst, lst_ldt)format(string, optional) - Output format (json, xml, csv)
- Parameters:
Meteorological Data
get_meteorological_data- Get meteorological data- Parameters:
station(string) - Station IDproduct(string) - Product (air_temperature, wind, etc.)date(string, optional) - Date to retrieve data for ("today", "latest", "recent", or specific date)begin_date(string, optional) - Start date (YYYYMMDD or MM/DD/YYYY)end_date(string, optional) - End date (YYYYMMDD or MM/DD/YYYY)units(string, optional) - Units to use ("english" or "metric")time_zone(string, optional) - Time zone (gmt, lst, lst_ldt)format(string, optional) - Output format (json, xml, csv)
- Parameters:
Station Information
-
get_stations- Get list of stations- Parameters:
type(string, optional) - Station type (waterlevels, currents, etc.)units(string, optional) - Units to use ("english" or "metric")format(string, optional) - Output format (json, xml)
- Parameters:
-
get_station_details- Get detailed information about a station- Parameters:
station(string) - Station IDunits(string, optional) - Units to use ("english" or "metric")format(string, optional) - Output format (json, xml)
- Parameters:
Moon Phase Information
-
get_moon_phase- Get moon phase information for a specific date- Parameters:
date(string, optional) - Date to get moon phase for (YYYY-MM-DD format). Defaults to current date.latitude(number, optional) - Latitude for location-specific calculationslongitude(number, optional) - Longitude for location-specific calculationsformat(string, optional) - Output format (json or text)
- Parameters:
-
get_moon_phases_range- Get moon phase information for a date range- Parameters:
start_date(string) - Start date (YYYY-MM-DD format)end_date(string) - End date (YYYY-MM-DD format)latitude(number, optional) - Latitude for location-specific calculationslongitude(number, optional) - Longitude for location-specific calculationsformat(string, optional) - Output format (json or text)
- Parameters:
-
get_next_moon_phase- Get the next occurrence(s) of a specific moon phase- Parameters:
phase(string) - Moon phase to find (New Moon, First Quarter, Full Moon, Last Quarter)date(string, optional) - Starting date (YYYY-MM-DD format). Defaults to current date.count(number, optional) - Number of occurrences to return. Defaults to 1.format(string, optional) - Output format (json or text)
- Parameters:
Sun Rise/Set Information
-
get_sun_times- Get sun rise/set and other sun event times for a specific date and location- Parameters:
date(string, optional) - Date to get sun times for (YYYY-MM-DD format). Defaults to current date.latitude(number) - Latitude for location-specific calculationslongitude(number) - Longitude for location-specific calculationsformat(string, optional) - Output format (json or text)timezone(string, optional) - Timezone for the results. Defaults to UTC.
- Parameters:
-
get_sun_times_range- Get sun rise/set and other sun event times for a date range and location- Parameters:
start_date(string) - Start date (YYYY-MM-DD format)end_date(string) - End date (YYYY-MM-DD format)latitude(number) - Latitude for location-specific calculationslongitude(number) - Longitude for location-specific calculationsformat(string, optional) - Output format (json or text)timezone(string, optional) - Timezone for the results. Defaults to UTC.
- Parameters:
-
get_sun_position- Get sun position information for a specific date, time, and location- Parameters:
date(string, optional) - Date to get sun position for (YYYY-MM-DD format). Defaults to current date.time(string, optional) - Time to get sun position for (HH:MM:SS format). Defaults to current time.latitude(number) - Latitude for location-specific calculationslongitude(number) - Longitude for location-specific calculationsformat(string, optional) - Output format (json or text)
- Parameters:
-
get_next_sun_event- Get the next occurrence(s) of a specific sun event- Parameters:
event(string) - Sun event to find (sunrise, sunset, dawn, dusk, solarNoon, etc.)date(string, optional) - Starting date (YYYY-MM-DD format). Defaults to current date.latitude(number) - Latitude for location-specific calculationslongitude(number) - Longitude for location-specific calculationscount(number, optional) - Number of occurrences to return. Defaults to 1.format(string, optional) - Output format (json or text)timezone(string, optional) - Timezone for the results. Defaults to UTC.
- Parameters:
API Documentation
NOAA Tides and Currents API documentation can be found at:
- CO-OPS Data API: https://api.tidesandcurrents.noaa.gov/api/prod/
- CO-OPS Metadata API: https://api.tidesandcurrents.noaa.gov/mdapi/prod/
- CO-OPS Derived Product API: https://api.tidesandcurrents.noaa.gov/dpapi/prod/
License
MIT
<a href="https://glama.ai/mcp/servers/ro2rz2c734"> <img width="380" height="200" src="https://glama.ai/mcp/servers/ro2rz2c734/badge" />
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。