HomeBlogSMLLR REST API & MCP Server: Query QR Analytics From Your Own Systems or an AI Agent

SMLLR REST API & MCP Server: Query QR Analytics From Your Own Systems or an AI Agent

SMLLR's read-only REST API and its official @smllr/mcp-server package let you pull scan, campaign, and client analytics into your own dashboard, BI tool, or an AI agent like Claude — here's exactly what each one does and doesn't do.

By Aakash Verma, Founder

The Short Answer

SMLLR's REST API (Premium plan) is a read-only reporting API — seven endpoints covering account summaries, QR codes, campaigns, and clients — for pulling scan analytics into your own systems: a BI dashboard, a data warehouse, or custom internal tooling. @smllr/mcp-server wraps that same API as an MCP (Model Context Protocol) server, so Claude or any other MCP-compatible AI agent can query the same data directly, in plain conversation, using the same API key and the same Premium-plan requirement.

What the REST API Actually Covers

Seven endpoints, all GET, all read-only: an account-wide summary, a paginated list of QR codes, full analytics for one QR code, a paginated list of campaigns, full analytics for one campaign, a paginated list of clients (agency accounts), and full analytics for one client. Authenticate with an API key from Settings → API, sent as an x-api-key header or as a Bearer token in the Authorization header — a single static key per account, not a per-request OAuth flow. Rate limit is 60 requests per minute per key, a flat limit that doesn't scale up on higher usage.

What It Deliberately Doesn't Do

Worth being direct about, since these are the two things developers most often ask for: there's no endpoint to create or update a QR code's destination URL — QR creation and editing stay dashboard-only. And the API never returns Lead Hub contact data — no scanner names, emails, phone numbers, or consent records, under any endpoint. What it returns is aggregated scan, campaign, and client analytics only, the same discipline SMLLR's Webhooks and Slack integration follow.

The MCP Server: The Same Data, for an AI Agent Instead of a Dashboard

@smllr/mcp-server is a small, official npm package that exposes the same seven read-only capabilities as MCP tools — get_summary, list_qr_codes, get_qr_code, list_campaigns, get_campaign, list_clients, and get_client — so an MCP-compatible AI agent like Claude can call them directly as part of a conversation, instead of you manually querying the REST API and pasting results in. It's a wrapper, not a separate product: same API key, same Premium-plan requirement, same 60-requests-per-minute limit, same read-only scope, same absence of any Lead Hub data. Installing it is one command: claude mcp add smllr --env SMLLR_API_KEY=smllr_live_your_key_here -- npx -y @smllr/mcp-server for Claude Code, or the equivalent mcpServers block in claude_desktop_config.json for Claude Desktop.

Where This Actually Gets Used

A marketing team pipes the /summary and /campaigns endpoints into an existing BI tool (a Metabase or Looker dashboard already used for other channels) so QR performance sits alongside other marketing metrics instead of living only inside SMLLR's own dashboard. An agency managing several clients pulls /clients and /client/:id into an internal reporting layer that reformats the numbers into their own branded client-facing reports. With the MCP server specifically, someone can ask Claude directly "which of my QR campaigns had the most scans last week" or "summarize this client's scan trend" and get an answer sourced from live SMLLR data, without opening the dashboard or writing a script against the REST API first.

REST API vs. Webhooks: Pull vs. Push

The REST API and MCP server are both pull-based — you (or your AI agent) ask, and SMLLR answers with whatever's true at that moment. If what you actually need is to react the instant something happens rather than checking periodically, that's a different feature: Webhooks (Pro plan and above) push a signed payload to your own endpoint, Slack, or Zapier the moment a scan or QR event occurs. The two are complementary, not competing — polling for a scheduled report and reacting to a real-time event are different jobs, and SMLLR has a dedicated tool for each.

What It Costs

Both the REST API and the MCP server require SMLLR's Premium plan (₹14,999/month) and an API key generated from Settings → API — there's no separate charge for the MCP server itself since it's a thin wrapper over the same API and the same key.

Frequently Asked Questions

What plan do I need for API access?

Premium plan (₹14,999/month) for both the REST API and the MCP server — they share the same requirement and the same API key.

Can I create or edit QR codes through the API?

No. The API is read-only reporting — QR creation and destination edits happen through the SMLLR dashboard only.

Does the API or MCP server ever return lead/contact data?

No. Every endpoint returns aggregated scan, campaign, and client analytics only — never a scanner's name, email, phone number, or consent record from Lead Hub.

What's the rate limit?

60 requests per minute per API key, tracked per key rather than shared across your account or network — a flat limit that doesn't increase on higher usage.

Is the MCP server a separate product from the REST API?

No — it's an official npm package (@smllr/mcp-server) that wraps the exact same seven read-only endpoints as MCP tools, using the same API key and plan requirement.

Which AI agents work with the MCP server?

Any MCP-compatible client — Claude Code and Claude Desktop are the documented setups, and the same package works with any other tool that speaks the Model Context Protocol.

How do I authenticate?

A single static API key from Settings → API, sent as an x-api-key header or as a Bearer token in the Authorization header.

Should I use the API or Webhooks?

The REST API and MCP server are pull-based — good for scheduled reporting or ad-hoc queries. Webhooks are push-based — good for reacting to an event the instant it happens. Most setups that need both use each for its own job rather than picking one.

Related Resources