Vancam

io.github.shughestr由 GitHub 账号 shughestr 发布v0.1.0更新于 Oct 24, 2026

Search 1M+ live traffic cameras worldwide by bounds, radius, route, or nearest point.

已验证STDIO仅桌面位置与生活媒体与设计

概览

AI 生成的概览

让助手按地图范围、半径、路线或最近点搜索全球超过一百万个实时交通摄像头,并获取实时画面。

可以做什么
提供多种工具:按边界框列出摄像头、查找某点半径内的摄像头、查找两点之间直线走廊沿线的摄像头,以及获取离某点最近的摄像头。另有工具可按资产 ID 获取摄像头实时画面,并将图像数据直接返回在工具结果中。还有一个文档工具说明各种搜索方式、摄像头字段和图像 URL 格式。结果包含 asset_id、经纬度、街道地址、朝向、摄像头类别和地区层级等字段。
适用场景
当助手需要某地点、走廊或路线附近的实时路况或交通摄像头信息时适用,例如查看某点附近或沿途的路况。也适合需要把实时摄像头画面直接返回对话,而不只是给出链接的场景。
运行要求
以 Python 包形式在本地运行(uvx vancam-mcp 或 pip install vancam-mcp),通过 stdio 通信,并在 Claude Desktop、Claude Code 等 MCP 客户端中注册。需要能访问 Vancam API 的网络。可选的环境变量 VANCAM_API_KEY 可提高速率上限;不设置时使用共享的限速密钥。
安装前请注意
可选的 VANCAM_API_KEY 属于个人凭据,应通过环境变量提供,不要写入配置文件。搜索和图像请求会发往第三方 Vancam API,因此查询位置会发送给该服务。共享匿名密钥为多人共用且有限速(约每秒 1 次请求、每月 500 次),高频使用可能被限流。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Vancam,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Vancam MCP Server

Vancam.ai — Traffic Cameras & Road Conditions — as an MCP (Model Context Protocol) server. Gives AI agents live access to the same camera network behind Vancam's road-condition data: over 1 million traffic cameras worldwide, searchable by map bounds, radius, route, or nearest point.

  • 🔍 Search cameras by bounding box, radius, route corridor, or nearest-to-point
  • 📸 Fetch live frames by camera asset ID, returned directly in the tool result
  • 🌐 Real-time data from the same backend that powers the Vancam.ai map
  • 🤖 AI-ready — built with FastMCP, works with Claude Desktop, Claude Code, and any MCP-compatible client

Quick Start

Option A: Install from PyPI

bash
uvx vancam-mcp   # or: pip install vancam-mcp

Option B: Clone and install dependencies

bash
git clone https://github.com/shughestr/vancam-mcp.gitcd vancam-mcppip install -r requirements.txt

2. (Optional) Set up an API key

Requests work out of the box using a shared, rate-limited key (1 req/s, 500/month, pooled across all anonymous users). For higher limits, grab a free personal key from your Vancam.ai account page and set it as an environment variable:

bash
cp .env.example .env   # then edit .env
bash
# .envVANCAM_API_KEY=your_personal_key_here

3. Register the server with your MCP client

For Claude Desktop or Claude Code, add to your MCP config. If installed from PyPI (Option A):

json
{  "mcpServers": {    "vancam": {      "command": "uvx",      "args": ["vancam-mcp"],      "env": {        "VANCAM_API_KEY": ""      }    }  }}

If running from a local clone (Option B, see .mcp.json in this repo):

json
{  "mcpServers": {    "vancam": {      "command": "python3",      "args": ["/absolute/path/to/vancam-mcp/vancam_mcp/server.py"],      "env": {        "VANCAM_API_KEY": ""      }    }  }}

VANCAM_API_KEY is optional — leave it blank to use the shared, rate-limited key.

Restart your client, and the tools below become available.

Available Tools

list_cameras

List cameras within a bounding box — the same query the VanCam map runs on pan/zoom.

python
list_cameras(min_lat=49.2, min_lon=-123.2, max_lat=49.3, max_lon=-123.0, limit=50)
ParameterTypeDescription
min_lat, min_lon, max_lat, max_lonfloatBounding box (WGS84)
limitint, optionalMax results, 1–100 (default 100)
active_onlybool, optionalOnly camera_class=open live feeds (default false)

get_cameras_by_radius

Get cameras within a radius of a point.

python
get_cameras_by_radius(lat=49.28, lon=-123.12, radius=1.0, limit=20)
ParameterTypeDescription
lat, lonfloatCenter point (WGS84)
radiusfloat, optionalRadius in km (default 1.0)
limitint, optionalMax results (default 50)
active_onlybool, optionalOnly open/live cameras

get_cameras_along_route

Get cameras along a straight-line corridor between two points.

python
get_cameras_along_route(    origin_lat=49.2827, origin_lon=-123.1207,    dest_lat=49.1666, dest_lon=-123.1367,    buffer=200.0, limit=50)
ParameterTypeDescription
origin_lat, origin_lon, dest_lat, dest_lonfloatRoute endpoints
bufferfloat, optionalCorridor width in meters (default 100.0)
limitint, optionalMax results (default 50)
active_onlybool, optionalOnly open/live cameras

Results are sorted by route_fraction (0 = origin, 1 = destination). Note: this is a straight line between the two points, not a driving route.

get_nearest_cameras

Get the closest cameras to a point.

python
get_nearest_cameras(lat=49.2827, lon=-123.1207, limit=5)
ParameterTypeDescription
lat, lonfloatQuery point (WGS84)
limitint, optionalNumber of cameras (default 5)
active_onlybool, optionalOnly open/live cameras

get_camera_image

Fetch a camera's live frame by asset ID, returned as image data in the tool result (not just a URL — the image endpoint requires an API key header that most MCP clients can't attach themselves).

python
get_camera_image(asset_id="30145")

describe_camera_api

Returns documentation for all search modes, camera fields, and image URL patterns. Call this first if you're unsure which tool to use.

API Reference

Every search tool queries the same spatial API that backs the Vancam.ai map:

PurposeURL
Spatial searchhttps://api.vancam.ai/cameras/cameras
Live imagehttps://api.vancam.ai/api?asset_id={id}

Each camera includes asset_id, latitude, longitude, street_address, direction, camera_class (open/premium), level1/level2/level3 (country/state/city), distance_meters (radius/nearest searches), route_fraction (route search), and image_url/image_urls.

Full schema: openapi.yaml.

Environment overrides: VANCAM_API_KEY, VANCAM_CAMERAS_SEARCH_URL, VANCAM_API_IMAGE_URL

Project Structure

vancam-mcp/├── vancam_mcp/│   ├── server.py      # MCP server — registers the tools above│   └── camera_api.py  # api.vancam.ai client├── openapi.yaml       # API specification├── pyproject.toml     # Package metadata (PyPI: vancam-mcp)├── requirements.txt   # Python dependencies└── .mcp.json          # Example MCP client config

Related Projects

Contributing

Contributions are welcome — feel free to open an issue or submit a pull request.

License

MIT — see LICENSE.

来源:README.md,提交 1a3db75

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分