# dual_stacking_enroll

Enroll in Dual Stacking to earn sBTC rewards. Enrolls your wallet in the Dual Stacking protocol. Enrollment takes effect at the start of the next PoX cycle. You must hold the minimum sBTC amount to qualify. An optional reward address can be specified to receive sBTC rewards at a different address than the signing wallet. If omitted, rewards go to the signing wallet. Requires an unlocked wallet with sufficient sBTC balance. Note: Dual Stacking is only available on mainnet.

Agent View of the PolicyLayer registry record for `dual_stacking_enroll`. HTML page: https://policylayer.com/tools/io-github-aibtcdev-mcp-server/dual-stacking-enroll

## Facts

- Tool: `dual_stacking_enroll`
- Server: Aibtc (`aibtcdev/aibtc-mcp-server`) — https://policylayer.com/tools/io-github-aibtcdev-mcp-server.md
- Homepage: https://github.com/aibtcdev/aibtc-mcp-server
- Risk category: Financial (Critical risk)
- Registry record: grade F, identity verified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Approval-gated

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

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

## Why dual_stacking_enroll is rated Critical

This tool commits financial obligations by enrolling a wallet in a stacking protocol that locks sBTC for a PoX cycle. It involves real cryptocurrency (sBTC on mainnet) and commits funds to a staking/locking arrangement, which qualifies as a financial operation. Misuse could lock a user's sBTC unexpectedly.

From the tool's own definition: "Enroll in Dual Stacking to earn sBTC rewards... Enrollment takes effect at the start of the next PoX cycle. You must hold the minimum sBTC amount to qualify. Requires an unlocked wallet with sufficient sBTC balance."

## Use case

AI agents use dual_stacking_enroll to commit financial operations through Aibtc, usually the final step of a payment, billing, or trading workflow. A call moves real money.

## Recommended policy (PolicyLayer)

Verdict: **Approval-gated**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Aibtc:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "dual_stacking_enroll": {
      "deny_if": [
        {
          "conditions": [],
          "on_deny": "Requires human approval."
        }
      ]
    }
  }
}
```

## Other tools on Aibtc (357)

- `bitflow_cancel_order` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/bitflow-cancel-order.md
- `bounty_cancel` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/bounty-cancel.md
- `credentials_delete` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/credentials-delete.md
- `delete_hiro_api_key` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/delete-hiro-api-key.md
- `identity_unset_wallet` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/identity-unset-wallet.md
- `jingswap_cancel_cycle` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/jingswap-cancel-cycle.md
- `jingswap_cancel_sbtc` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/jingswap-cancel-sbtc.md
- `lightning_lock` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/lightning-lock.md
- `ordinals_p2p_cancel` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/ordinals-p2p-cancel.md
- `pillar_direct_revoke_fast_pool` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/pillar-direct-revoke-fast-pool.md
- `reputation_revoke_feedback` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/reputation-revoke-feedback.md
- `stackspot_cancel_pot` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/stackspot-cancel-pot.md
- `wallet_delete` — Destructive — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/wallet-delete.md
- `broadcast_transaction` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/broadcast-transaction.md
- `btc_sign_message` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/btc-sign-message.md
- `call_contract` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/call-contract.md
- `deploy_contract` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/deploy-contract.md
- `dual_stacking_opt_out` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/dual-stacking-opt-out.md
- `inference_check_provider` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/inference-check-provider.md
- `inscribe_child_reveal` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/inscribe-child-reveal.md
- `inscribe_reveal` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/inscribe-reveal.md
- `jingswap_close_deposits` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/jingswap-close-deposits.md
- `jingswap_settle_with_refresh` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/jingswap-settle-with-refresh.md
- `lightning_unlock` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/lightning-unlock.md
- `news_publisher_compile_brief` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/news-publisher-compile-brief.md
- `nonce_heal` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/nonce-heal.md
- `nostr_sign_event` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/nostr-sign-event.md
- `pillar_connect` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/pillar-connect.md
- `pillar_key_generate` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/pillar-key-generate.md
- `pillar_key_lock` — Execute — https://policylayer.com/tools/io-github-aibtcdev-mcp-server/pillar-key-lock.md
- …and 327 more: https://policylayer.com/tools/io-github-aibtcdev-mcp-server.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=io-github-aibtcdev-mcp-server · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-aibtcdev-mcp-server
