# wireless_pair_android

Manual one-shot Android wireless pair when you already know the pair host:port (e.g. user typed it from the phone screen). Prefer wireless_setup_android when you don't have the host:port yet — it auto-discovers via mDNS. The pair port is DIFFERENT from the connect port shown on the main Wireless debugging screen. With auto_connect=true (default), this tool also resolves the matching connect entry and runs adb connect immediately, returning a single ready-to-use paired device.

Agent View of the PolicyLayer registry record for `wireless_pair_android`. HTML page: https://policylayer.com/tools/io-github-kivanccakmak-yaver/wireless-pair-android

## Facts

- Tool: `wireless_pair_android`
- Server: Yaver (`yaver-cli`) — https://policylayer.com/tools/io-github-kivanccakmak-yaver.md
- Install: `npx -y yaver-cli`
- Homepage: https://github.com/kivanccakmak/yaver.io
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 3 (2 required)
- Recommended policy verdict: Rate-limited

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `code` | string | yes | The 6-digit pairing code shown next to the pair host:port on the phone. |
| `ip_port` | string | yes | The PAIR host:port from the phone's 'Pair device with pairing code' screen — NOT the connect port from the main Wireless debugging screen. |
| `auto_connect` | boolean | no | After pairing, auto-resolve the connect endpoint via mDNS and run adb connect. Default true. |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "wireless_pair_android",
    "arguments": {
      "code": "<code>",
      "ip_port": "<ip_port>"
    }
  }
}
```

## Why wireless_pair_android is rated High

The tool executes an adb pairing and connection command against an Android device. This triggers an external operation (adb connect) whose effects depend on the supplied host:port arguments. It is not merely reading data, and while it modifies device connectivity state, the primary action is executing an external system command (adb).

From the tool's own definition: "'runs adb connect immediately' and 'auto_connect=true (default), this tool also resolves the matching connect entry and runs adb connect immediately'"

Risk signals: Accepts freeform code/query input (code)

## Use case

AI agents invoke wireless_pair_android to trigger actions in Yaver. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Yaver:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "wireless_pair_android": {
      "limits": [
        {
          "counter": "wireless_pair_android_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Yaver (644)

- `acl_remove_peer` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/acl-remove-peer.md
- `cancel_schedule` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/cancel-schedule.md
- `cloud_destroy` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/cloud-destroy.md
- `companion_down` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/companion-down.md
- `data_delete` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/data-delete.md
- `db_push` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/db-push.md
- `db_reset` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/db-reset.md
- `db_restore` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/db-restore.md
- `dns_flush` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/dns-flush.md
- `dns_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/dns-remove.md
- `docker_prune` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/docker-prune.md
- `docker_rm` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/docker-rm.md
- `docker_rmi` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/docker-rmi.md
- `feedback_delete` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/feedback-delete.md
- `forgot_password` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/forgot-password.md
- `git_member_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/git-member-remove.md
- `git_stash` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/git-stash.md
- `guest_delete` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/guest-delete.md
- `guest_revoke` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/guest-revoke.md
- `jobs_cancel` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/jobs-cancel.md
- `machine_onboarding_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/machine-onboarding-remove.md
- `machine_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/machine-remove.md
- `migrate_rollback` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/migrate-rollback.md
- `models_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/models-remove.md
- `monitor_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/monitor-remove.md
- `phone_project_delete` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/phone-project-delete.md
- `proxy_remove` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/proxy-remove.md
- `relay_clear_password` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/relay-clear-password.md
- `release_rollback` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/release-rollback.md
- `remote_destroy` — Destructive — https://policylayer.com/tools/io-github-kivanccakmak-yaver/remote-destroy.md
- …and 614 more: https://policylayer.com/tools/io-github-kivanccakmak-yaver.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-kivanccakmak-yaver · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-kivanccakmak-yaver
