Bots St

bots.st/esyurl

esyURL

Create short links, QR codes, and visit analytics

3476 ms

answered our call

State
Answered
Protocol
MCP 2025-06-18
Tools listed
22
Answered
3 of the last 3 calls

How to reach it

  • MCP, HTTPhttps://esyurl.fyi/mcpNeeds header Authorization

What it can do

ToolWhat it says it does
add_links_to_groupAdd up to 25 links to a group in one call. Idempotent: links already in the group are reported in alreadyMembers rather than failing. Fails with not_found if any linkId is unknown (nothing is added).
create_groupCreate a group to organise short links (e.g. a campaign or a venue). Groups are many-to-many: a link can be in up to 20 groups. Add links with add_links_to_group, or pass groupIds when creating/updating a link.
create_short_linkCreate a short link that redirects to targetUrl, or shows a link page (pass page instead of targetUrl). Returns the link, including linkId (use it with the other tools) and shortUrl (share this). Give a slug for a memorable URL, otherwise a random 8-character one is generated. Slugs are unique…
delete_groupDelete a group. Its links are NOT deleted; they just stop being members.
delete_short_linkPermanently delete a short link and remove it from its groups. Its short URL and any printed QR codes stop working (404) and the slug becomes free for anyone. Prefer update_short_link status "paused" if the link may come back.
get_accountYour account: tenant (linkLimit and linkCount for sign-up accounts; ownerEmail and claimedAt once a human has claimed it) and the calling credential with its scopes.
get_custom_domainGet this tenant's custom (alias) domain and advance its setup as far as DNS allows. Use it to check progress after creating a DNS record. Lifecycle: pending_validation (create the certificate_validation record, and the optional ownership_verification TXT if listed) → provisioning (automatic…
get_groupFetch one group. To see its links use list_short_links with group = groupId.
get_group_visitsCombined visit analytics for a group's current member links: totals {visits, qr, direct, bot} and a zero-filled per-day breakdown (UTC). Links removed from the group no longer count.
get_short_linkFetch one short link by linkId, including its groupIds and lifetime visitCount.
get_short_link_visitsVisit analytics for one link: totals over the window ({visits, qr, direct, bot}; visits = qr + direct, bots such as link-preview crawlers are counted separately and excluded from visits), a zero-filled per-day breakdown (UTC, oldest first), and the most recent individual visits (newest first, with…
list_groupsList your groups (with linkCount), ordered by groupId. Page with cursor = nextCursor.
list_short_linksList your short links, newest first. Filter by tag and/or groupId. A page can hold fewer than limit items even when more exist: keep calling with cursor = nextCursor until nextCursor is absent.
preview_link_pageRender a link's page as HTML for a simulated visit, without recording anything: the saved page, or a draft (page) to try before saving (pictures given as data URLs are drawn inline; nothing is stored or charged). Returns the visible item ids (items with "when" conditions depend on the visit) and…
remove_custom_domainRemove this tenant's custom domain. Short links immediately stop resolving on it (QR codes printed with it break) and new short URLs use the platform domain. The DNS records can be deleted afterwards.
remove_link_from_groupTake one link out of a group. The link itself is untouched.
render_qr_codeRender a QR code as a PNG image. Pass linkId to render a short link: the image encodes {shortUrl}?s=qr so scans are counted as qr visits, and the link's qrStyle is the default look. Or pass data to render any text (URL, Wi-Fi config, vCard...) as a static QR code that is not tracked. Returns the…
set_custom_domainServe all of this tenant's short links on a domain it controls, e.g. "go.acme.com" → https://go.acme.com/{slug}. Once active, new short URLs and QR codes use it; links keep working on the platform domain too. One domain per tenant: setting a different one replaces (and tears down) the current one…
set_domain_home_pageChoose the link that the root (/) of this tenant's custom domain shows: a link page becomes the domain's home page, a redirect link sends / there. Pass linkId null to clear it (/ answers 404 again). Has no effect on the platform domain.
test_redirect_rulesDry run: which destination would a visit with these properties get from this link's rules? For a link page with no matching rule it returns page.itemIds (the buttons that visit would see) instead of targetUrl. Records no visit. Pass a real userAgent to test device routing, e.g. iPhone…
update_groupRename a group or change its description or color. Membership doesn't change here.
update_short_linkChange a short link. Only the fields you pass change; tags, metadata, qrStyle and groupIds are replaced wholesale (pass the full new list; [] clears). Set targetUrl to send visitors somewhere else: the short URL and printed QR codes keep working. Set status "paused" to make the short URL answer…

In its maker's words

Short links and trackable QR codes: editable after printing, device routing, scan stats.

Website
esyurl.fyi
Source
github.com/esyurl/mcp
Publisher
esyurl
Listed from
the official MCP Registry as io.github.esyurl/mcp
Version
0.2.0, updated 7 Oct 2026
Kinds of work
Shops and payments, Messaging and support, Images, video and audio

The domain it lives on

esyurl.fyi
registered 30 Sep 2026 (1 month ago), at Cloudflare, Inc., its home page is a working site

From our own crawl of domain names: registry records and the home page as our crawler last saw it.

Every call we made

WhenWhat happenedTime
Answered3476 ms
Answered3570 ms
Answered1658 ms

Next door

Is this your bot? Claim its address to add a verified badge and keep the listing current.