# mpt-authorize

Authorize an account to hold a Multi-Purpose Token (MPT), or as a holder, opt-in to hold an MPT. For MPTs with requireAuth flag, issuers must authorize holders before they can receive tokens.

Agent View of the PolicyLayer registry record for `mpt-authorize`. HTML page: https://policylayer.com/tools/romthpt-mcp-xrpl/mpt-authorize

## Facts

- Tool: `mpt-authorize`
- Server: Xrpl mcp (`romthpt/mcp-xrpl`) — https://policylayer.com/tools/romthpt-mcp-xrpl.md
- Homepage: https://github.com/RomThpt/mcp-xrpl
- 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": "mpt-authorize",
    "arguments": {}
  }
}
```

## Why mpt-authorize is rated Medium

This tool creates or modifies authorization records on the XRP Ledger—a reversible write operation. While it affects financial token holdings, it does not move money or commit financial obligations itself; it only grants permissions. The action is Write rather than Execute because it is a specific ledger state modification rather than arbitrary code execution.

From the tool's own definition: "'Authorize an account to hold a Multi-Purpose Token (MPT)' and 'opt-in to hold an MPT' indicate this tool modifies account state by granting authorization permissions."

## Use case

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

## Recommended policy (PolicyLayer)

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

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "mpt-authorize": {
      "limits": [
        {
          "counter": "mpt-authorize_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Xrpl mcp (70)

- `amm-delete` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-delete.md
- `check-cancel` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/check-cancel.md
- `credential-delete` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/credential-delete.md
- `deactivate-did` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/deactivate-did.md
- `delete-account` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/delete-account.md
- `escrow-cancel` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/escrow-cancel.md
- `mpt-issuance-destroy` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/mpt-issuance-destroy.md
- `offer-cancel` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/offer-cancel.md
- `oracle-delete` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/oracle-delete.md
- `permissioned-domain-delete` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/permissioned-domain-delete.md
- `reject-transaction` — Destructive — https://policylayer.com/tools/romthpt-mcp-xrpl/reject-transaction.md
- `amm-vote` — Execute — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-vote.md
- `batch-submit` — Execute — https://policylayer.com/tools/romthpt-mcp-xrpl/batch-submit.md
- `transfer-nft` — Execute — https://policylayer.com/tools/romthpt-mcp-xrpl/transfer-nft.md
- `amm-bid` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-bid.md
- `amm-clawback` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-clawback.md
- `amm-create` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-create.md
- `amm-deposit` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/amm-deposit.md
- `approve-transaction` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/approve-transaction.md
- `batch-payment` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/batch-payment.md
- `check-cash` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/check-cash.md
- `escrow-finish` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/escrow-finish.md
- `offer-create` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/offer-create.md
- `payment` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/payment.md
- `payment-channel-claim` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/payment-channel-claim.md
- `payment-channel-create` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/payment-channel-create.md
- `payment-channel-fund` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/payment-channel-fund.md
- `token-clawback` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/token-clawback.md
- `token-escrow-create` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/token-escrow-create.md
- `transfer-token` — Financial — https://policylayer.com/tools/romthpt-mcp-xrpl/transfer-token.md
- …and 40 more: https://policylayer.com/tools/romthpt-mcp-xrpl.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=romthpt-mcp-xrpl · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/romthpt-mcp-xrpl
