Skip to main content
Glama
sklivvz

TinyURL MCP

by sklivvz

tinyurl_create

Creates an exact TinyURL short link from a required destination URL, with optional alias and expiration, through the authenticated TinyURL API.

Instructions

Create one exact TinyURL short link through POST /create. Requires url; domain is fixed to tinyurl.com; alias and expires_at are optional. Reuses durable operation results and never retries an ambiguous write blindly. Token permission: Create TinyURL.

Input Schema

NameRequiredDescriptionDefault
urlYesExact absolute http(s) destination URL, preserved byte-for-byte.
aliasNoExact alias: 1-30 letters, digits, underscore or hyphen.
domainNoFixed tinyurl.com domain.
expires_atNoISO 8601 date-time or duration accepted by TinyURL, or null for never.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the required token permission ('Create TinyURL'), the idempotent/durable-result reuse behavior, and the no-blind-retry policy on ambiguous writes. It does not state what happens on alias collision or rate limits, which keeps it from a 5.

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

Conciseness5/5

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

Three sentences, front-loaded with the action and endpoint, then requirements, then behavioral caveats. Every clause carries information an agent cannot get from the schema.

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

Completeness4/5

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

For a write tool with no annotations and no output schema, it covers method, required inputs, auth, and idempotency semantics well. Only the shape of the returned link object is unaddressed, which is a minor gap given the simplicity of the call.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are already fully documented; the description only restates that url is required and domain is fixed, which duplicates the single-value enum. No extra format or constraint detail beyond the schema.

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 ('Create one exact TinyURL short link') plus the underlying endpoint POST /create. The word 'one exact' scopes it against tinyurl_bulk_create, so an agent can route correctly without opening the schema.

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

Usage Guidelines4/5

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

The single-link framing implicitly excludes bulk creation, and 'Reuses durable operation results and never retries an ambiguous write blindly' tells the agent how to behave on retry. It stops short of naming siblings for follow-up operations (update, change_destination, set_expiration), so the when-not guidance is inferred rather than explicit.

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