Install

git clone https://github.com/shughestr/vancam-mcp.git
cd vancam-mcp
pip install -r requirements.txt

Cursor / Claude Desktop config

No setup required to try it — every client defaults to this shared, public key if VANCAM_API_KEY (or x-api-key) isn't set: abwSAo91eI8wENsNrZFUE7tC6qGkh9Tw66x4cfcQ.

This is one key shared by every anonymous caller — Python or Node, CLI, MCP, or raw REST. Its 1 req/s / 500 requests/month limit is a single collective pool across all of them combined, not 500 each — if it's busy, you'll get rate-limited by other people's traffic, not just your own.

For a limit that's yours alone (5 req/s, 500 requests/month, not shared with anyone), get a free personal key from your account dashboard. Need more than that? See Pro and Enterprise plans.

Set it in the config below.

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

Camera search tools

Same tools, same names, in both versions. Each returns JSON — image fields are URLs, fetch separately for multimodal models.

ToolUse whenParameters
list_camerasFeeds within a bounding boxmin_lat, min_lon, max_lat, max_lon, limit, active_only
get_cameras_by_radiusFeeds within radius of a pointlat, lon, radius, limit, active_only
get_cameras_along_routeFeeds along a route corridororigin_lat, origin_lon, dest_lat, dest_lon, buffer, limit, active_only
get_nearest_camerasN closest feeds to a pointlat, lon, limit, active_only
get_camera_imageLive frame (image data) for an assetasset_id
describe_camera_apiSelf-describing tool reference — call first when unsure which tool to use(none)

Example agent prompt

Find the 3 nearest visual feeds to 49.28, -123.12.
Return asset_id, coordinates, and image_url for each.

Response fields

Each feed in a search result includes:

  • asset_id, latitude, longitude
  • street_address, direction, camera_class
  • level1level3 — country/state/city
  • image_url — live frame (requires an x-api-key header; use get_camera_image to fetch the frame directly instead)
  • distance_meters or route_fraction when applicable

Source

github.com/shughestr/vancam-mcp (Python) · github.com/shughestr/mcp-vancam-node (Node) · REST equivalent · CLI equivalent