L1NK
by l1nk.website · remote · no sign-in to list tools · v1.0.0 · published by website.l1nk
Short links with QR, custom domains and bot-free click analytics. Create, edit, delete, analyze.
6 tools: 1 can delete or cancel things, 4 change things and 1 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things4Claude Code: ask: see these tools
- Only reads1Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http links https://l1nk.website/api/mcp --header 'Authorization: <your-authorization>'Findings
Matches of fixed checks, with the text they matched.
- Warnget_link
The server marks "get_link" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "get_link" says "get": a word for reading.
- Warnget_analytics
The server marks "get_analytics" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "get_analytics" says "get": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
6 tools
Deletes or cancels 1Claude Code: deny
delete_linkDelete a link permanently.No findings
Why it is in this group
- The name "delete_link" says "delete": a word for removing or ending something.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Delete a link permanently. Anyone opening it afterwards gets "not found". Confirm with the user first.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: true
- openWorldHint: false
Changes things 4Claude Code: ask
create_linkCreate a short link that redirects to a URL.No findings
Why it is in this group
- The name "create_link" says "create": a word for a change.
Description, as the server wrote it Create a short link that redirects to a URL. Returns shortUrl, which is what you share.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
get_analyticsClick analytics for the whole account: totals, bots, daily series and top links.1 finding
Why it is in this group
- The name "get_analytics" says "get": a word for reading.
- The description's first verb is "click": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "get_analytics" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "get_analytics" says "get": a word for reading.
Description, as the server wrote it 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).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
get_linkDetails of one link: destination, clicks, creation and expiry dates, last click and recent click history.1 finding
Why it is in this group
- The name "get_link" says "get": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "get_link" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "get_link" says "get": a word for reading.
Description, as the server wrote it Details of one link: destination, clicks, creation and expiry dates, last click and recent click history.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
update_linkChange where a link points, set a new expiry (Pro) or remove its expiry.No findings
Why it is in this group
- The name "update_link" says "update": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
Description, as the server wrote it Change where a link points, set a new expiry (Pro) or remove its expiry. The short code stays the same.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 1Claude Code: allow
list_linksList the active (not expired) links of the account with their click counts.No findings
Why it is in this group
- The name "list_links" says "list": a word for reading.
Description, as the server wrote it List the active (not expired) links of the account with their click counts.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http links https://l1nk.website/api/mcp --header 'Authorization: <your-authorization>'Run in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__links__list_links"
],
"ask": [
"mcp__links__create_link",
"mcp__links__get_link",
"mcp__links__update_link",
"mcp__links__get_analytics"
],
"deny": [
"mcp__links__delete_link"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as links. Review it before you use it.