# ftp_config_update

Update FTP service configuration. All fields are optional — only provide the ones you want to change. Restart the FTP service after changes.

Agent View of the PolicyLayer registry record for `ftp_config_update`. HTML page: https://policylayer.com/tools/spranab-truenas-mcp/ftp-config-update

## Facts

- Tool: `ftp_config_update`
- Server: Truenas (`spranab/truenas-mcp`) — https://policylayer.com/tools/spranab-truenas-mcp.md
- Homepage: https://github.com/spranab/truenas-mcp
- 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": "ftp_config_update",
    "arguments": {}
  }
}
```

## Why ftp_config_update is rated Medium

This tool modifies FTP service configuration settings, which is a Write operation. It is reversible (config can be changed again) and does not delete data or execute arbitrary code. Severity is medium because misconfiguration of FTP services could expose systems or data if settings like authentication or access controls are altered maliciously, but the changes themselves are not destructive and can be corrected.

From the tool's own definition: "Tool name 'ftp_config_update' and description states it 'Update[s] FTP service configuration' and 'Restart the FTP service after changes'. These are reversible modifications to service settings."

## Use case

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

## Recommended policy (PolicyLayer)

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

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

## Other tools on Truenas (278)

- `acme_dns_authenticator_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/acme-dns-authenticator-delete.md
- `alertservice_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/alertservice-delete.md
- `api_key_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/api-key-delete.md
- `app_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/app-delete.md
- `app_rollback` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/app-rollback.md
- `boot_attach_disk` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/boot-attach-disk.md
- `boot_detach_disk` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/boot-detach-disk.md
- `bootenv_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/bootenv-delete.md
- `certificate_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/certificate-delete.md
- `cloud_backup_abort` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/cloud-backup-abort.md
- `cloud_backup_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/cloud-backup-delete.md
- `cloudsync_credentials_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/cloudsync-credentials-delete.md
- `cloudsync_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/cloudsync-delete.md
- `cronjob_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/cronjob-delete.md
- `dataset_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/dataset-delete.md
- `directory_services_leave` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/directory-services-leave.md
- `disk_wipe` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/disk-wipe.md
- `group_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/group-delete.md
- `initshutdown_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/initshutdown-delete.md
- `iscsi_extent_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/iscsi-extent-delete.md
- `iscsi_initiator_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/iscsi-initiator-delete.md
- `iscsi_portal_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/iscsi-portal-delete.md
- `iscsi_target_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/iscsi-target-delete.md
- `iscsi_targetextent_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/iscsi-targetextent-delete.md
- `keychaincredential_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/keychaincredential-delete.md
- `network_interface_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/network-interface-delete.md
- `network_rollback_changes` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/network-rollback-changes.md
- `network_static_route_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/network-static-route-delete.md
- `nfs_share_delete` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/nfs-share-delete.md
- `pool_export` — Destructive — https://policylayer.com/tools/spranab-truenas-mcp/pool-export.md
- …and 248 more: https://policylayer.com/tools/spranab-truenas-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=spranab-truenas-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/spranab-truenas-mcp
