mcpField
M
Mcp Wsdot

Mcp Wsdot

本地服务
github.com/michaelpeterswa地图与出行114 周前更新

关于 Mcp Wsdot

Mcp Wsdot 将 MCP 客户端连接到华盛顿州交通部 API。其工具提供当前时间,以及渡轮路线和航班时刻信息。

主要功能

  1. 01获取太平洋时区当前时间
  2. 02列出可用渡轮路线及编号
  3. 03按路线查询当日航班

适用场景

  1. 01查找渡轮路线及其编号
  2. 02查询某条路线的当日航班时间
  3. 03询问即将出发的渡轮班次

MCP 相关

Mcp Wsdot 是一个 MCP 服务,向 MCP 客户端提供时间和渡轮时刻工具。它支持 streamable HTTP、stdio 和旧版 SSE 传输方式。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

mcp-wsdot 标志

用于与华盛顿州交通部 API 交互的模型上下文协议服务

   wsdot 库   |   模型上下文协议   |   mcp-go

使用 Go 构建 使用 MCP 构建


开发

前置条件
  • 为获得最佳开发体验,请安装 bun,以便启动 MCP Inspector(使用 make mcp)
构建
  • 请使用 docker compose 在本地运行应用。
    • Docker Compose 使用说明:
      • docker compose up -d --build && docker compose logs -f -t

使用 docker-compose 运行,并访问 http://localhost:3000 中的 Grafana 查看指标和追踪信息。

传输方式

使用 TRANSPORT 环境变量选择传输方式:

TRANSPORT说明
streamablehttp默认。 当前的 MCP HTTP 传输方式。用于远程托管服务(例如在 Kubernetes 中)。
stdio供直接启动二进制文件的本地客户端使用(Claude Desktop、MCP Inspector)。
sse旧版 HTTP+SSE 传输方式。MCP 规范已弃用此方式,推荐使用 streamablehttp;仅为较旧的客户端保留。

streamablehttp 和 sse 接受以下额外配置:

变量默认值说明
HTTP_PORT8080监听端口。(为保持向后兼容,如果未设置 HTTP_PORT,仍会使用 SSE_PORT。)
HTTP_PATH/mcpMCP 端点的服务路径(仅适用于 streamablehttp)。
MCP_AUTH_TOKEN(未设置)设置后,每个 MCP 请求都必须发送 Authorization: Bearer <token>。未设置则禁用身份验证。
MCP_STATELESSfalse禁用会话跟踪,以便请求可以在多个副本间进行负载均衡,而无需粘性会话。
MCP_HEARTBEAT_INTERVAL30s空闲流的保活间隔(有助于穿过代理/入口)。设为零可禁用。
SHUTDOWN_TIMEOUT15s收到 SIGTERM 后,排空正在处理的请求所需的宽限时间。

HTTP 传输方式还提供两个无需身份验证的健康检查端点,供 Kubernetes 探针使用:GET /healthz(存活状态)和 GET /readyz(就绪状态)。

远程托管(Kubernetes)

若要在集群中托管此服务,供远程客户端使用,请使用 TRANSPORT=streamablehttp(默认值)和 bearer token 运行容器:

docker run -p 8080:8080 \
  -e WSDOT_API_KEY=<your-key> \
  -e TRANSPORT=streamablehttp \
  -e MCP_AUTH_TOKEN=<a-long-random-token> \
  ghcr.io/michaelpeterswa/mcp-wsdot:latest

客户端随后通过 streamable HTTP 传输方式连接到 http://<host>:8080/mcp,并在 Authorization: Bearer 标头中发送令牌。例如, OpenClaw 远程 MCP 服务条目:

{
  "mcpServers": {
    "wsdot": {
      "transport": "streamable-http",
      "url": "https://wsdot.example.com/mcp",
      "headers": { "Authorization": "Bearer <a-long-random-token>" }
    }
  }
}

有关部署指南——探针路径、端口以及完整的环境变量 参考信息——请参阅上表。容器监听 :8080 (MCP)和 :8081(启用 METRICS_ENABLED=true 时的 Prometheus 指标),以非 root 用户身份运行,并在收到 SIGTERM 时平稳排空请求。

当前工具

工具描述
get_current_time获取 PDT/PST 时区的当前时间
get_route_schedules获取可用渡轮航线的名称和路线 ID
get_schedules_today_by_route_id根据路线 ID 获取该航线的航行时间

MacOS 二进制文件说明

如果你从 releases 页面下载二进制文件并在 MacOS 上运行,则需要解除隔离,以免出现安全警告。为此,请运行以下命令:

xattr -rd com.apple.quarantine <path-to-binary>

示例问题

西雅图至布雷默顿渡轮航线接下来三班船分别是什么时候?今晚最晚能搭哪班船返回?

向 Claude Desktop 3.7 Sonnet 提问

我来帮你查询西雅图至布雷默顿航线接下来的三班船,以及今晚最晚的返程班次。让我查一下当前的渡轮时刻表。

现在我已经获取了航线信息,接下来让我查看西雅图至布雷默顿渡轮航线的具体时刻表:

根据时刻表信息,以下是你要查询的详情:

从西雅图出发的接下来三班船:
  1. 今天(2025 年 4 月 20 日)下午 12:20 - 船舶:Walla Walla
  2. 今天(2025 年 4 月 20 日)下午 2:50 - 船舶:Walla Walla
  3. 今天(2025 年 4 月 20 日)下午 5:30 - 船舶:Walla Walla
今晚从布雷默顿返回西雅图的最晚班次:

今晚从布雷默顿开往西雅图的最晚一班船是晚上 11:40(23:40)- 船舶:Walla Walla

所有班次均由 Walla Walla 号运营,该船可供残障人士使用。此时刻表 >属于 2025 年春季服务期,运营时间为 2025 年 3 月 23 日至 6 月 14 日。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。