AI Integration via MCP
All plansThe Model Context Protocol (MCP) lets you connect your QR codes and analytics to AI tools like Claude, Cursor, Glean, and Windsurf. Once connected, you can create, update, and analyze QR codes using plain English — no API calls required.
Prerequisites
- A qr-manager.ai account (Free or paid)
- At least one API key created in Settings → API Keys
- A supported AI tool: Claude (claude.ai), ChatGPT, Cursor IDE, Glean, or any MCP-compatible client
MCP Endpoint URL
The MCP endpoint URL is the same for all accounts — authentication happens separately via OAuth or API key. You can also copy it directly from Settings → AI Integration (MCP).
The OAuth base URL for client registration is https://qr-manager.ai.
Setup: Claude (claude.ai)
Claude supports MCP servers directly via the integrations panel. No config file needed — OAuth handles authentication.
- 1
Open Claude.ai and navigate to Settings
Go to claude.ai, sign in, and click your profile in the top-right. Select Settings → Integrations.
- 2
Add a new MCP integration
Click "Add integration" and choose "Custom MCP server".
- 3
Enter the server URL
Paste your MCP endpoint URL (found in Settings → AI Integration on qr-manager.ai). It looks like: https://qr-manager.ai/api/mcp
- 4
Authenticate via OAuth
Claude will redirect you to qr-manager.ai to authorize the connection. Sign in with your account — your API key is used automatically behind the scenes. No manual key entry needed.
- 5
Test the connection
In a Claude conversation, type: "List my QR codes". Claude will call qr-manager.ai and return your codes.
Setup: ChatGPT (chatgpt.com)
ChatGPT supports MCP servers via its custom app builder. Developer mode must be enabled first.
- 1
Enable Developer mode
Open ChatGPT → Settings → Apps → Advanced Settings and toggle on Developer mode.
- 2
Create a new app
Click Create app. Enter a name (e.g. QR Manager), set Connection (Server URL) to https://qr-manager.ai/api/mcp, and set Authentication to OAuth.
- 3
Confirm and create
Check the acknowledgement checkbox and click Create app.
- 4
Authorize with QR Manager
A pop-up will appear. Click "Sign in with QR Manager AI" to complete the OAuth flow and connect your account.
- 5
Use the app in a conversation
Start a new chat and type: "List my QR codes". ChatGPT will call qr-manager.ai and return your codes.
Setup: Cursor IDE
Cursor uses a JSON config file to register MCP servers. You can use OAuth or pass your API key directly.
Option A — OAuth (recommended)
- 1
Open Cursor settings
Press Cmd/Ctrl+Shift+J or go to File → Preferences → Cursor Settings → MCP.
- 2
Add server configuration
Click "Add new global MCP server" and paste the following JSON configuration into your mcp.json file:
{ "mcpServers": { "qr-manager": { "url": "https://qr-manager.ai/api/mcp" } } } - 3
Reload and authenticate
Save the config file. Cursor will prompt you to authenticate — click the link and authorize qr-manager.ai via OAuth in your browser.
- 4
Use in Composer
Open Cursor Composer (Cmd/Ctrl+I) and reference your QR codes: "Create a new dynamic QR for our landing page and set the title to Summer Campaign 2026".
Option B — API key (no browser auth required)
If OAuth isn't available in your Cursor version, pass your API key directly in the config:
Replace YOUR_API_KEY_HERE with a key from Settings → API Keys. Keep this file private — never commit it to source control.
Setup: Glean & Other MCP Clients
Any MCP 2024-11-05+ compatible client works. Use these values when adding a custom connector:
| Field | Value |
|---|---|
| Server URL | https://qr-manager.ai/api/mcp |
| Auth type | OAuth 2.0 or Bearer token |
| OAuth base URL | https://qr-manager.ai |
| Transport | HTTP (Streamable HTTP) |
| MCP version | 2024-11-05 |
Available MCP Tools
These tools are exposed to your AI assistant once connected. You don't call them directly — the AI uses them automatically in response to your natural language requests.
List all QR codes with title, short URL, type, scan count, and creation date. Optionally filter by QR type or limit the number of results.
Example: "Show me all my URL QR codes"
Get full details for a specific QR code by its slug — including destination URL, styling, expiry, pixel IDs, and notification settings.
Example: "Get the details for QR code 'summer-sale'"
Get scan analytics for a specific QR code: total scans, unique scans, top countries, device and browser breakdown. Defaults to the last 30 days; accepts custom date ranges. Pro/Enterprise also returns cities, regions, OS, referrers, and languages.
Example: "How many scans did my 'Product Launch' QR get last month?"
Get account-wide analytics across all QR codes: total codes, total scans, top performers, and geographic breakdown. Defaults to the last 30 days; accepts custom date ranges.
Example: "Give me a summary of all my QR code activity this quarter"
Create a new QR code of any type (URL, vCard, WiFi, SMS, Email, Phone) or a short link (SHORTLINK — redirect-only, no QR image). Accepts title, folder, expiry date, max scans, UTM params, and styling options.
Example: "Create a short link to https://example.com/sale" or "Create a WiFi QR code for network 'CafeGuest'"
Update any field of an existing QR code by slug — destination URL, content, title, folder, expiry, max scans, or any styling option. Works on all QR types.
Example: "Change the destination URL for 'summer-sale' to https://newsite.com/sale"
Update the redirect destination of a URL-type QR code. Legacy alias for update_qr_code — use update_qr_code for new integrations.
Example: "Update the URL for slug 'promo-2024' to https://example.com/new"
Move a QR code to the trash. It is not permanently deleted and can be restored from the dashboard. The QR code stops redirecting while in trash.
Example: "Trash the QR code with slug 'old-campaign'"
Set email alert thresholds for a QR code: alert every N scans, when N scans remain before the limit, N days before expiry, or after N days of inactivity. Pass null to clear any alert.
Example: "Alert me every 500 scans for the 'event-flyer' QR code"
List all folders in your account with their name, ID, and QR code count.
Example: "What folders do I have?"
Create a new folder for organising QR codes. Optionally nest it under an existing top-level folder.
Example: "Create a folder called 'Spring Campaign 2026'"
Rename an existing folder.
Example: "Rename folder 'Spring Campaign 2026' to 'Summer Campaign 2026'"
Delete a folder by name. QR codes inside are unlinked (not deleted) and moved to no-folder.
Example: "Delete the folder 'Old Campaigns'"
Find us in MCP Registries
QR Manager is listed in the following MCP directories. You can install directly from any of these registries in supported AI clients.
The canonical registry maintained by the MCP project — the primary discovery source for Claude and other MCP-native clients.
Large community MCP marketplace with install stats and search.
smithery.ai/servers/benjamin-71ex/qr-manager-aiCommunity-curated MCP server directory with reviews and install guides.
mcp.so/server/qr-manager.ai/qr-manager.aiTroubleshooting
"Unauthorized" or 401 error
Check that your API key is still active in Settings → API Keys. If it was regenerated, update it in your MCP config. For OAuth connections, try re-authorizing by removing and re-adding the integration.
"MCP server not found" in Cursor
Verify the JSON config syntax — even a trailing comma will cause a parse error. Cursor will show a red dot next to the server name if it can't connect. Check the Cursor output panel (View → Output → MCP) for details.
AI says it doesn't have QR tools
Make sure the MCP server status shows as connected (green dot in Cursor; visible in Claude's integrations panel). If it was just added, restart the AI session.
"You need a Starter plan" error
MCP access requires a paid plan. Upgrade at /upgrade and ensure you're logged into the same account your API key belongs to.
OAuth loop — keeps redirecting without authorizing
Make sure you're signed in to qr-manager.ai in the same browser before starting OAuth. Clear cookies for qr-manager.ai and try again. If using Cursor, try the API key method instead.
Still stuck?
Our support team can help you get connected.