README.org•6.64 kB
#+TITLE: MCP QR Code Server
* Overview
Generate QR codes seamlessly using the Model Context Protocol (MCP). This server connects large language models to QR code generation capabilities across multiple client interfaces.
* Features
- Generate QR codes for multiple content types:
- URLs and website links
- WiFi network credentials
- Contact information (vCard)
- Plain text
- Calendar events (iCal)
- Multiple output formats:
- PNG images (base64-encoded)
- ASCII/text representation
- Data URL format
- Customization options:
- Size adjustment (100-1000px)
- Error correction levels (L, M, Q, H)
- Format selection (image, text)
* Quick Examples
#+begin_example
Please generate a QR code for https://example.com
#+end_example
#+begin_example
Generate a QR code for the Wi-Fi network "GuestWiFi" with password "Welcome123"
#+end_example
#+begin_example
Create a QR code for my contact information:
Name: John Doe
Email: john@example.com
Phone: 555-123-4567
#+end_example
* Installation
#+begin_src bash
npm install -g @jwalsh/mcp-server-qrcode
#+end_src
* Usage
** Claude Desktop
#+begin_src json
{
"mcpServers": {
"qrcode": {
"command": "npx",
"args": [
"-y",
"@jwalsh/mcp-server-qrcode"
]
}
}
}
#+end_src
For detailed setup instructions, please refer to:
- [[https://modelcontextprotocol.io/quickstart/user][MCP for Claude Desktop Users]]
- [[https://modelcontextprotocol.io/quickstart/server][Building MCP Servers]]
- [[https://docs.anthropic.com/en/docs/agents-and-tools/mcp][Anthropic MCP Documentation]]
** Claude Desktop
#+begin_src json
{
"mcpServers": {
"qrcode": {
"args": [
"-y",
"@jwalsh/mcp-server-qrcode"
],
"command": "npx"
}
}
}
#+end_src
** Emacs with mcp.el
#+begin_src elisp :results silent
;; Basic installation with straight.el
(use-package mcp
:straight (mcp :type git :host github :repo "lizqwerscott/mcp.el"))
#+end_src
#+begin_src elisp :results silent
;; Connect to the QR code server
(mcp-connect-server
"qrcode"
"npx"
'("-y" "@jwalsh/mcp-server-qrcode")
:initial-callback
(lambda (connection)
(message "Connected to %s" (jsonrpc-name connection)))
:tools-callback
(lambda (connection tools)
(message "Available tools: %s" tools)))
#+end_src
#+begin_src elisp :results raw :wrap example
;; Generate a QR code
(let ((connection (gethash "qrcode" mcp-server-connections)))
(mcp-call-tool connection
"generate-qrcode"
'(:content "https://example.com"
:format "text")))
#+end_src
#+RESULTS:
#+begin_example
(:content [(:type text :text QR Code for "https://example.com":
█████████████████████████████████
█████████████████████████████████
████ ▄▄▄▄▄ █▄▀ █ ▀ █▀█ ▄▄▄▄▄ ████
████ █ █ █▄ ▄█▀ ▀█▄█ █ █ ████
████ █▄▄▄█ █▀ █ ▀█ ███ █▄▄▄█ ████
████▄▄▄▄▄▄▄█▄▀▄█ █ ▀ █▄▄▄▄▄▄▄████
████ ▀▄▀▀▀▄▄▀▀ ▄▀▄▀▀ █▀▄▀ ████
████▄▀█▄▀ ▄▄▀ ▀▀█▄▀▄█▀▄ ▄█▄████
█████▀▀▄ ▄▄▄ ▀ █ ▄█ █ ███▀ ████
████▄▄▄█▄▄▄▀▄▀█▀ ▄ ▄ ▄▀▀ ▄█▄████
████▄▄██▄█▄▄▀▄███ █ ▄▄▄ ██▄▀████
████ ▄▄▄▄▄ █▄█▄▄█▀█▀ █▄█ ██▀ ████
████ █ █ ██ █▄ ▄█▄▄ ▄▄ █▀ ▄████
████ █▄▄▄█ █▄ █▀ ▄ ▀ ▄█▄▄████
████▄▄▄▄▄▄▄█▄▄▄██▄▄█▄█▄██▄██▄████
█████████████████████████████████
█████████████████████████████████
)])
#+end_example
** MCP Inspector
#+begin_src bash
npx -y @modelcontextprotocol/inspector npx -y @jwalsh/mcp-server-qrcode
#+end_src
** NPM Package CLI
#+begin_src bash
# Verify installation
echo '{"method":"tools/list","params":{},"id":1,"jsonrpc":"2.0"}' | mcp-server-qrcode | jq -r '.result.tools[]|.name'
#+end_src
#+RESULTS:
: generate-qrcode
#+begin_src bash :results raw :results raw
# Generate QR code via JSON-RPC
echo '{"method":"tools/call","params":{"name":"generate-qrcode","arguments":{"content":"https://example.com","format":"text"}},"id":1,"jsonrpc":"2.0"}' | mcp-server-qrcode | jq -r '.result.content[0].text'
#+end_src
#+RESULTS:
QR Code for "https://example.com":
█████████████████████████████████
█████████████████████████████████
████ ▄▄▄▄▄ █▄▀ █ ▀ █▀█ ▄▄▄▄▄ ████
████ █ █ █▄ ▄█▀ ▀█▄█ █ █ ████
████ █▄▄▄█ █▀ █ ▀█ ███ █▄▄▄█ ████
████▄▄▄▄▄▄▄█▄▀▄█ █ ▀ █▄▄▄▄▄▄▄████
████ ▀▄▀▀▀▄▄▀▀ ▄▀▄▀▀ █▀▄▀ ████
████▄▀█▄▀ ▄▄▀ ▀▀█▄▀▄█▀▄ ▄█▄████
█████▀▀▄ ▄▄▄ ▀ █ ▄█ █ ███▀ ████
████▄▄▄█▄▄▄▀▄▀█▀ ▄ ▄ ▄▀▀ ▄█▄████
████▄▄██▄█▄▄▀▄███ █ ▄▄▄ ██▄▀████
████ ▄▄▄▄▄ █▄█▄▄█▀█▀ █▄█ ██▀ ████
████ █ █ ██ █▄ ▄█▄▄ ▄▄ █▀ ▄████
████ █▄▄▄█ █▄ █▀ ▄ ▀ ▄█▄▄████
████▄▄▄▄▄▄▄█▄▄▄██▄▄█▄█▄██▄██▄████
█████████████████████████████████
█████████████████████████████████
* Developer Documentation
For detailed setup, installation, contribution guidelines, and additional integration methods, please refer to [[file:DEVELOPERS.org][DEVELOPERS.org]].