linkly-hq avatar

Linkly

linkly-hq/linkly-mcp-server

Connects Claude to Linkly's URL shortening and link management platform through a hosted OAuth server at mcp.linklyhq.com. No API keys or local installation needed. You get the full suite: create and update short links, pull click analytics with time series or grouped dimensions, manage custom domains and favicons, configure webhooks for click events, search across your workspace, and export detailed click records. The npm package is deprecated in favor of the hosted approach. Reach for this when you're managing marketing campaigns, tracking link performance, or automating URL workflows and want your assistant to handle the grunt work of shortening, organizing, and analyzing links without switching contexts.

GitHub stars
1
tools
25
transport
HTTP
last updated
Jun 22, 2026

Install

From registry metadata
$ npx add-mcp https://mcp.linklyhq.com --name linkly

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http linkly https://mcp.linklyhq.com

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 25 tools

Verified live against the running server on Nov 6, 2026.

test_authenticationTest API Authentication

Test API Authentication

No parameters. Call it with no arguments.

list_workspacesReturn details of authenticated workspace

Return details of authenticated workspace

No parameters. Call it with no arguments.

batchDeleteLinksBatch delete multiple links1 params

Batch delete multiple links

Parameters* required
ids*array
Array of link IDs to delete
update_workspaceUpdate workspace settings. Only the fields provided are changed; omitted fields keep their current values.2 params

Update workspace settings. Only the fields provided are changed; omitted fields keep their current values.

Parameters* required
namestring
Workspace name
webhooksarray
REPLACES the workspace's full webhook subscription list. Omit to leave webhooks unchanged; prefer subscribe_webhook / unsubscribe_webhook for adding or removing a single URL.
list_linksList links with sorting and search5 params

List links with sorting and search

Parameters* required
pageinteger
page_sizeinteger
searchstring
Search Query
sort_bystring
Field to sort by
sort_dirstring
Sort directionone of asc · desc
pingHealth check1 params

Health check

Parameters* required
message*string
a message to ping , default to Hello From Linkkly
create_linkCreate short links and URL shorteners. Use this when the user asks to shorten a URL, create a short link, or make a link shorter.23 params

Create short links and URL shorteners. Use this when the user asks to shorten a URL, create a short link, or make a link shorter.

Parameters* required
block_botsboolean
Block known bots and spiders from following the link
cloakingboolean
Hide destination URL by opening in an iframe
domainstring
Custom domain for the short link (without trailing /). Must be a domain that already belongs to this workspace — call list_domains to get valid values. Required whenever slug is set.
enabledboolean
Whether the link is active (default: true)
expiry_datetimestring
ISO 8601 datetime when the link should expire
expiry_destinationstring
Fallback URL after expiry (404 if blank)
fb_pixel_idstring
Meta/Facebook Pixel ID for tracking
forward_paramsboolean
Forward URL parameters to the destination
ga4_tag_idstring
Google Analytics 4 tag ID
gtm_idstring
Google Tag Manager container ID
hide_referrerboolean
Hide referrer information when users click
namestring
A nickname for the link to identify it later
notestring
A private note about this link
og_descriptionstring
Open Graph description for social media previews
og_imagestring
Open Graph image URL for social media previews
og_titlestring
Open Graph title for social media previews
slugstring
Custom slug/suffix for the link (must start with /). Only valid together with domain: setting slug without a workspace-owned domain is rejected by the API.
url*string
The destination URL for the link (required)
utm_campaignstring
UTM campaign parameter
utm_contentstring
UTM content parameter

+3 more parameters. See the server's own documentation for the full schema.

update_linkUpdate an existing Linkly link by its ID22 params

Update an existing Linkly link by its ID

Parameters* required
block_botsboolean
Block bots
cloakingboolean
Enable URL cloaking
enabledboolean
Whether the link is active
expiry_datetimestring
Expiry datetime (ISO 8601)
expiry_destinationstring
Fallback URL after expiry
fb_pixel_idstring
Meta Pixel ID
forward_paramsboolean
Forward URL parameters
ga4_tag_idstring
Google Analytics 4 tag ID
gtm_idstring
Google Tag Manager ID
hide_referrerboolean
Hide referrer
link_id*integer
The ID of the link to update (required)
namestring
New nickname for the link
notestring
New private note
og_descriptionstring
Open Graph description
og_imagestring
Open Graph image URL
og_titlestring
Open Graph title
urlstring
New destination URL
utm_campaignstring
UTM campaign parameter
utm_contentstring
UTM content parameter
utm_mediumstring
UTM medium parameter

+2 more parameters. See the server's own documentation for the full schema.

delete_linkDelete a Linkly link by its ID1 params

Delete a Linkly link by its ID

Parameters* required
link_id*integer
The ID of the link to delete
get_linkGet details of a specific Linkly link by its ID1 params

Get details of a specific Linkly link by its ID

Parameters* required
link_id*integer
The ID of the link to retrieve
get_clicksGet recent click data for the workspace1 params

Get recent click data for the workspace

Parameters* required
link_idinteger
Optional: filter clicks by link ID
get_analyticsGet time-series click analytics data for charting. Returns click counts over time.9 params

Get time-series click analytics data for charting. Returns click counts over time.

