# wifi_passwords

Get saved WiFi passwords. Auto-selects client.

Agent View of the PolicyLayer registry record for `wifi_passwords`. HTML page: https://policylayer.com/tools/0xyg3n-claude-c2/wifi-passwords

## Facts

- Tool: `wifi_passwords`
- Server: Claude C2 (`0xyg3n/claude-c2`) — https://policylayer.com/tools/0xyg3n-claude-c2.md
- Homepage: https://github.com/0xyg3n/claude-c2
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

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

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "wifi_passwords",
    "arguments": {}
  }
}
```

## Why wifi_passwords is rated Low

This tool retrieves stored WiFi credentials from the system, which is a read operation with no write, execute, or destructive capabilities. However, severity is high because WiFi passwords are sensitive authentication credentials that could enable unauthorized network access and lateral movement if exposed to an AI agent that could misuse them.

From the tool's own definition: "Tool name 'wifi_passwords' and description 'Get saved WiFi passwords' indicate data retrieval with no modification capability. The action is read-only."

## Use case

AI agents call wifi_passwords to retrieve information from Claude C2 without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Claude C2:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "wifi_passwords": {}
  }
}
```

## Other tools on Claude C2 (93)

- `kill` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/kill.md
- `mv` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/mv.md
- `persist_remove` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/persist-remove.md
- `reg_delete` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/reg-delete.md
- `rm` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/rm.md
- `timestomp` — Destructive — https://policylayer.com/tools/0xyg3n-claude-c2/timestomp.md
- `amsi_bypass` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/amsi-bypass.md
- `bypassuac` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/bypassuac.md
- `defender_exclude` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/defender-exclude.md
- `etw_patch` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/etw-patch.md
- `execute_assembly` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/execute-assembly.md
- `firewall_rule` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/firewall-rule.md
- `generate_payload` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/generate-payload.md
- `get_payload` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/get-payload.md
- `getsystem` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/getsystem.md
- `inject` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/inject.md
- `keylog_start` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/keylog-start.md
- `keylog_stop` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/keylog-stop.md
- `mcp_add_tool` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/mcp-add-tool.md
- `mcp_append_code` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/mcp-append-code.md
- `mcp_restart` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/mcp-restart.md
- `mimikatz` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/mimikatz.md
- `persist_registry` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/persist-registry.md
- `persist_schtask` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/persist-schtask.md
- `persist_service` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/persist-service.md
- `persist_startup` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/persist-startup.md
- `persist_wmi` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/persist-wmi.md
- `portscan` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/portscan.md
- `powershell` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/powershell.md
- `privesc_check` — Execute — https://policylayer.com/tools/0xyg3n-claude-c2/privesc-check.md
- …and 63 more: https://policylayer.com/tools/0xyg3n-claude-c2.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=0xyg3n-claude-c2 · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/0xyg3n-claude-c2
