# arvan_ssh_run_script

Run a multi-line script on a server over SSH (piped to bash -s).

Agent View of the PolicyLayer registry record for `arvan_ssh_run_script`. HTML page: https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-ssh-run-script

## Facts

- Tool: `arvan_ssh_run_script`
- Server: ArvanCloud MCP Server (`dwin-gharibi/arvancloud-mcp`) — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp.md
- Homepage: https://github.com/dwin-gharibi/arvancloud-mcp
- Risk category: Execute (High 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": "arvan_ssh_run_script",
    "arguments": {}
  }
}
```

## Why arvan_ssh_run_script is rated High

This tool executes arbitrary code on production infrastructure. An AI agent misusing this could compromise servers, exfiltrate data, install backdoors, pivot to other systems, or cause operational failure. The combination of remote execution + bash + multi-line script support with no apparent input sanitization or execution limits makes this critical severity.

From the tool's own definition: "'Run a multi-line script on a server over SSH (piped to bash -s)' — directly executes arbitrary shell commands on remote infrastructure with no inherent constraints on what those commands can do."

## Use case

AI agents invoke arvan_ssh_run_script to trigger actions in ArvanCloud MCP Server. 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 ArvanCloud MCP Server:

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

## Other tools on ArvanCloud MCP Server (231)

- `arvan_delete_cdn_app` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-cdn-app.md
- `arvan_delete_dns_record` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-dns-record.md
- `arvan_delete_domain` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-domain.md
- `arvan_delete_firewall_rule` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-firewall-rule.md
- `arvan_delete_floating_ip` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-floating-ip.md
- `arvan_delete_log_forwarder` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-log-forwarder.md
- `arvan_delete_page_rule` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-page-rule.md
- `arvan_delete_ptr_record` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-ptr-record.md
- `arvan_delete_rate_limit_rule` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-rate-limit-rule.md
- `arvan_delete_security_group` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-security-group.md
- `arvan_delete_security_rule` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-security-rule.md
- `arvan_delete_server` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-server.md
- `arvan_delete_ssh_key` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-ssh-key.md
- `arvan_delete_subnet` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-subnet.md
- `arvan_delete_tag` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-tag.md
- `arvan_delete_volume` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-delete-volume.md
- `arvan_helm_uninstall` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-helm-uninstall.md
- `arvan_iac_terraform_destroy` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-iac-terraform-destroy.md
- `arvan_k8s_delete` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-k8s-delete.md
- `arvan_live_delete_channel` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-live-delete-channel.md
- `arvan_purge_cache` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-purge-cache.md
- `arvan_rebuild_server` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-rebuild-server.md
- `arvan_s3_delete_bucket` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-s3-delete-bucket.md
- `arvan_s3_delete_object` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-s3-delete-object.md
- `arvan_s3_delete_objects` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-s3-delete-objects.md
- `arvan_task_cancel` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-task-cancel.md
- `arvan_vod_delete_audio` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-vod-delete-audio.md
- `arvan_vod_delete_channel` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-vod-delete-channel.md
- `arvan_vod_delete_file` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-vod-delete-file.md
- `arvan_vod_delete_profile` — Destructive — https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp/arvan-vod-delete-profile.md
- …and 201 more: https://policylayer.com/tools/dwin-gharibi-arvancloud-mcp.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=dwin-gharibi-arvancloud-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/dwin-gharibi-arvancloud-mcp
