# sandbox_prefs_read

Read SharedPreferences XML from an app

Agent View of the PolicyLayer registry record for `sandbox_prefs_read`. HTML page: https://policylayer.com/tools/alexgladkov-claude-in-mobile/sandbox-prefs-read

## Facts

- Tool: `sandbox_prefs_read`
- Server: Claude Mobile (`alexgladkov/claude-in-mobile`) — https://policylayer.com/tools/alexgladkov-claude-in-mobile.md
- Homepage: https://github.com/AlexGladkov/claude-in-mobile
- 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": "sandbox_prefs_read",
    "arguments": {}
  }
}
```

## Why sandbox_prefs_read is rated Low

This tool retrieves stored application preferences/settings data from a mobile app. While it is fundamentally a read operation with no side effects, the severity is elevated to 'medium' rather than 'low' because SharedPreferences can contain sensitive data (credentials, tokens, personal information, API keys) depending on what the app stores.

From the tool's own definition: "Tool name contains 'read' and description states 'Read SharedPreferences XML from an app' — a query operation that retrieves application preference data without modification."

## Use case

AI agents call sandbox_prefs_read to retrieve information from Claude Mobile 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 Mobile:

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

## Other tools on Claude Mobile (197)

- `browser_clear_session` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/browser-clear-session.md
- `debug_remove_break` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/debug-remove-break.md
- `network_proxy` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/network-proxy.md
- `permission_reset` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/permission-reset.md
- `permission_revoke` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/permission-revoke.md
- `recorder` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/recorder.md
- `recorder_delete` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/recorder-delete.md
- `recorder_remove_step` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/recorder-remove-step.md
- `repl_kill` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/repl-kill.md
- `rustore_discard` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/rustore-discard.md
- `sensor_battery` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/sensor-battery.md
- `store_discard` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/store-discard.md
- `sync_destroy` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/sync-destroy.md
- `system_clear_logs` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/system-clear-logs.md
- `visual` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/visual.md
- `visual_delete` — Destructive — https://policylayer.com/tools/alexgladkov-claude-in-mobile/visual-delete.md
- `app` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/app.md
- `app_install` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/app-install.md
- `app_launch` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/app-launch.md
- `app_restart` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/app-restart.md
- `app_stop` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/app-stop.md
- `appstore_build` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/appstore-build.md
- `appstore_submit` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/appstore-submit.md
- `appstore_upload` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/appstore-upload.md
- `autopilot` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/autopilot.md
- `autopilot_explore` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/autopilot-explore.md
- `autopilot_heal` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/autopilot-heal.md
- `browser` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/browser.md
- `browser_click` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/browser-click.md
- `browser_close` — Execute — https://policylayer.com/tools/alexgladkov-claude-in-mobile/browser-close.md
- …and 167 more: https://policylayer.com/tools/alexgladkov-claude-in-mobile.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=alexgladkov-claude-in-mobile · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/alexgladkov-claude-in-mobile
