# Uniqode MCP

> Uniqode MCP Server lets your AI client manage, generate, and analyze QR codes entirely through natural conversation. It handles everything from creating dynamic vCards and website links to running detailed scan analytics by location or time. If you run campaigns using physical materials that need digital tracking, this is how you get the data.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** qr-codes, dynamic-qr, tracking, marketing-analytics, branding, campaign-management

## Description

**Uniqode lets your AI client handle every angle of QR code management—creation, organization, and deep performance tracking—all through natural conversation. Forget complicated dashboards; you just tell your agent what you need, and it handles the heavy lifting.**

Your agent runs twelve tools that cover the entire life cycle of any campaign material. You start by building out assets using `create_qrcode`, letting your client generate a new QR code for anything: a simple website URL, a detailed vCard contact, or some other unique data type. If you need to change where an existing code points without reprinting materials, you just use `update_qrcode` to instantly redirect the target URL.

To keep everything clean and accounted for, your agent manages your entire library's structure. You can view every campaign you’ve ever set up by running `list_campaigns`, giving you an overview of what needs tracking or attention. For better internal grouping, it shows you all available folder structures with `list_folders` and lets you filter everything using `list_tags`. To see the whole picture of your account setup, you can check your organization details with `list_organizations` or get a comprehensive index of every code managed by calling `list_qrcodes`. When you need specific info on just one asset, `get_qrcode` pulls all the deep details for that single QR code ID—like when it was created and what its current destination is.

For tracking performance, this server gets granular. You can pull scan metrics showing exactly which country or city scanned a code most often using `get_analytics_location`. If you need to know *when* the scans happened, running `get_analytics_time` gives data broken down by specific date ranges or times of day. This lets you measure performance based on geography and time stamps. You can also check your overall account structure and billing status with `get_account_info`. The system keeps things tight; if a code is dead or obsolete, you use `delete_qrcode` to remove it from the Uniqode account entirely.

It's all about control. When your agent pulls analytics, it doesn't just give you numbers—it tells you *where* and *when* people are engaging with your physical materials. This means you know if a flyer handed out at a convention got scanned in Chicago or downtown Miami, or if the scans spiked right after lunch hours on Tuesday. You'll use `list_qrcodes` to get that initial index, then drill down into specific campaigns via `list_campaigns`, making sure every single asset is accounted for and ready for deep analysis.

## Tools

### create_qrcode
Generates a new QR code, letting you specify if it's for a website URL, vCard contact, or other type.

### delete_qrcode
Removes an existing QR code from your Uniqode account entirely.

### get_account_info
Retrieves general details about your overall Uniqode account setup and billing status.

### get_analytics_location
Pulls scan metrics, showing you the country or city where a specific QR code was scanned most often.

### get_analytics_time
Analyzes when codes were scanned, giving you data broken down by time of day or date range.

### get_qrcode
Fetches all the specific details—like creation date and current destination—for a single QR code ID.

### list_campaigns
Lists every campaign you've set up, helping you see what needs attention or tracking.

### list_folders
Displays the folder structure within your account so you can organize codes logically.

### list_organizations
Retrieves a list of all organizations or business units linked under your main account.

### list_qrcodes
Shows you an index of every single QR code currently managed in the system.

### list_tags
Lists all tags you've applied to your codes, helping with internal categorization and filtering.

### update_qrcode
Changes the destination URL of an existing QR code without needing to generate a new one.

## Prompt Examples

**Prompt:** 
```
List all my QR codes.
```

**Response:** 
```
I've retrieved your QR codes. You have 12 active codes including 'Winter Sale 2024', 'Support vCard', and 'Menu - Main Branch'. Which one would you like scan analytics for?
```

**Prompt:** 
```
Show me scan analytics for the 'Winter Sale' QR code by location.
```

**Response:** 
```
Fetching geographic data... The 'Winter Sale' code has been scanned 450 times. Top locations include United States (210 scans), United Kingdom (105), and Canada (85). Shall I break it down by city?
```

**Prompt:** 
```
Change the destination of QR code '10293' to 'https://vinkius.com/new-promo'.
```

**Response:** 
```
Update successful! QR code 10293 is now redirecting to 'https://vinkius.com/new-promo'. The physical QR code remains valid and will instantly lead users to the new page.
```

## Capabilities

### Generate Unique Codes
Create new QR codes for websites, vCards, or social media using `create_qrcode`.

### Track Scan Performance
Fetch detailed scan metrics by time (`get_analytics_time`) and physical location (`get_analytics_location`).

### Manage Code Destinations
Change a QR code's target URL instantly using `update_qrcode`.

### Organize Campaigns
List and manage your entire library by viewing campaigns (`list_campaigns`), folders (`list_folders`), and tags (`list_tags`).

