L1NK

Short links with QR, custom domains and bot-free click analytics. Create, edit, delete, analyze.

Should I use this

Quality & Safety

A
Description quality
97%
Schema completeness
87%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~797Tokens (tool definitions)
~937 BTypical response size
Moderate attention impact (0.62% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "links": {
      "url": "https://l1nk.website/api/mcp"
    }
  }
}

Remote endpoints

https://l1nk.website/api/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡create_link(url, alias, name, expires_in_days, domain_id)

Create a short link that redirects to a URL. Returns shortUrl, which is what you share.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Destination URL. https:// is added if missing.",
      "maxLength": 2048
    },
    "alias": {
      "type": "string",
      "description": "Optional custom alias (letters, numbers, - and _; max 20).",
      "pattern": "^[a-zA-Z0-9_-]{1,20}$"
    },
    "name": {
      "type": "string",
      "description": "Optional label to recognise the link in the dashboard.",
      "maxLength": 80
    },
    "expires_in_days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "description": "Optional expiry. Pro plan only."
    },
    "domain_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Optional id of a verified custom domain of the account."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
🟢list_links

List the active (not expired) links of the account with their click counts.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_link(code)

Details of one link: destination, clicks, creation and expiry dates, last click and recent click history.

Input Schema

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "The short code or custom alias of the link (the part after the slash).",
      "pattern": "^[a-zA-Z0-9_-]{1,64}$"
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}
🔴update_link(code, url, expires_in_days, remove_expiration)

Change where a link points, set a new expiry (Pro) or remove its expiry. The short code stays the same.

Input Schema

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "The short code or custom alias of the link (the part after the slash).",
      "pattern": "^[a-zA-Z0-9_-]{1,64}$"
    },
    "url": {
      "type": "string",
      "description": "New destination URL.",
      "maxLength": 2048
    },
    "expires_in_days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "description": "New expiry, counted from today. Not together with remove_expiration."
    },
    "remove_expiration": {
      "type": "boolean",
      "description": "true to make the link permanent."
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}
🔴delete_link(code)

Delete a link permanently. Anyone opening it afterwards gets "not found". Confirm with the user first.

Input Schema

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "The short code or custom alias of the link (the part after the slash).",
      "pattern": "^[a-zA-Z0-9_-]{1,64}$"
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}
🟢get_analytics(days)

Click analytics for the whole account: totals, bots, daily series and top links. The plan caps how far back you can look (Free 30 days, Pro 365).

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "description": "Days to look back. Default 30."
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools