关于 SF Muni Real-Time Transit
SF Muni Real-Time Transit 通过托管的 MCP 服务提供 Muni 路线、发车信息、线路详情、警报、车辆位置和时刻表。它面向需要旧金山实时交通信息的乘客及 MCP 客户端,请求需使用 511.org API 密钥。
主要功能
- 01列出 Muni 路线
- 02查询实时发车信息
- 03查看线路详情和站点
- 04查询服务警报
- 05查看车辆 GPS 位置和时刻表
适用场景
- 01查询 Muni 站点的发车时间
- 02查看路线站点和线路详情
- 03出行前查看交通警报
- 04查看车辆位置或线路时刻表
MCP 相关
托管的 Muni MCP 服务提供路线、发车、线路详情、警报、车辆位置、时刻表及 511 运营方相关工具。客户端通过`x-api-key-511`请求头提供 511.org API 密钥。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://muni-mcp.srivastsh.workers.dev/mcpclaude mcp add --transport http srivastsh-muni https://muni-mcp.srivastsh.workers.dev/mcp{"mcpServers":{"srivastsh-muni":{"type":"http","url":"https://muni-mcp.srivastsh.workers.dev/mcp"}}}在 Cursor 中打开{"servers":{"srivastsh-muni":{"type":"http","url":"https://muni-mcp.srivastsh.workers.dev/mcp"}}}在 VS Code 中打开{"mcpServers":{"srivastsh-muni":{"type":"http","url":"https://muni-mcp.srivastsh.workers.dev/mcp"}}}{"mcpServers":{"srivastsh-muni":{"serverUrl":"https://muni-mcp.srivastsh.workers.dev/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://muni-mcp.srivastsh.workers.dev/mcp需要授权工具
详细介绍
湾区公共交通 MCP 服务
两个 Cloudflare Workers,为 BART 和 SF Muni 实时公共交通数据提供 MCP(Model Context Protocol)访问。适用于 Claude、ChatGPT、Poke、Cursor 以及任何兼容 MCP 的客户端。
无需部署任何内容。 只需让 MCP 客户端连接到以下托管端点。
在线端点
- BART:
https://bart-mcp.srivastsh.workers.dev/mcp— 无需身份验证,直接连接 - Muni:
https://muni-mcp.srivastsh.workers.dev/mcp— 通过x-api-key-511标头传入免费的 511.org API 密钥
这些服务运行在 Cloudflare Workers 免费套餐上(每天 100k 次请求)。由于 Muni 服务使用 BYOK 身份验证,每位用户的 511 速率限制仅适用于自己的密钥。
快速开始
BART(无需身份验证)
只需将 URL 添加到 MCP 客户端。无需 API 密钥。
Muni(BYOK)
- 在 https://511.org/open-data/token 获取免费的 511.org API 密钥
- 在 MCP 配置中通过
x-api-key-511标头传入密钥
客户端配置
Claude Desktop / Claude Code
{
"mcpServers": {
"bart": {
"url": "https://bart-mcp.srivastsh.workers.dev/mcp"
},
"muni": {
"url": "https://muni-mcp.srivastsh.workers.dev/mcp",
"headers": {
"x-api-key-511": "YOUR_511_API_KEY"
}
}
}
}
Poke
也可以手动添加为远程 MCP 服务:
- URL:
https://bart-mcp.srivastsh.workers.dev/mcp或https://muni-mcp.srivastsh.workers.dev/mcp - 对于 Muni,将自定义标头
x-api-key-511设置为你的 511 密钥
Cursor / Windsurf / 仅支持 stdio 的客户端
使用 mcp-remote 作为桥接:
{
"mcpServers": {
"bart": {
"command": "npx",
"args": ["-y", "@anthropic-ai/mcp-remote", "https://bart-mcp.srivastsh.workers.dev/mcp"]
},
"muni": {
"command": "npx",
"args": [
"-y", "@anthropic-ai/mcp-remote",
"https://muni-mcp.srivastsh.workers.dev/mcp",
"--header", "x-api-key-511:YOUR_511_API_KEY"
]
}
}
}
可用工具
BART(5 个工具)
| 工具 | 描述 |
|---|---|
bart_stations | 列出所有 BART 车站及其代码 |
bart_departures | 查询某车站的实时出发信息 |
bart_trip | 规划两个车站之间的行程 |
bart_advisories | 当前服务公告 |
bart_fare | 查询两个车站之间的票价 |
Muni(7 个工具)
| 工具 | 描述 |
|---|---|
transit_operators | 列出所有 511 公共交通运营商 |
muni_routes | 列出所有 Muni 线路 |
muni_departures | 查询某站点的实时出发信息 |
muni_line | 线路详情及站点 |
muni_alerts | 当前服务警报 |
muni_vehicles | 实时车辆 GPS 位置 |
muni_schedule | 某条线路的时刻表 |
部署你自己的实例
大多数用户无需部署,直接使用上面的托管端点即可。但如果你想部署自己的实例:
先决条件
- Node.js 18+
- Cloudflare 账号(免费套餐即可)
wranglerCLI:npm install -g wrangler
BART Worker
cd bart-mcp
npm install
wrangler login
wrangler deploy
公开的 BART 演示密钥(MW9S-E7SL-26DU-VV8V)已写入 wrangler.toml。无需配置密钥。
Muni Worker
cd muni-mcp
npm install
wrangler deploy
也可以设置备用 511 密钥(未提供标头密钥时使用):
wrangler secret put API_511_KEY
架构
- 运行时:Cloudflare Workers(V8 隔离环境)
- 传输方式:
WebStandardStreamableHTTPServerTransport(无状态,每个请求使用一个服务) - 身份验证:通过请求标头使用 BYOK,可选环境变量密钥作为备用
- 验证:使用 Zod schema 验证所有工具输入
- CORS:允许所有来源
- API 来源:api.bart.gov(BART)、api.511.org(Muni/511)
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。