# wallet_createHmac

Creates an HMAC using wallet keys.

Agent View of the PolicyLayer registry record for `wallet_createHmac`. HTML page: https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-createhmac

## Facts

- Tool: `wallet_createHmac`
- Server: Bitcoin SV MCP Server (`b-open-io/bsv-mcp`) — https://policylayer.com/tools/b-open-io-bsv-mcp.md
- Homepage: https://github.com/b-open-io/bsv-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": "wallet_createHmac",
    "arguments": {}
  }
}
```

## Why wallet_createHmac is rated High

This tool performs a cryptographic operation (HMAC generation) using private wallet keys. It is an execution of a cryptographic function rather than a simple read or write — it actively uses sensitive wallet key material to produce an authentication code. While it doesn't move funds or delete data, misuse could expose or misuse wallet keys in unintended ways.

From the tool's own definition: "Creates an HMAC using wallet keys"

## Use case

AI agents invoke wallet_createHmac to trigger actions in Bitcoin SV 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 Bitcoin SV MCP Server:

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

## Other tools on Bitcoin SV MCP Server (89)

- `wallet_abortAction` — Destructive — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-abortaction.md
- `wallet_relinquishCertificate` — Destructive — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-relinquishcertificate.md
- `wallet_relinquishOutput` — Destructive — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-relinquishoutput.md
- `wallet_remove` — Destructive — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-remove.md
- `bap_friend` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/bap-friend.md
- `utils_installAgentMaster` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/utils-installagentmaster.md
- `wallet_createSignature` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-createsignature.md
- `wallet_decrypt` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-decrypt.md
- `wallet_encrypt` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-encrypt.md
- `wallet_proveCertificate` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-provecertificate.md
- `wallet_signAction` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-signaction.md
- `wallet_signBsm` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-signbsm.md
- `wallet_waitForAuthentication` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-waitforauthentication.md
- `x402_request` — Execute — https://policylayer.com/tools/b-open-io-bsv-mcp/x402-request.md
- `bsocial_createPost` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/bsocial-createpost.md
- `droplit_fund` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/droplit-fund.md
- `mnee_sendMnee` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/mnee-sendmnee.md
- `wallet_acquireCertificate` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-acquirecertificate.md
- `wallet_cancelListing` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-cancellisting.md
- `wallet_createAction` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-createaction.md
- `wallet_createOrdinals` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-createordinals.md
- `wallet_listOrdinal` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-listordinal.md
- `wallet_lockBsv` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-lockbsv.md
- `wallet_mintCollection` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-mintcollection.md
- `wallet_opnsDeregister` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-opnsderegister.md
- `wallet_purchaseListing` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-purchaselisting.md
- `wallet_sendAllBsv` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-sendallbsv.md
- `wallet_sendBsv` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-sendbsv.md
- `wallet_sweepBsv` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-sweepbsv.md
- `wallet_sweepBsv21` — Financial — https://policylayer.com/tools/b-open-io-bsv-mcp/wallet-sweepbsv21.md
- …and 59 more: https://policylayer.com/tools/b-open-io-bsv-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=b-open-io-bsv-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/b-open-io-bsv-mcp
