payqr

European payment QR — SPAYD (CZ/SK) & EPC/GiroCode (SEPA), plus text/WiFi/vCard. Local, free.

Should I use this

Quality & Safety

A
Description quality
78%
Schema completeness
100%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'qr_read' description lacks action verbin qr_read

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,072Tokens (tool definitions)
~1.5 KBTypical response size
Moderate attention impact (0.84% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "payqr": {
      "command": "npx",
      "args": [
        "@czagents/payqr"
      ]
    }
  }
}

Runnable packages

npm@czagents/payqr0.1.4stdio

Remote endpoints

https://payqr.cz-agents.dev/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢qr_payment(iban, bic, amount, currency, message, ...)

Create a European payment QR code. Auto-selects SPAYD for CZ/SK IBANs and EPC/GiroCode for other SEPA IBANs.

Input Schema

{
  "type": "object",
  "properties": {
    "iban": {
      "type": "string",
      "description": "Recipient IBAN. Validated with the IBAN mod-97 checksum."
    },
    "bic": {
      "type": "string",
      "description": "Optional BIC for EPC/GiroCode line 5. Ignored with a warning for SPAYD."
    },
    "amount": {
      "type": "number",
      "description": "Optional payment amount."
    },
    "currency": {
      "type": "string",
      "pattern": "^[A-Za-z]{3}$",
      "description": "Optional ISO 4217 currency code. Defaults to CZK for SPAYD and EUR for EPC."
    },
    "message": {
      "type": "string",
      "description": "Optional payment message or EPC remittance text."
    },
    "variable_symbol": {
      "type": "string",
      "description": "Optional reference: goes to remittance (line 11) for EPC, to X-VS for SPAYD."
    },
    "constant_symbol": {
      "type": "string",
      "description": "Optional Czech constant symbol for SPAYD."
    },
    "recipient_name": {
      "type": "string",
      "description": "Recipient name. Required for EPC/GiroCode."
    },
    "standard": {
      "type": "string",
      "enum": [
        "spayd",
        "epc",
        "auto"
      ],
      "default": "auto",
      "description": "Payment QR standard. Defaults to auto detection."
    }
  },
  "required": [
    "iban"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qr_text(text)

Create a QR code containing plain text.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "Text to encode in the QR code."
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qr_wifi(ssid, password, security, hidden)

Create a Wi-Fi network QR code.

Input Schema

{
  "type": "object",
  "properties": {
    "ssid": {
      "type": "string",
      "description": "Wi-Fi network name."
    },
    "password": {
      "type": "string",
      "description": "Optional Wi-Fi password."
    },
    "security": {
      "type": "string",
      "enum": [
        "WPA",
        "WEP",
        "nopass"
      ],
      "default": "WPA",
      "description": "Wi-Fi security type."
    },
    "hidden": {
      "type": "boolean",
      "default": false,
      "description": "Whether the network SSID is hidden."
    }
  },
  "required": [
    "ssid"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qr_vcard(name, phone, email, org)

Create a QR code containing a vCard 3.0 contact.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Contact display name."
    },
    "phone": {
      "type": "string",
      "description": "Optional phone number."
    },
    "email": {
      "type": "string",
      "description": "Optional email address."
    },
    "org": {
      "type": "string",
      "description": "Optional organization."
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qr_read(image_data)

Decode a QR code from a base64 PNG/JPEG image or image data URI and classify its content.

Input Schema

{
  "type": "object",
  "properties": {
    "image_data": {
      "type": "string",
      "description": "Base64 image bytes or a PNG/JPEG data URI."
    }
  },
  "required": [
    "image_data"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢qr_payment_batch(payments)

PAID. Create payment QR codes for a whole batch of payments in one call — e.g. an invoice run. The free qr_payment tool handles one payment per call; this one returns the whole set. Requires payment via x402; call without payment first to receive the terms.

Input Schema

{
  "type": "object",
  "properties": {
    "payments": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "ref": {
            "type": "string",
            "description": "Your own identifier — returned back so you can match results."
          },
          "iban": {
            "type": "string"
          },
          "amount": {
            "type": "number"
          },
          "currency": {
            "type": "string",
            "pattern": "^[A-Za-z]{3}$"
          },
          "message": {
            "type": "string"
          },
          "variable_symbol": {
            "type": "string"
          },
          "recipient_name": {
            "type": "string"
          }
        },
        "required": [
          "ref",
          "iban"
        ],
        "additionalProperties": false
      },
      "maxItems": 50,
      "description": "Up to 50 payments. Each QR is generated and verified independently."
    }
  },
  "required": [
    "payments"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools