Search / io.github.neoshrek/qrverloz-mcp
QrVerloz
R0· no sign-inQR codes active 90 days, claimable forever. Request an API key in chat to retarget and track scans.
v1.0.0 · active · repository · descriptor JSON · versions
Search / io.github.neoshrek/qrverloz-mcp
R0· no sign-inQR codes active 90 days, claimable forever. Request an API key in chat to retarget and track scans.
v1.0.0 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"qrverloz-mcp": {
"type": "http",
"url": "https://qrverloz.com/api/mcp",
"headers": {
"Authorization": "Bearer ${QRVERLOZ_MCP_TOKEN}"
}
}
}
}claude mcp add --transport http qrverloz-mcp https://qrverloz.com/api/mcp --header "Authorization: Bearer ${QRVERLOZ_MCP_TOKEN}"[mcp_servers.qrverloz-mcp]
url = "https://qrverloz.com/api/mcp"
bearer_token_env_var = "QRVERLOZ_MCP_TOKEN"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"qrverloz-mcp": {
"type": "remote",
"url": "https://qrverloz.com/api/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:QRVERLOZ_MCP_TOKEN}"
}
}
}
}{
"mcpServers": {
"qrverloz-mcp": {
"type": "http",
"url": "https://qrverloz.com/api/mcp",
"headers": {
"Authorization": "Bearer ${QRVERLOZ_MCP_TOKEN}"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=qrverloz-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vcXJ2ZXJsb3ouY29tL2FwaS9tY3AiLCJoZWFkZXJzIjp7IkF1dGhvcml6YXRpb24iOiJCZWFyZXIgJHtRUlZFUkxPWl9NQ1BfVE9LRU59In19"
}{
"servers": {
"qrverloz-mcp": {
"type": "http",
"url": "https://qrverloz.com/api/mcp",
"headers": {
"Authorization": "Bearer ${QRVERLOZ_MCP_TOKEN}"
}
}
}
}{
"mcpServers": {
"qrverloz-mcp": {
"httpUrl": "https://qrverloz.com/api/mcp",
"headers": {
"Authorization": "Bearer ${QRVERLOZ_MCP_TOKEN}"
}
}
}
}extensions:
"qrverloz-mcp":
enabled: true
name: "qrverloz-mcp"
type: streamable_http
uri: "https://qrverloz.com/api/mcp"
headers:
"Authorization": "Bearer ${QRVERLOZ_MCP_TOKEN}"
timeout: 300
Placeholders to fill from your own secret store: ${QRVERLOZ_MCP_TOKEN}. The registry never accepts secret values.
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: request_api_key (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); create_qr_code (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_qr_code (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 1,284 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +reachable +uptime-100% ~updated-175d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://qrverloz.com/api/mcp streamable-http | none | yes | 100% | 267 ms | 2025-11-25 | 2026-10-20 |
create_qr_code | Create a new QR code. Authenticated users (API key required) get a permanent short URL that can be retargeted at any time without reprinting the physical QR image — limits are set by the account plan. Anonymous users receive a one-time data URI image that is not stored and cannot be updated. On success the result is a pre-formatted markdown table — display it exactly as received, do not reformat or summarise. |
delete_qr_code | Permanently delete a QR code and its scan history. This action cannot be undone. To prevent accidental or injected deletions, you MUST supply confirm_title — the exact title of the code as returned by get_qr_code or list_qr_codes. If the title does not match the stored record, the deletion is refused. Always call get_qr_code or list_qr_codes first to retrieve the exact title before calling this tool. Requires authentication. |
get_account_info | Get your account details: current plan, QR code usage, and which features are available. Use this before create_qr_code to check remaining capacity, or to confirm which features are active on your plan. Requires authentication. |
get_qr_code | Look up a single QR code by its internal ID or short code. Returns a pre-formatted markdown table with fields: Title, ID, Short Code, Short URL, Destination, Status, Created, QR Code Link. Display the table exactly as received — do not reformat or summarise. Requires authentication. |
get_qr_scans | Get the total lifetime scan count for a QR code. Returns a pre-formatted markdown table with fields: Title, ID, Short Code, Short URL, Destination, Status, Created, QR Code Link, Total Scans. Display the table exactly as received — do not reformat or summarise. Requires authentication. |
list_qr_codes | List all QR codes in your account. Returns one pre-formatted markdown table per QR code with fields: Title, ID, Short Code, Short URL, Destination, Status, Created, QR Code Link. Display each table exactly as received — do not reformat or summarise. Requires authentication. |
request_api_key | Get a free API token — no account or email required. The token gives you up to 5 QR codes that can be updated at any time. IMPORTANT LIFETIME WARNING: the token expires after 90 days, and QR codes are permanently deleted ~90 days after that (~180 days total). To keep codes alive permanently, claim a free account at https://qrverloz.com/claim — this must be done before the token expires. Save the returned token: it is shown only once. Add it to your MCP client config under Authorization: Bearer, then call create_qr_code. |
update_qr_target | Change the destination URL of a QR code without touching the printed image. Print once, redirect anywhere — forever. Accepts either the internal qr_code_id or the short_code from the redirect URL. On success the result is a pre-formatted markdown table — display it exactly as received, do not reformat or summarise. Requires authentication. |
Schemas: list_tools.
{
"name": "io.github.neoshrek/qrverloz-mcp",
"title": "QrVerloz",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://qrverloz.com/api/mcp",
"type": "streamable-http",
"headers": [
{
"name": "Authorization",
"isSecret": true,
"description": "Bearer token for authentication. Format: 'Bearer YOUR_API_KEY'. Request a free API key using the request_api_key tool directly in chat."
}
]
}
],
"version": "1.0.0",
"repository": {
"url": "https://github.com/neoshrek/qrverloz-mcp",
"source": "github"
},
"description": "QR codes active 90 days, claimable forever. Request an API key in chat to retarget and track scans."
}