Flyn
by flyn.to · remote · no sign-in to list tools · v1.0.0 · published by to.flyn
Create, edit and analyse short links and QR codes. OAuth sign-in works on the free plan.
8 tools: 2 can delete or cancel things, 2 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http flyn https://www.flyn.to/mcpFindings
Matches of fixed checks, with the text they matched.
- Warncreate_qr_code
The server marks "create_qr_code" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "create_qr_code" says "create": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
8 tools
Deletes or cancels 2Claude Code: deny
delete_linkPermanently delete a short link.No findings
Why it is in this group
- The name "delete_link" says "delete": a word for removing or ending something.
- The description says "Permanently delete".
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Permanently delete a short link. The short URL immediately stops redirecting and this cannot be undone.
Annotations the server declares
- title: Delete link
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: true
update_linkUpdate an existing short link.No findings
Why it is in this group
- The name "update_link" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Update an existing short link. Can re-point the destination URL without changing the printed/shared short link, plus edit title, slug, tags, expiration, rotation destinations, and Pro settings. Only the provided fields are changed. Link passwords are managed in the Flyn dashboard, not through this tool.
Annotations the server declares
- title: Update link
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
Changes things 2Claude Code: ask
create_qr_codeRender a QR code for any of six content types: a link, plain text, a v-card contact, a pre-filled email, a phone number, or a pre-filled SMS.1 finding
Why it is in this group
- The name "create_qr_code" says "create": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "create_qr_code" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "create_qr_code" says "create": a word for a change.
Description, as the server wrote it Render a QR code for any of six content types: a link, plain text, a v-card contact, a pre-filled email, a phone number, or a pre-filled SMS. The image is returned as a PNG you can look at. Nothing is stored, so this code is STATIC: it encodes the content directly and cannot be changed after it is printed. If the user wants a code they can repoint later, or wants to count scans, create a short link with create_short_link first and then call get_link_qr_code instead. Link and Text work on every plan; V-card, E-mail, Call and SMS require Flyn Pro, as do custom colours and SVG output. WiFi codes contain the network password, so they are made in the Flyn dashboard's QR builder, not through this tool: never ask the user for a WiFi password.
Annotations the server declares
- title: Create QR code
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
create_short_linkCreate a new Flyn short link that redirects to a destination URL.No findings
Why it is in this group
- The name "create_short_link" says "create": a word for a change.
Description, as the server wrote it Create a new Flyn short link that redirects to a destination URL. Returns the link id, slug, and full short URL. The destination is scanned with Google Safe Browsing before creation. Free accounts can create 25 links per calendar month; click limits, fallback URLs, weighted rotation, and conversion tracking require Flyn Pro. Password protection is set in the Flyn dashboard, not through this tool, so never ask the user for a link password.
Annotations the server declares
- title: Create short link
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 4Claude Code: allow
get_linkFetch one short link by its id, including destination, settings, total click count, and its conversion counters (conversionTracking, conversions, conversionValueCents).No findings
Why it is in this group
- The name "get_link" says "get": a word for reading.
Description, as the server wrote it Fetch one short link by its id, including destination, settings, total click count, and its conversion counters (conversionTracking, conversions, conversionValueCents).
Annotations the server declares
- title: Get link details
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_link_analyticsFetch click events for a short link, newest first.No findings
Why it is in this group
- The name "get_link_analytics" says "get": a word for reading.
Description, as the server wrote it Fetch click events for a short link, newest first. Every plan sees timestamps and total counts; country, city, device, OS, browser, and referrer detail requires Flyn Pro (fields are null on the free plan). Free plans see the last 30 days of history. Click events carry no conversion data: for conversions and total conversion value, read the link itself with get_link or list_links.
Annotations the server declares
- title: Get link analytics
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_link_qr_codeRender a scannable QR code for an existing Flyn short link.No findings
Why it is in this group
- The name "get_link_qr_code" says "get": a word for reading.
Description, as the server wrote it Render a scannable QR code for an existing Flyn short link. Because the code encodes the short link rather than the destination, you can repoint the link later and every printed code follows, and each scan is counted as a click. The image is returned as a PNG you can look at. Custom colours and SVG output require Flyn Pro.
Annotations the server declares
- title: Get QR code for a link
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
list_linksList the account's short links with pagination, search, and filtering.No findings
Why it is in this group
- The name "list_links" says "list": a word for reading.
Description, as the server wrote it List the account's short links with pagination, search, and filtering. Returns each link's id, slug, short URL, destination, click count, and settings, plus its conversion counters: conversionTracking (whether the link carries a click id), conversions, and conversionValueCents (total value reported for those conversions, in cents, not currency converted).
Annotations the server declares
- title: List links
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http flyn https://www.flyn.to/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__flyn__list_links",
"mcp__flyn__get_link",
"mcp__flyn__get_link_analytics",
"mcp__flyn__get_link_qr_code"
],
"ask": [
"mcp__flyn__create_short_link",
"mcp__flyn__create_qr_code"
],
"deny": [
"mcp__flyn__update_link",
"mcp__flyn__delete_link"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as flyn. Review it before you use it.