Productivity
esyurl.fyi
Manages URL short links by creating, listing, retrieving, updating, and deleting short links with visit counts and group associations.
ENDPOINT 1
https://esyurl.fyi/mcp
MCP server metadata
- Name
- esyurl
- Version
- 0.2.0
Manage short links: a stable short URL (e.g. https://esyurl.fyi/{slug}) that 302-redirects to a targetUrl you can change at any time. Every link can be rendered as a QR code (render_qr_code); the QR encodes the short URL with ?s=qr, so visits are counted separately as qr, direct or bot (get_short_link_visits). Organise links into groups (many-to-many) and get combined visit counts per group. Redirect rules (rules on create/update_short_link) send visitors to different destinations by os, device, browser, language, referrer, query, source or time, e.g. App Store vs Google Play; check them with test_redirect_rules. Changing targetUrl never requires reprinting a QR code or re-sharing the short URL. A custom domain (set_custom_domain) makes short URLs use the tenant's own hostname. Credentials: an operator-issued API key, or one an agent got by signing itself up (https://esyurl.fyi/auth.md). Self-signed-up tenants have a link quota (tenant.linkLimit in GET /v1/me) and pay once per new custom domain with x402 (USDC): set_custom_domain first returns the PaymentRequired, then accepts the payment in _meta["x402/payment"] or its payment argument. Everything else is free.
Known tools 19
get_short_linkFetch one short link by linkId, including its groupIds and lifetime visitCount.
Inferred read-onlydelete_short_linkPermanently delete a short link and remove it from its groups.
Potential side effectstest_redirect_rulesDry run: which destination would a visit with these properties get from this link's rules?
Inferred read-onlyget_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 source, referrerHost, userAgent, country when known, and ruleId when a redirect rule decided it; kept 90 days).
Inferred read-onlyget_group_visitsCombined visit analytics for a group's current member links: totals {visits, qr, direct, bot} and a zero-filled per-day breakdown (UTC).
Inferred read-onlyget_custom_domainGet this tenant's custom (alias) domain and advance its setup as far as DNS allows.
Inferred read-onlyset_custom_domainServe all of this tenant's short links on a domain it controls, e.
Inferred read-onlyCONNECT WITH APPROVAL
Client installation
Review this server and its permissions before adding it. Secret placeholders must be set locally.
Codex
~/.codex/config.toml
[mcp_servers.esyurl]
url = "https://esyurl.fyi/mcp"
enabled = true
Claude Code
.mcp.json
{
"mcpServers": {
"esyurl": {
"type": "http",
"url": "https://esyurl.fyi/mcp"
}
}
}
Claude Desktop
Settings → Connectors → Add custom connector
Name: esyurl
Remote MCP URL: https://esyurl.fyi/mcp
Add this remote URL as a custom connector in Claude Desktop. Availability depends on the user plan and workspace policy.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"esyurl": {
"url": "https://esyurl.fyi/mcp"
}
}
}
Visual Studio Code
.vscode/mcp.json
Add to Visual Studio Code{
"servers": {
"esyurl": {
"type": "http",
"url": "https://esyurl.fyi/mcp"
}
}
}
Generic MCP
Client-specific MCP configuration
{
"name": "esyurl",
"transport": "streamable-http",
"url": "https://esyurl.fyi/mcp"
}
MCP Inspector
Run the official MCP Inspector locally and enter the indexed Streamable HTTP endpoint.
TRUST AND VERIFICATION EVIDENCE
Loading Trust v2 evidence…
Checking the associated registrable domain. The BuiltWith key remains server-side.
Evidence is source-attributed and does not guarantee that a third-party server is safe. Risk labels are conservative metadata heuristics.