L1NK
Short links with QR, custom domains and bot-free click analytics. Create, edit, delete, analyze.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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-httpWhat it can do
Tool inventory
Tools (6)
🟡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
Evidence