### Retrieve Account Details
Pull essential account structure information, like organization details or a list of all codes, using `get_account_info`.

## Use Cases

### A store needs to know if their window decals are working.
The marketing team installed 50 decals across the city. Instead of waiting for a report, they ask their agent: 'Show me scan analytics for the 'Fall Sale' code by location.' The agent uses `get_analytics_location` and reports that 70% of scans came from within five miles of the flagship store, telling them where to focus next.

### A conference needs to update its agenda links fast.
The keynote speaker changed their talk page. The ops team doesn't want to reprint materials. They tell the agent: 'Update the destination for code 10293.' The agent uses `update_qrcode`, instantly redirecting all current and future scans to the new URL.

### An internal tool needs to generate employee access codes.
The HR team has 50 employees starting next week. Instead of creating links manually, they ask the agent: 'Generate vCard QR codes for these names.' The agent uses `create_qrcode` and handles all the required formats and branding controls in bulk.

### A business owner needs to review quarterly performance.
The owner asks the agent to analyze all codes across 'Q2 Marketing' campaigns. The agent runs `list_campaigns` first, then uses `get_analytics_location` and `get_analytics_time` on each one, summarizing which combination of time and place drove the most scans.

## Benefits

- Need to know where your codes are working? Use `get_analytics_location` to pinpoint the top cities and countries scanning a code. You get actionable geographic data, not just raw numbers.
- Campaigns change constantly. Instead of printing new materials, use `update_qrcode`. This tool changes the destination URL instantly, so your physical codes always point to fresh content.
- Keep things clean with organizational tools. Use `list_folders`, `list_campaigns`, and `list_tags` together. Your agent can list all relevant codes for 'Q3 2024 Marketing' across three folders in one prompt.
- Saving time is huge. Instead of clicking through ten different tabs to find a code, you ask the agent using its ID with `get_qrcode`, and it gives you all the details immediately.
- Automate staff onboarding. Use `create_qrcode` to batch-generate vCard codes for new hires. It's faster than manual input and keeps your organization clean.

## How It Works

The bottom line is that your AI client speaks to Uniqode directly, bypassing all dashboards and manual API calls.

1. Subscribe to the server and enter your Uniqode API Key (you find this in your account settings).
2. Tell your agent what you need. For example: 'List all campaigns, then get scan analytics for the best performer.'
3. The agent executes the necessary tools (`list_campaigns`, `get_analytics_location`), compiles the data, and gives you a plain-language summary.

## Frequently Asked Questions

**How do I use `list_campaigns` to find a specific type of code?**
`list_campaigns` shows you all existing campaign groupings. Once you see the right campaign name, you can then ask your agent to run analytics on the codes within that group using other tools.

**Can I change a QR code's destination URL without printing anything?**
Yes. Use `update_qrcode`. You just provide the ID of the existing code and the new target URL, and the server handles the redirect immediately.

**What is the difference between using `list_qrcodes` and `get_qrcode`?**
`list_qrcodes` gives you a comprehensive index of every code ID. However, `get_qrcode` pulls all the deep details—like the current status or creation date—for one specific code.

**How do I check if my account is set up correctly?**
You can run `get_account_info`. This tool retrieves general setup details, letting you verify your API key connection and overall organization structure through the agent.

**How do I use `list_folders` to find all the codes inside a specific parent organization?**
It returns a list of folder IDs and names within that scope. You'll need to pass those resulting IDs into the code listing tools (like `list_qrcodes`) to narrow down the results.

**Does using `delete_qrcode` permanently remove a code, and is there any way to restore it?**
Yes, deletion is immediate and permanent. Once the tool executes successfully, the QR code record is gone from Uniqode's system. There are no recovery options.

**How can I combine `list_tags` with scan analytics to track performance by specific categories?**
First, run `list_tags` to pull all available tag names. Then, you pass those valid tags when calling the location or time analytics tools; this filters your data down to only relevant codes.

**If I get an error using `get_account_info`, does it mean my API key is wrong, or is there another cause?**
Most often, a failure here indicates the provided API key isn't active or lacks permission for account read access. Always double-check your credentials and ensure they're current in the Uniqode dashboard.

**Can I change the URL of a QR code after it has been printed?**
Yes, if it is a dynamic QR code. Use the `update_qrcode` tool and provide the new destination URL. The physical code remains the same but the user will be redirected to the new link.

**How do I see where people are scanning my codes from?**
Run the `get_analytics_location` query with your QR Code ID. It returns scan data aggregated by country and city, allowing you to track geographic engagement.

**Is it possible to list all the tags I'm using for organization?**
Absolutely. Use the `list_tags` query. The agent will retrieve all tags used for categorization, helping you filter and find specific QR codes more easily.