ssh_download
Copy files or directories from a remote server to your local machine, with sha256 checksum verification on both sides to ensure integrity.
Instructions
Copies a file or directory from a server to this machine, checked by sha256 on both sides. To read a text file rather than keep it, ssh_file_read skips the disk.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"profile": "<profile>",
"remote_path": "<remote_path>",
"local_path": "<local_path>"
},
"name": "ssh_download"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sudo | No | For /root and the like. A root copy stages in /tmp, is fetched and removed — the machine needs room. Default: false | |
| verify | No | sha256 on both sides, per file. "unavailable" = no sha256 on the machine = delivered, not broken. "mismatched" fails the call and replaces nothing. Default: true | |
| profile | Yes | Machine name. | |
| timeout | No | Milliseconds. No ceiling by default — a transfer runs as long as it takes. | |
| recursive | No | Only to force it — a directory is recognised on its own. | |
| local_path | Yes | Where it lands on this machine. | |
| remote_path | Yes | What to fetch from the server. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | ||
| legend | No | What the words in this answer mean. A key names the field before the value — "state=limited", "jobs[].state=lost" — and only the values this answer actually used are listed. |