Servidor MCP de LocalTides
Este es un servidor MCP (Protocolo de contexto de modelo) que proporciona herramientas para interactuar con la API de mareas y corrientes de la NOAA utilizando el marco FastMCP.
Características
Recuperación de datos de nivel de agua (en tiempo real e históricos)
Predicciones de mareas (altas/bajas o basadas en intervalos)
Datos actuales (en tiempo real e históricos)
Predicciones actuales
Recuperación de metadatos de la estación
Viento, temperatura del aire, temperatura del agua y otros datos meteorológicos
Información sobre las fases lunares (pasadas, presentes y futuras)
Datos de salida/puesta del sol y posición (pasado, presente y futuro)
Prerrequisitos
Node.js (v18 o superior)
npm o hilo
Configuración
Instalación mediante herrería
Para instalar NOAA Tides and Currents para Claude Desktop automáticamente a través de Smithery :
Instalación manual
Clonar este repositorio
Instalar dependencias
Construir el código TypeScript
Iniciar el servidor
Uso
Este servidor MCP se puede utilizar con cualquier host MCP como Claude Desktop, lo que le permite utilizar la API de mareas y corrientes de la NOAA a través del protocolo MCP.
También puedes probarlo directamente usando la herramienta de línea de comandos fastmcp
:
O bien, puede utilizar el Inspector MCP:
Herramientas disponibles
Definiciones de parámetros
get_parameter_definitions
: obtiene información sobre los valores de parámetros válidos para las solicitudes de API de NOAAParámetros:
parameter
(cadena, opcional): Tipo de parámetro del que se obtiene información (zonas horarias, datos, unidades, intervalos de marea, intervalos de corriente, tipos de velocidad, productos, tipos de estación, formatos de fecha y formatos de salida). Si no se proporciona, se devuelve información sobre todos los tipos de parámetro.
Niveles de agua
get_water_levels
- Obtener datos del nivel de agua para una estaciónParámetros:
station
(cadena) - ID de la estacióndate
(cadena, opcional): fecha para la que se recuperarán los datos ("hoy", "más reciente", "reciente" o fecha específica)begin_date
(cadena, opcional) - Fecha de inicio (AAAAMMDD o MM/DD/AAAA)end_date
(cadena, opcional) - Fecha de finalización (AAAAMMDD o MM/DD/AAAA)range
(número, opcional) - Número de horas para recuperar datosdatum
(cadena, opcional) - Dato a utilizar (MLLW, MSL, etc.)units
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")time_zone
(cadena, opcional) - Zona horaria (gmt, lst, lst_ldt)format
(cadena, opcional) - Formato de salida (json, xml, csv)
Predicciones de mareas
get_tide_predictions
- Obtener datos de predicción de mareasParámetros:
station
(cadena) - ID de la estaciónbegin_date
(cadena) - Fecha de inicio (AAAAMMDD o MM/DD/AAAA)end_date
(cadena) - Fecha de finalización (AAAAMMDD o MM/DD/AAAA)datum
(cadena, opcional) - Dato a utilizar (MLLW, MSL, etc.)units
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")time_zone
(cadena, opcional) - Zona horaria (gmt, lst, lst_ldt)interval
(cadena, opcional) - Intervalo (hilo, hl, h o un número para minutos)format
(cadena, opcional) - Formato de salida (json, xml, csv)
Corrientes
get_currents
- Obtener datos de corrientes para una estaciónParámetros:
station
(cadena) - ID de la estacióndate
(cadena, opcional): fecha para la que se recuperarán los datos ("hoy", "más reciente", "reciente" o fecha específica)begin_date
(cadena, opcional) - Fecha de inicio (AAAAMMDD o MM/DD/AAAA)end_date
(cadena, opcional) - Fecha de finalización (AAAAMMDD o MM/DD/AAAA)bin
(número, opcional) - Número de contenedorunits
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")time_zone
(cadena, opcional) - Zona horaria (gmt, lst, lst_ldt)format
(cadena, opcional) - Formato de salida (json, xml, csv)
Predicciones actuales
get_current_predictions
- Obtener predicciones actualesParámetros:
station
(cadena) - ID de la estacióndate
(cadena, opcional): fecha para la que se recuperarán los datos ("hoy", "más reciente", "reciente" o fecha específica)begin_date
(cadena, opcional) - Fecha de inicio (AAAAMMDD o MM/DD/AAAA)end_date
(cadena, opcional) - Fecha de finalización (AAAAMMDD o MM/DD/AAAA)bin
(número, opcional) - Número de contenedorinterval
(cadena, opcional) - Intervalo (MAX_SLACK o un número para minutos)vel_type
(cadena, opcional) - Tipo de velocidad (speed_dir o predeterminado)units
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")time_zone
(cadena, opcional) - Zona horaria (gmt, lst, lst_ldt)format
(cadena, opcional) - Formato de salida (json, xml, csv)
Datos meteorológicos
get_meteorological_data
- Obtener datos meteorológicosParámetros:
station
(cadena) - ID de la estaciónproduct
(cadena) - Producto (temperatura del aire, viento, etc.)date
(cadena, opcional): fecha para la que se recuperarán los datos ("hoy", "más reciente", "reciente" o fecha específica)begin_date
(cadena, opcional) - Fecha de inicio (AAAAMMDD o MM/DD/AAAA)end_date
(cadena, opcional) - Fecha de finalización (AAAAMMDD o MM/DD/AAAA)units
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")time_zone
(cadena, opcional) - Zona horaria (gmt, lst, lst_ldt)format
(cadena, opcional) - Formato de salida (json, xml, csv)
Información de la estación
get_stations
- Obtener lista de estacionesParámetros:
type
(cadena, opcional) - Tipo de estación (niveles de agua, corrientes, etc.)units
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")format
(cadena, opcional) - Formato de salida (json, xml)
get_station_details
- Obtener información detallada sobre una estaciónParámetros:
station
(cadena) - ID de la estaciónunits
(cadena, opcional) - Unidades a utilizar ("inglés" o "métrico")format
(cadena, opcional) - Formato de salida (json, xml)
Información sobre las fases lunares
get_moon_phase
- Obtener información de la fase lunar para una fecha específicaParámetros:
date
(cadena, opcional): Fecha para obtener la fase lunar (formato AAAA-MM-DD). El valor predeterminado es la fecha actual.latitude
(número, opcional) - Latitud para cálculos específicos de la ubicaciónlongitude
(número, opcional) - Longitud para cálculos específicos de la ubicaciónformat
(cadena, opcional) - Formato de salida (json o texto)
get_moon_phases_range
: obtiene información de las fases lunares para un rango de fechasParámetros:
start_date
(cadena) - Fecha de inicio (formato AAAA-MM-DD)end_date
(cadena) - Fecha de finalización (formato AAAA-MM-DD)latitude
(número, opcional) - Latitud para cálculos específicos de la ubicaciónlongitude
(número, opcional) - Longitud para cálculos específicos de la ubicaciónformat
(cadena, opcional) - Formato de salida (json o texto)
get_next_moon_phase
- Obtener las próximas ocurrencias de una fase lunar específicaParámetros:
phase
(cadena) - Fase lunar a encontrar (Luna nueva, Cuarto creciente, Luna llena, Cuarto menguante)date
(cadena, opcional): Fecha de inicio (formato AAAA-MM-DD). El valor predeterminado es la fecha actual.count
(número, opcional): Número de ocurrencias a devolver. El valor predeterminado es 1.format
(cadena, opcional) - Formato de salida (json o texto)
Información sobre la salida y puesta del sol
get_sun_times
: obtiene la hora de salida y puesta del sol y otros eventos solares para una fecha y ubicación específicasParámetros:
date
(cadena, opcional): Fecha para obtener la hora del sol (formato AAAA-MM-DD). El valor predeterminado es la fecha actual.latitude
(número) - Latitud para cálculos específicos de la ubicaciónlongitude
(número) - Longitud para cálculos específicos de la ubicaciónformat
(cadena, opcional) - Formato de salida (json o texto)timezone
(cadena, opcional): Zona horaria de los resultados. El valor predeterminado es UTC.
get_sun_times_range
: obtiene las horas de salida y puesta del sol y otros eventos solares para un rango de fechas y una ubicaciónParámetros:
start_date
(cadena) - Fecha de inicio (formato AAAA-MM-DD)end_date
(cadena) - Fecha de finalización (formato AAAA-MM-DD)latitude
(número) - Latitud para cálculos específicos de la ubicaciónlongitude
(número) - Longitud para cálculos específicos de la ubicaciónformat
(cadena, opcional) - Formato de salida (json o texto)timezone
(cadena, opcional): Zona horaria de los resultados. El valor predeterminado es UTC.
get_sun_position
: obtiene información sobre la posición del sol para una fecha, hora y ubicación específicasParámetros:
date
(cadena, opcional): Fecha para obtener la posición del sol (formato AAAA-MM-DD). El valor predeterminado es la fecha actual.time
(cadena, opcional): Hora para obtener la posición del sol (formato HH:MM:SS). El valor predeterminado es la hora actual.latitude
(número) - Latitud para cálculos específicos de la ubicaciónlongitude
(número) - Longitud para cálculos específicos de la ubicaciónformat
(cadena, opcional) - Formato de salida (json o texto)
get_next_sun_event
- Obtener las próximas ocurrencias de un evento solar específicoParámetros:
event
(cadena) - Evento solar a buscar (amanecer, atardecer, amanecer, anochecer, mediodía solar, etc.)date
(cadena, opcional): Fecha de inicio (formato AAAA-MM-DD). El valor predeterminado es la fecha actual.latitude
(número) - Latitud para cálculos específicos de la ubicaciónlongitude
(número) - Longitud para cálculos específicos de la ubicacióncount
(número, opcional): Número de ocurrencias a devolver. El valor predeterminado es 1.format
(cadena, opcional) - Formato de salida (json o texto)timezone
(cadena, opcional): Zona horaria de los resultados. El valor predeterminado es UTC.
Documentación de la API
La documentación de la API de mareas y corrientes de la NOAA se puede encontrar en:
API de datos CO-OPS: https://api.tidesandcurrents.noaa.gov/api/prod/
API de metadatos de CO-OPS: https://api.tidesandcurrents.noaa.gov/mdapi/prod/
API de producto derivado de CO-OPS: https://api.tidesandcurrents.noaa.gov/dpapi/prod/
Licencia
Instituto Tecnológico de Massachusetts (MIT)
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Este servidor proporciona herramientas para interactuar con la API de mareas y corrientes de la NOAA, lo que permite el acceso a datos de nivel de agua, predicciones de mareas, datos de corrientes, información de estaciones e información astronómica como fases lunares y horas solares.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityThis is an MCP (Model Context Protocol) server that provides tools for interacting with the NOAA Tides and Currents API.Last updated -2444MIT License
- AsecurityAlicenseAqualityFetches tide information for any location using latitude and longitude, providing detailed tide data including high/low tides and station information with automatic UTC time zone handling.Last updated -115MIT License
- -securityFlicense-qualityA standardized API server that enables AI agents and client applications to fetch current weather information for any location without directly interacting with external weather APIs.Last updated -
- AsecurityFlicenseAqualityProvides tools to fetch real-time weather data from the National Weather Service API, allowing users to retrieve weather alerts by state and detailed forecasts by coordinates.Last updated -2126