# route-comms-link

`station__comms-systems__route-comms-link` · external (needs EXECUTION_BACKEND_URL configured) · domain `comms-systems` · pv-relevance `non-pv`

Route communication to optimal link based on range, data rate, criticality, and link availability. 7 link types: BLE (controller), Wi-Fi 6E (ground station), 5G (cloud), LoRa (telemetry fallback), Iridium Certus (satcom), VHF radio (ATC), ADS-B Out (position broadcast).

> **Note:** This tool routes through an external execution backend. If `EXECUTION_BACKEND_URL` is unset on the server, calls return JSON-RPC error `-32603 "Tool execution backend not configured"`. Tools with `backend: native` execute in-process and are always callable.

## Agent metadata

- `idempotent`: unknown
- `read_only`: unknown
- `expected_latency_ms`: unknown (not yet contract-tested)
- `cost_tokens_estimate`: unknown

## Input schema

- `range_km` *number* (required) — Distance to destination in kilometers
- `data_rate_required` *string* (required) — Required throughput: telemetry_only, low_bandwidth, medium_bandwidth, high_bandwidth, video
- `criticality` *string* — Message criticality: routine, priority, emergency, atc_mandatory
- `airborne` *boolean* — Whether the suit is currently in flight
- `primary_5g_status` *string* — 5G modem state: connected, weak, unavailable
- `wifi_available` *boolean* — Whether Wi-Fi 6E ground station is in range

## Example call

```json
POST /api/mcp
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "station__comms-systems__route-comms-link",
    "arguments": {
      "range_km": 0,
      "data_rate_required": ""
    }
  }
}
```

## Related

- [/tools](/tools) — all 3062 tools
- [/tools/comms-systems__route-comms-link](/tools/comms-systems__route-comms-link) — HTML page
- [/tools/comms-systems__route-comms-link/json](/tools/comms-systems__route-comms-link/json) — JSON form (agent-friendly)
- [/api/mcp](/api/mcp) — endpoint
- [/AGENTS.md](/AGENTS.md) — agent guide
