Cuttly MCP by usefulapi

Shorten links with Cuttly, read click stats, and edit, expire, redirect or delete short links.

我该使用它吗

质量与安全性

B
描述质量
100%
模式完整度
100%
命名质量
100%
投毒风险
0%
权限匹配度
100%
协议合规性
100%

发现(7)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_shorten_link 中
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_get_link_stats 中
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_update_link 中
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_set_link_expiration 中
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_set_device_redirect 中
  • MEDIUMTool description contains URL to non-standard domain在 cuttly_delete_link 中

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,878token 数(工具定义)
~2.0 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.47%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "cuttly": {
      "url": "https://cuttly.usefulapi.io/mcp"
    }
  }
}

远程端点

https://cuttly.usefulapi.io/mcpstreamable-http

它能做什么

工具清单

工具(6)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟡cuttly_shorten_link(url, alias, use_branded_domain, public_stats)

WRITE: create a Cuttly short link for a long URL, optionally with a custom alias (the part after the slash). Returns the short link, the full link and the page title. It counts against the monthly link limit of the plan. Cuttly rate limit: Free 3 calls per 60 seconds, Starter 6, Single 60. The call is sent once and never retried. GET https://cutt.ly/api/api.php?short=...

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The long URL to shorten (full http or https URL)."
    },
    "alias": {
      "description": "Custom alias (back-half), e.g. 'spring-sale'. Fails if it is taken.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "use_branded_domain": {
      "description": "Use the active branded domain of the account instead of cutt.ly (any paid plan).",
      "type": "boolean"
    },
    "public_stats": {
      "description": "Make the click statistics of this link readable through the API without the owner's key (Single plan and up).",
      "type": "boolean"
    }
  },
  "required": [
    "url"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢cuttly_get_link_stats(link, date_from, date_to)

Click statistics of one short link: total clicks, clicks by source (Facebook, Twitter, LinkedIn, other, bots), top referrers, countries, device types, operating systems, browsers, device brands and languages. The date range filter needs the Team plan or higher. Counts as one API call (Free plan 3 per 60 seconds). GET https://cutt.ly/api/api.php?stats=...

输入模式

{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The Cuttly short link, e.g. https://cutt.ly/abc123 (or a link on your branded domain)."
    },
    "date_from": {
      "description": "Start of the range (Team plan and up).",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "date_to": {
      "description": "End of the range (Team plan and up). May be used alone.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    }
  },
  "required": [
    "link"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴cuttly_update_link(link, new_alias, destination_url, title, tag, ...)

WRITE: change a short link: its alias, destination URL, title, tag or unique-click window. Send only what you want to change. Changing the alias makes the old short link stop working; changing the destination redirects every visitor to the new URL at once. Link editing needs the Single plan or higher. Cuttly sends no previous values back, so ask the user before you change a live link. The call is sent once and never retried. GET https://cutt.ly/api/api.php?edit=...

输入模式

{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The Cuttly short link, e.g. https://cutt.ly/abc123 (or a link on your branded domain)."
    },
    "new_alias": {
      "description": "New alias. The old short link stops working. Fails if the alias is taken.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "destination_url": {
      "description": "New destination URL the short link redirects to.",
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    },
    "title": {
      "description": "New link title.",
      "type": "string",
      "minLength": 1,
      "maxLength": 250
    },
    "tag": {
      "description": "A tag to add to the link.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "unique_clicks_minutes": {
      "description": "Unique-click counting: 0 = off, 1 = 15-minute window (Single plan), 15-1440 = custom window in minutes (Team plan and up).",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "link"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴cuttly_set_link_expiration(link, mode, clicks, date, redirect_url, ...)

WRITE: set or remove the expiration of a short link. The link expires after a number of clicks or on a date, and can then redirect to another URL. mode 'none' removes an existing expiration. Needs the Single plan or higher. The call is sent once and never retried. GET https://cutt.ly/api/api.php?edit=...&expire=...

输入模式

{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The Cuttly short link, e.g. https://cutt.ly/abc123 (or a link on your branded domain)."
    },
    "mode": {
      "type": "string",
      "enum": [
        "clicks",
        "date",
        "none"
      ],
      "description": "'clicks' = expire after `clicks` clicks, 'date' = expire on `date`, 'none' = remove the expiration."
    },
    "clicks": {
      "description": "Click threshold (mode 'clicks').",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000000000
    },
    "date": {
      "description": "Expiration date (mode 'date').",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "redirect_url": {
      "description": "Where visitors go after the link expired.",
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    },
    "count_unique_clicks": {
      "description": "Count only unique clicks toward a click threshold.",
      "type": "boolean"
    }
  },
  "required": [
    "link",
    "mode"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴cuttly_set_device_redirect(link, platform, destination, remove)

WRITE: send visitors on one device type to another destination (an app store page or a deep link): Android, iOS or Windows Mobile. platform 'redirect' sets the destination for all other devices. Set `remove: true` instead of a destination to delete the rule. Needs the Single plan or higher. The call is sent once and never retried. GET https://cutt.ly/api/api.php?edit=...&mobile=...

输入模式

{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The Cuttly short link, e.g. https://cutt.ly/abc123 (or a link on your branded domain)."
    },
    "platform": {
      "type": "string",
      "enum": [
        "android",
        "ios",
        "windowsMobile",
        "redirect"
      ],
      "description": "Device type. 'redirect' = every other device."
    },
    "destination": {
      "description": "URL or deep link for that device type.",
      "type": "string",
      "minLength": 1,
      "maxLength": 2048
    },
    "remove": {
      "description": "true = remove the rule of this device type (then do not pass a destination).",
      "type": "boolean"
    }
  },
  "required": [
    "link",
    "platform"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴cuttly_delete_link(link)

WRITE, IRREVERSIBLE: permanently delete a short link and its statistics. Anyone who opens the short link afterwards gets an error, and Cuttly cannot restore it. Ask the user to confirm the exact link before you call this. Needs the Single plan or higher. The call is sent once and never retried. GET https://cutt.ly/api/api.php?edit=...&delete=1

输入模式

{
  "type": "object",
  "properties": {
    "link": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "The Cuttly short link, e.g. https://cutt.ly/abc123 (or a link on your branded domain)."
    }
  },
  "required": [
    "link"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本6 个工具