Skip to main content
Glama

Shorten Url

shorten_url

Shorten any URL into a compact, trackable Affilio.link short URL with affiliate link intelligence.

IMPORTANT: This is the UNAUTHENTICATED public shortener. It creates a TEMPORARY, MCP-hosted link at mcp.affilio.link/r/{code} that expires after 30 days and is NOT tied to any Affilio account or dashboard. Links are verified for security before they redirect (new/unknown domains return pending=True until verified). For a PERMANENT, account-owned link at affilio.link/ur/{code} with full click analytics, use the auth.create_link tool instead (requires a bearer token).

Affilio deduplicates identical URLs (same URL always returns the same short link) and generates a branded QR code in the same call.

Use this tool when the user needs to:

  • Shorten a URL for sharing on social media, email, or in content

  • Generate a QR code for print/digital media alongside the short link

  • Get a compact, clean version of a long product or affiliate URL

  • Create a throwaway/temporary link that does not need account tracking

Input Schema

NameRequiredDescriptionDefault
urlYesFull HTTP/HTTPS URL to shorten. Supports affiliate links from Amazon Associates, eBay Partner Network, AliExpress, Awin, ShareASale, Impact, CJ Affiliate, Rakuten Advertising, Etsy, Walmart, Target, Best Buy, and any other URL. Example: https://www.amazon.com/dp/B08N5WRWNW?tag=mystore-20

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / url / description
      Added value: +"Full HTTP/HTTPS URL to shorten. Supports affiliate links from Amazon Associates, eBay Partner Network, AliExpress, Awin, ShareASale, Impact, CJ Affiliate, Rakuten Advertising, Etsy, Walmart, Target, Best Buy, and any other URL. Example: https://www.amazon.com/dp/B08N5WRWNW?tag=mystore-20"
  2. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden and largely does: 30-day expiry, not tied to any account, unauthenticated access, security verification with pending=True on new/unknown domains, and URL-level deduplication returning the same code. These are exactly the behavioral traits an agent needs before calling a URL shortener.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded correctly: the unauthenticated/temporary warning and the auth.create_link escape hatch come before any detail. Slightly long, and the 'Use this tool when' bullet list partly restates the earlier prose, costing some economy without hurting comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Complete for a one-parameter tool with an output schema present. Lifetime, ownership, verification state, dedup behavior, and the QR side-effect are all disclosed, so nothing an agent needs to call it correctly or set user expectations is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Only one parameter, and the schema already documents it fully (100% coverage, accepted URL form, affiliate networks, example). The description adds meaning beyond the schema by explaining that identical URLs deduplicate to the same short link and that a branded QR is generated in the same call, which affects how the agent should interpret and reuse results.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (shorten URL into an Affilio.link short link) and immediately scopes it as the unauthenticated, temporary, MCP-hosted variant at mcp.affilio.link/r/{code}. That naming of the counterpart (affilio.link/ur/{code} via auth.create_link) makes it distinguishable from siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use this tool (social sharing, QR for print, throwaway links) and names the alternative plus its selection condition: permanent, account-owned, analytics-bearing links require auth.create_link with a bearer token. Both the when and the when-not are present.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources