# upload_image_from_url

A write tool on the Ha Nexus Agent MCP server.

Agent View of the PolicyLayer registry record for `upload_image_from_url`. HTML page: https://policylayer.com/tools/fistacho-ha-nexus-agent/upload-image-from-url

## Facts

- Tool: `upload_image_from_url`
- Server: Ha Nexus Agent (`fistacho/ha-nexus-agent`) — https://policylayer.com/tools/fistacho-ha-nexus-agent.md
- Homepage: https://github.com/Fistacho/ha-nexus-agent
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

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

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

## Why upload_image_from_url is rated Medium

Uploading an image is a Write operation—it creates or stores new data in the system reversibly. Severity is medium because uncontrolled image uploads could fill storage, introduce unwanted media, or potentially be exploited for injection attacks depending on downstream processing, but the operation itself is reversible (images can be deleted).

From the tool's own definition: "Tool name 'upload_image_from_url' indicates it accepts a URL and uploads/stores an image, modifying the Home Assistant system state. Description is empty, limiting precision."

## Use case

AI agents use upload_image_from_url to create or update resources in Ha Nexus Agent, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Ha Nexus Agent environment.

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "upload_image_from_url": {
      "limits": [
        {
          "counter": "upload_image_from_url_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Ha Nexus Agent (275)

- `abort_config_flow` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/abort-config-flow.md
- `abort_options_flow` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/abort-options-flow.md
- `delete_area` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-area.md
- `delete_automation` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-automation.md
- `delete_backup` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-backup.md
- `delete_blueprint` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-blueprint.md
- `delete_card` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-card.md
- `delete_category` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-category.md
- `delete_config_file` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-config-file.md
- `delete_css_custom_property` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-css-custom-property.md
- `delete_event` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-event.md
- `delete_label` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-label.md
- `delete_media` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-media.md
- `delete_pipeline` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-pipeline.md
- `delete_script` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-script.md
- `delete_style_preset` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-style-preset.md
- `delete_theme` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-theme.md
- `delete_zone` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/delete-zone.md
- `git_rollback_file` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/git-rollback-file.md
- `git_rollback_to_commit` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/git-rollback-to-commit.md
- `notify_persistent_dismiss` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/notify-persistent-dismiss.md
- `notify_persistent_dismiss_all` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/notify-persistent-dismiss-all.md
- `remove_device` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/remove-device.md
- `remove_energy_source` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/remove-energy-source.md
- `remove_integration` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/remove-integration.md
- `remove_item` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/remove-item.md
- `restore_backup` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/restore-backup.md
- `stop_ha` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/stop-ha.md
- `uninstall_addon` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/uninstall-addon.md
- `uninstall_hacs_repository` — Destructive — https://policylayer.com/tools/fistacho-ha-nexus-agent/uninstall-hacs-repository.md
- …and 245 more: https://policylayer.com/tools/fistacho-ha-nexus-agent.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=fistacho-ha-nexus-agent · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/fistacho-ha-nexus-agent
