MCP Server Documentation

Generate QR codes for URLs, contacts, WiFi, events, and more via the Model Context Protocol.

Overview

The qr-generator MCP server provides 11 tools for generating QR codes across multiple formats: URLs, plain text, vCards, MeCards, WiFi networks, email, phone, SMS, calendar events, X/Twitter profiles, and raw vCard text. It supports full contact fields including name, phone numbers, emails, postal addresses (with GPS coordinates), organization, title, website, and notes.

No authentication is required. All processing is stateless and in-memory — no data is stored or logged.

Connection

Remote (Claude.ai / Claude Desktop)

Connect via Streamable HTTP transport. Add to your MCP client configuration:

{
  "mcpServers": {
    "qr-generator": {
      "type": "streamable-http",
      "url": "https://qr.beyondtheinnovation.com/mcp"
    }
  }
}

Local (Claude Code / Cursor)

Run locally via stdio transport. Requires Bun installed:

{
  "mcpServers": {
    "qr-generator": {
      "command": "bun",
      "args": ["run", "src/mcp/stdio.ts"],
      "cwd": "/path/to/bti7-qr-generator"
    }
  }
}

The local version includes an additional generate_vcard_qr_file tool that saves QR codes directly to disk.

Tools

generate_vcard_qrread-only

Generate a QR code image from vCard contact data. Returns a base64-encoded PNG image alongside the raw vCard text.

Parameters

NameTypeDescription
firstNamestring?First name
lastNamestring?Last name
prefixstring?Name prefix (Mr., Dr.)
suffixstring?Name suffix (Jr., PhD)
orgstring?Organization / company
titlestring?Job title
phonesarray?Phone numbers — each with type (CELL, WORK, HOME, FAX) and value
emailsarray?Email addresses — each with type (WORK, HOME) and value
addressesarray?Postal addresses — street, city, state, zip, country, poBox, geo (lat,lng)
urlstring?Website URL
notestring?Additional notes
widthnumber?Image width in pixels (default: 800)
darkColorstring?QR dot color, hex (default: #000000)
lightColorstring?Background color, hex (default: #ffffff)

Response

Returns two content items: a text block with the generated vCard string, and an image block with the base64-encoded PNG QR code.

generate_vcard_textread-only

Generate raw vCard 3.0 text without a QR code. Useful for creating .vcf files or embedding contact data in other formats.

Accepts the same contact parameters as generate_vcard_qr (excluding width, darkColor, lightColor). Returns the vCard string as plain text.

All QR Tools

All QR tools below also accept optional styling parameters: width (number, default 800), darkColor (hex string), and lightColor (hex string). Each returns a base64-encoded PNG image.

generate_url_qrread-only

Generate a QR code for a URL or website link.

Params: url (string, required)

generate_text_qrread-only

Generate a QR code encoding plain text.

Params: text (string, required)

generate_wifi_qrread-only

Generate a QR code for joining a WiFi network. Scanning auto-connects on most devices.

Params: ssid (string, required), password (string), encryption ("WPA" | "WEP" | "nopass"), hidden (boolean)

generate_email_qrread-only

Generate a QR code that opens a pre-filled email compose window.

Params: to (string, required), subject (string), body (string)

generate_phone_qrread-only

Generate a QR code that initiates a phone call when scanned.

Params: phone (string, required)

generate_sms_qrread-only

Generate a QR code that opens an SMS compose window with a pre-filled message.

Params: phone (string, required), message (string)

generate_event_qrread-only

Generate a QR code for a calendar event (iCalendar format).

Params: title (string, required), startDate (string, required, YYYY-MM-DD), startTime (string, HH:MM), endDate (string), endTime (string), location (string), description (string), allDay (boolean)

generate_mecard_qrread-only

Generate a compact contact QR code using the MeCard format. Widely supported on Android.

Params: firstName (string), lastName (string) — at least one required. Also: phone, email, org, url, address, note

generate_xprofile_qrread-only

Generate a QR code linking to an X (Twitter) profile.

Params: username (string, required)

Examples

1. URL QR code

"Create a QR code for my website https://gamified.studio"

{
  "name": "generate_url_qr",
  "arguments": {
    "url": "https://gamified.studio"
  }
}

Returns a PNG QR code that opens the URL when scanned.

2. vCard text for file export

"Generate a vCard for Dr. Sarah Lee, CMO at HealthCorp, with her office address."

{
  "name": "generate_vcard_text",
  "arguments": {
    "prefix": "Dr.",
    "firstName": "Sarah",
    "lastName": "Lee",
    "title": "Chief Medical Officer",
    "org": "HealthCorp",
    "emails": [{ "type": "WORK", "value": "sarah.lee@healthcorp.com" }],
    "phones": [{ "type": "WORK", "value": "+1-555-0200" }],
    "addresses": [{
      "type": "WORK",
      "street": "100 Medical Dr",
      "city": "Boston",
      "state": "MA",
      "zip": "02101",
      "country": "US"
    }]
  }
}

Returns raw vCard 3.0 text (BEGIN:VCARD ... END:VCARD) ready to save as a .vcf file.

3. Custom-styled QR code

"Make a navy-blue QR code for Gamified Studio with the website and contact email."

{
  "name": "generate_vcard_qr",
  "arguments": {
    "org": "Gamified Studio",
    "url": "https://gamified.studio",
    "emails": [{ "type": "WORK", "value": "so@gamified.studio" }],
    "width": 600,
    "darkColor": "#1e3a5f",
    "lightColor": "#ffffff"
  }
}

Returns a 600px navy-blue QR code. Custom colors are useful for matching brand guidelines on printed materials.

4. WiFi QR code

"Generate a WiFi QR for my office network 'GamifiedHQ' with WPA password 'welcome2025'"

{
  "name": "generate_wifi_qr",
  "arguments": {
    "ssid": "GamifiedHQ",
    "password": "welcome2025",
    "encryption": "WPA"
  }
}

Returns a QR code that auto-connects to the WiFi network when scanned on most smartphones.

Technical Details

  • Protocol: MCP (Model Context Protocol) over Streamable HTTP
  • Endpoint: https://qr.beyondtheinnovation.com/mcp
  • Authentication: None required
  • Session: Stateful (UUID-based session IDs)
  • vCard format: vCard 3.0 (RFC 2426)
  • QR output: PNG, base64-encoded
  • Data retention: None — all processing is in-memory, discarded after response

Support

For questions, issues, or feedback, contact so@gamified.studio.

© 2026 Gamified Studio