sinkto-mcp
by kelvin6365
README.md
# Sinkto.Link MCP Server
Hosted [Model Context Protocol](https://modelcontextprotocol.io) server for [Sinkto.Link](https://www.sinkto.link) — the free URL shortener with unlimited links. Manage short links, generate QR codes, and read click analytics straight from Claude, Cursor, or any MCP client.
**Listed in the official MCP Registry:** [`link.sinkto/sinkto`](https://registry.modelcontextprotocol.io/v0.1/servers?search=sinkto)
## Connect
Streamable HTTP at `https://www.sinkto.link/api/mcp`, authenticated with an API key (create one free at **Teams → API keys** on [sinkto.link](https://www.sinkto.link)):
```bash
claude mcp add --transport http sinkto https://www.sinkto.link/api/mcp \
--header "Authorization: Bearer sk_live_..."
```
Or in any MCP client config:
```json
{
"mcpServers": {
"sinkto": {
"type": "http",
"url": "https://www.sinkto.link/api/mcp",
"headers": {
"Authorization": "Bearer sk_live_..."
}
}
}
}
```
Nothing to install or self-host. Setup guide: [sinkto.link/docs/mcp](https://www.sinkto.link/docs/mcp)
## Tools
| Tool | Scope | What it does |
|---|---|---|
| `whoami` | — | Which team, plan, scopes and limits this key carries |
| `list_links` | `links:read` | Search/filter links (alias, status, pagination) |
| `get_link` | `links:read` | Full detail for one link |
| `create_link` | `links:write` | Shorten a URL with optional custom alias, password, expiry, OG preview, UTM |
| `update_link` | `links:write` | Edit destination, alias, or settings |
| `delete_link` | `links:write` | Remove a link |
| `bulk_create_links` | `links:write` | Create up to 50 links in one call |
| `generate_qr` | `links:read` | PNG QR code for any link |
| `get_link_analytics` | `analytics:read` | Clicks, countries, cities, devices, browsers, referrers, UTM breakdown for one link |
| `get_overview_stats` | `analytics:read` | Account-wide totals and trends |
| `get_recent_clicks` | `analytics:read` | Latest click events with full attributes |
Scopes are chosen per key — a read-only key can report on links without being able to change anything. Every request is visible in per-key usage analytics.
## Plans
| | Free | Pro ($9/mo or $79/yr) |
|---|---|---|
| Short links | Unlimited | Unlimited |
| API keys | 1 | 10 |
| Rate limit | 60 req/min | 600 req/min |
| Analytics window | 30 days | 90 days |
The MCP server itself is free on every plan. Sinkto.Link's free tier: unlimited links, unlimited clicks, unlimited team members.
## Why
Every URL shortener caps its free plan — Bitly at 5 links/month, TinyURL at 30, Short.io at 1,000 lifetime. Sinkto.Link doesn't. The MCP server exists so AI assistants can manage that link infrastructure the same way their human owners do.
## Links
- **Website**: [sinkto.link](https://www.sinkto.link)
- **MCP landing**: [sinkto.link/mcp](https://www.sinkto.link/mcp)
- **Setup docs**: [sinkto.link/docs/mcp](https://www.sinkto.link/docs/mcp)
- **Registry entry**: [link.sinkto/sinkto](https://registry.modelcontextprotocol.io/v0.1/servers?search=sinkto)
- **Free URL shortener comparison**: [sinkto.link/blog/best-free-url-shortener-2026-complete](https://www.sinkto.link/blog/best-free-url-shortener-2026-complete)
---
The main product repository is private. This repo is the public face of the MCP server — issues and questions: [sinkto.link/contact](https://www.sinkto.link/contact) or [@tszhim_tech](https://x.com/tszhim_tech).
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues