关于 Mcp Wsdot
Mcp Wsdot 将 MCP 客户端连接到华盛顿州交通部 API。其工具提供当前时间,以及渡轮路线和航班时刻信息。
主要功能
- 01获取太平洋时区当前时间
- 02列出可用渡轮路线及编号
- 03按路线查询当日航班
适用场景
- 01查找渡轮路线及其编号
- 02查询某条路线的当日航班时间
- 03询问即将出发的渡轮班次
MCP 相关
Mcp Wsdot 是一个 MCP 服务,向 MCP 客户端提供时间和渡轮时刻工具。它支持 streamable HTTP、stdio 和旧版 SSE 传输方式。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
用于与华盛顿州交通部 API 交互的模型上下文协议服务
开发
前置条件
- 为获得最佳开发体验,请安装 bun,以便启动 MCP Inspector(使用
make mcp)
构建
- 请使用
docker compose在本地运行应用。- Docker Compose 使用说明:
docker compose up -d --build && docker compose logs -f -t
- Docker Compose 使用说明:
使用 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_PORT | 8080 | 监听端口。(为保持向后兼容,如果未设置 HTTP_PORT,仍会使用 SSE_PORT。) |
HTTP_PATH | /mcp | MCP 端点的服务路径(仅适用于 streamablehttp)。 |
MCP_AUTH_TOKEN | (未设置) | 设置后,每个 MCP 请求都必须发送 Authorization: Bearer <token>。未设置则禁用身份验证。 |
MCP_STATELESS | false | 禁用会话跟踪,以便请求可以在多个副本间进行负载均衡,而无需粘性会话。 |
MCP_HEARTBEAT_INTERVAL | 30s | 空闲流的保活间隔(有助于穿过代理/入口)。设为零可禁用。 |
SHUTDOWN_TIMEOUT | 15s | 收到 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 提问
我来帮你查询西雅图至布雷默顿航线接下来的三班船,以及今晚最晚的返程班次。让我查一下当前的渡轮时刻表。
现在我已经获取了航线信息,接下来让我查看西雅图至布雷默顿渡轮航线的具体时刻表:
根据时刻表信息,以下是你要查询的详情:
从西雅图出发的接下来三班船:
- 今天(2025 年 4 月 20 日)下午 12:20 - 船舶:Walla Walla
- 今天(2025 年 4 月 20 日)下午 2:50 - 船舶:Walla Walla
- 今天(2025 年 4 月 20 日)下午 5:30 - 船舶:Walla Walla
今晚从布雷默顿返回西雅图的最晚班次:
今晚从布雷默顿开往西雅图的最晚一班船是晚上 11:40(23:40)- 船舶:Walla Walla
所有班次均由 Walla Walla 号运营,该船可供残障人士使用。此时刻表 >属于 2025 年春季服务期,运营时间为 2025 年 3 月 23 日至 6 月 14 日。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。