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 domaincuttly_shorten_link 内
  • MEDIUMTool description contains URL to non-standard domaincuttly_get_link_stats 内
  • MEDIUMTool description contains URL to non-standard domaincuttly_update_link 内
  • MEDIUMTool description contains URL to non-standard domaincuttly_set_link_expiration 内
  • MEDIUMTool description contains URL to non-standard domaincuttly_set_device_redirect 内
  • MEDIUMTool description contains URL to non-standard domaincuttly_delete_link 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,878トークン数(ツール定義)
~2.0 KB一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.47%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `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 件