Surf MCP Server

Surf MCP Server

site icon
2025.01.15 12
Python潮汐信息冲浪服务位置服务
Surf MCP Server 是一个为冲浪者和网络用户设计的MCP服务器,主要用于获取特定位置的潮汐信息。它支持通过经纬度查询潮汐数据,包括高低潮时间和潮汐高度,并自动处理时区信息。该服务适用于冲浪爱好者、海洋研究人员以及需要潮汐数据的开发者。
View on GitHub

Overview

基本能力

产品定位

Surf MCP Server 是一个为冲浪者和网络用户设计的MCP服务器,主要用于获取特定位置的潮汐信息。

核心功能

  • 使用经纬度获取任何位置的潮汐信息
  • 支持特定日期的潮汐查询
  • 提供详细的潮汐数据,包括高低潮时间和站点信息
  • 自动处理时区信息(UTC)

适用场景

  • 冲浪爱好者寻找最佳冲浪时间
  • 海洋研究人员获取潮汐数据
  • 开发者需要集成潮汐信息的应用

工具列表

  • get_tides:获取特定位置和日期的潮汐信息

常见问题解答

  • API请求失败
  • 无效的坐标
  • 缺失或无效的API密钥
  • 网络超时

使用教程

使用依赖

  • Python 3.x
  • Storm Glass API key

安装教程

  1. 克隆仓库:
git clone https://github.com/ravinahp/surf-mcp.git
cd surf-mcp
  1. 安装依赖:
uv sync

调试方式

使用MCP Inspector进行调试:

npx @modelcontextprotocol/inspector uv --directory /path/to/surf-mcp run surf-mcp

部署

构建

  1. 同步依赖并更新锁文件:
uv sync
  1. 构建包:
uv build

配置

修改Claude桌面配置文件,添加以下配置:

{
    "surf-mcp": {
        "command": "uv",
        "args": [
            "--directory",
            "/Users/YOUR_USERNAME/Code/surf-mcp",
            "run",
            "surf-mcp"
        ],
        "env": {
            "STORMGLASS_API_KEY": "your_api_key_here"
        }
    }
}

使用示例

获取潮汐信息

@mcp.tool()
async def get_tides(latitude: float, longitude: float, date: str) -> str:
    """Get tide information for a specific location and date."""

参数

  • latitude:纬度
  • longitude:经度
  • date:日期(YYYY-MM-DD格式)

示例响应

Tide Times:
Time: 2024-01-20T00:30:00+00:00 (UTC)
Type: HIGH tide
Height: 1.52m

Time: 2024-01-20T06:45:00+00:00 (UTC)
Type: LOW tide
Height: 0.25m

Station Information:
Name: Sample Station
Distance: 20.5km from requested location

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。