Critical Risk →

generate_dynamic_qrcode

Generate a dynamic PicPay Pay QR code with a fixed amount and optional expiration. Each QR is single-purpose. Returns qrcode content + base64 image and a paymentUrl.

How to control generate_dynamic_qrcode ↓

What generate_dynamic_qrcode does on Mcp Ap2

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

Critical Risk

Why generate_dynamic_qrcode needs a policy

This tool generates payment QR codes with a fixed amount on the PicPay payment platform. Creating a payment QR code directly initiates a financial transaction flow — it commits a specific monetary amount and produces a payment URL. Misuse could result in unauthorized payment requests being generated and sent to users, constituting a financial obligation.

From the tool's definition Generate a dynamic PicPay Pay QR code with a fixed amount and optional expiration... Returns qrcode content + base64 image and a paymentUrl

Documented attack patterns abuse exactly the kind of access generate_dynamic_qrcode gives an agent:

How to control generate_dynamic_qrcode

PolicyLayer is an MCP gateway — it sits between your AI agents and Mcp Ap2, and nothing reaches the server without passing your rules. This is the rule we recommend for generate_dynamic_qrcode:

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

Any call to generate_dynamic_qrcode is blocked until a human approves it. The rest of the server keeps working.

  1. Create a free account and register Mcp Ap2 — nothing to install.
  2. Add this policy — paste it, or build it visually.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
GATE THIS TOOL →

Free to start. No card required.

Related tools and policies

Go deeper

Questions about generate_dynamic_qrcode

What does the generate_dynamic_qrcode tool do? +

Generate a dynamic PicPay Pay QR code with a fixed amount and optional expiration. Each QR is single-purpose. Returns qrcode content + base64 image and a paymentUrl. It is categorised as a Financial tool in the Mcp Ap2 MCP Server, which means it involves financial transactions. Block by default and require explicit approval.

How do I enforce a policy on generate_dynamic_qrcode? +

Register the Mcp Ap2 MCP server in PolicyLayer and add a rule for generate_dynamic_qrcode: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Mcp Ap2. Nothing to install.

What risk level is generate_dynamic_qrcode? +

generate_dynamic_qrcode is a Financial tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit generate_dynamic_qrcode? +

Yes. Add a rate_limit block to the generate_dynamic_qrcode rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block generate_dynamic_qrcode completely? +

Set action: deny in the PolicyLayer policy for generate_dynamic_qrcode. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides generate_dynamic_qrcode? +

generate_dynamic_qrcode is provided by the Mcp Ap2 MCP server (@codespar/mcp-ap2). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every Mcp Ap2 tool call.

Start from Mcp Ap2, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.

Free to start. No card required.

1300 Mcp Ap2 tools catalogued and risk-classified — across an index of 43,000+ MCP servers.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.