Parameters* required
botsstring
Bot filtering: include (default), exclude, or onlyone of include · exclude · only
browserstring
Filter by browser name
countrystring
Filter by country code (e.g., 'US', 'GB')
endstring
End date in YYYY-MM-DD format (default: today)
frequencystring
Time granularity: 'day' (default) or 'hour'one of day · hour
link_idinteger
Filter by specific link ID
platformstring
Filter by platform (e.g., 'desktop', 'mobile', 'tablet')
startstring
Start date in YYYY-MM-DD format (default: 30 days ago)
uniqueboolean
Count unique clicks only (by IP)
get_analytics_byGet click counts grouped by a dimension (country, platform, referrer, etc.). Useful for breakdowns and top-N reports.8 params

Get click counts grouped by a dimension (country, platform, referrer, etc.). Useful for breakdowns and top-N reports.

Parameters* required
botsstring
Bot filteringone of include · exclude · only
counter*string
Dimension to group by (required)one of country · platform · referer · isp · link_id · destination
countrystring
Filter by country code
endstring
End date in YYYY-MM-DD format (default: today)
link_idinteger
Filter by specific link ID
platformstring
Filter by platform
startstring
Start date in YYYY-MM-DD format (default: 30 days ago)
uniqueboolean
Count unique clicks only
export_clicksExport detailed click records with full information (timestamp, browser, country, URL, platform, referer, bot, ISP, params).6 params

Export detailed click records with full information (timestamp, browser, country, URL, platform, referer, bot, ISP, params).

Parameters* required
botsstring
Bot filteringone of include · exclude · only
countrystring
Filter by country code
endstring
End date in YYYY-MM-DD format (default: yesterday)
link_idinteger
Filter by specific link ID
platformstring
Filter by platform
startstring
Start date in YYYY-MM-DD format (default: 30 days ago)
list_domainsList all custom domains in the workspace.

List all custom domains in the workspace.

No parameters. Call it with no arguments.

create_domainAdd a custom domain to the workspace. The domain must be configured to point to Linkly's servers.1 params

Add a custom domain to the workspace. The domain must be configured to point to Linkly's servers.

Parameters* required
name*string
The domain name (e.g., 'links.example.com')
delete_domainRemove a custom domain from the workspace.1 params

Remove a custom domain from the workspace.

Parameters* required
domain_id*integer
The ID of the domain to delete
update_domain_faviconUpdate the favicon URL for a custom domain.2 params

Update the favicon URL for a custom domain.

Parameters* required
domain_id*integer
The ID of the domain to update
favicon_url*string
URL to the favicon image
search_linksSearch for links by name, URL, or note. Returns matching links with click statistics.1 params

Search for links by name, URL, or note. Returns matching links with click statistics.

Parameters* required
query*string
Search query to match against link names, URLs, and notes
list_webhooksList all webhook URLs subscribed to the workspace. These receive click events for all links.

List all webhook URLs subscribed to the workspace. These receive click events for all links.

No parameters. Call it with no arguments.

subscribe_webhookSubscribe a webhook URL to receive click events for all links in the workspace.1 params

Subscribe a webhook URL to receive click events for all links in the workspace.

Parameters* required
url*string
The webhook URL to receive click event notifications
unsubscribe_webhookUnsubscribe a webhook URL from workspace click events.1 params

Unsubscribe a webhook URL from workspace click events.

Parameters* required
url*string
The webhook URL to unsubscribe
list_link_webhooksList all webhook URLs subscribed to a specific link.1 params

List all webhook URLs subscribed to a specific link.

Parameters* required
link_id*integer
The ID of the link
subscribe_link_webhookSubscribe a webhook URL to receive click events for a specific link.2 params

Subscribe a webhook URL to receive click events for a specific link.

Parameters* required
link_id*integer
The ID of the link
url*string
The webhook URL to receive click event notifications
unsubscribe_link_webhookUnsubscribe a webhook URL from a specific link's click events.2 params

Unsubscribe a webhook URL from a specific link's click events.

Parameters* required
link_id*integer
The ID of the link
url*string
The webhook URL to unsubscribe

Sponsors

Readme

Linkly MCP Server

Claude connector directory smithery badge Glama MCP registry

Official Model Context Protocol (MCP) server for Linkly — the URL shortener and link management platform.

This repository powers the hosted MCP server at https://mcp.linklyhq.com. That is the only supported way to connect an AI assistant to Linkly via MCP. See https://linklyhq.com/support/mcp-server for setup instructions.


View the full README on GitHub

Details

Repository
github.com/linkly-hq/linkly-mcp-server
Website
linklyhq.com
Category
Automation & Workflows
Transport
HTTP
Registry
MCP registry, active
Tools verified
Nov 6, 2026

Related Automation & Workflows MCP servers

View all
1emergent-wisdom avatarUnderstanding Graphemergent-wisdom/understanding-graphPersistent understanding via workflow prompts, typed updates, graph-native code, and supersession.1stars
2geniuskey avatarMcp Server Xlwingsgeniuskey/mcp-server-xlwingsExcel automation via xlwings COM. DRM-protected files, live sessions, VBA macros. Windows only.1stars
3helbertparanhos avatarPost for Me MCP Prohelbertparanhos/postforme-mcp-proPublish, schedule and analyze social posts across 9 platforms via the Post for Me API.1stars
4polynode-co avatarAntworkpolynode-co/antworkDraft, schedule, and publish social posts for your workspace straight from your AI.1stars
5aruxojuyu665 avatar2Captcha MCParuxojuyu665/2captcha-mcpFull 2Captcha API (43 tools) for Claude Code: 31 captcha solvers + management + webhook.1stars
6orbiads avatarOrbiAds — Google Ad Managerorbiads/orbiads-gam-mcpAutomate Google Ad Manager: campaigns, line items, creatives, inventory, reporting — 51 tools.1stars