API i serwer MCP
Twórz i zarządzaj krótkimi linkami z poziomu kodu — przez REST API albo przez serwer MCP w Twoim asystencie AI.
cutty ma publiczne API i serwer MCP. Pierwsze pozwala tworzyć i zmieniać linki z poziomu kodu, drugie — wprost z asystenta AI, który mówi protokołem MCP. Oba używają tego samego klucza API.
Klucz API
Każde wywołanie uwierzytelniasz nagłówkiem:
Authorization: Bearer ck_twój_klucz
Skąd wziąć klucz: zaloguj się, wejdź w panel → Klucze API → Utwórz klucz. Pełny klucz (zaczyna się od ck_) pokazujemy tylko raz, przy tworzeniu — zapisz go od razu w bezpiecznym miejscu. Limit to 120 żądań na minutę na klucz.
Bazowy adres
Wszystkie endpointy REST żyją pod https://cutty.dev/api/v1. Żądania i odpowiedzi są w formacie JSON.
Tworzenie linku
POST /api/v1/links — w ciele JSON podajesz co najmniej url. Reszta jest opcjonalna:
url— adres docelowy (wymagane)slug— własna końcówka, 3–40 znaków; pominięta = losowaexpiresAt— data wygaśnięcia w formacie ISO 8601maxHits— limit kliknięć (1–1 000 000)password— hasło chroniące linkutmSource,utmMedium,utmCampaign— parametry UTM doklejane przy przekierowaniu
W odpowiedzi dostajesz slug, shortUrl i target.
curl -X POST https://cutty.dev/api/v1/links \
-H "Authorization: Bearer ck_twój_klucz" \
-H "Content-Type: application/json" \
-d '{"url":"https://przyklad.pl/bardzo/dlugi/adres","slug":"oferta"}'
Lista i pojedynczy link
GET /api/v1/links zwraca wszystkie Twoje linki. GET /api/v1/links/{slug} — szczegóły jednego.
curl https://cutty.dev/api/v1/links/oferta \
-H "Authorization: Bearer ck_twój_klucz"
Zmiana i usunięcie
PATCH /api/v1/links/{slug} aktualizuje wybrane pola (np. targetUrl, expiresAt, maxHits, status, password). DELETE /api/v1/links/{slug} usuwa link.
curl -X PATCH https://cutty.dev/api/v1/links/oferta \
-H "Authorization: Bearer ck_twój_klucz" \
-H "Content-Type: application/json" \
-d '{"maxHits":500}'
Serwer MCP
Jeśli pracujesz z asystentem AI, możesz podpiąć cutty przez MCP (Model Context Protocol) i poprosić go, żeby skracał oraz porządkował linki wprost w rozmowie. Serwer działa pod https://mcp.cutty.dev/mcp w transporcie Streamable HTTP, a uwierzytelniasz się tym samym kluczem API — nagłówkiem Authorization: Bearer ck_....
Dostępne narzędzia: create_link, list_links, get_link, update_link, delete_link oraz qr_link (kod QR dla linku).
Przykładowy wpis w konfiguracji klienta MCP:
{
"mcpServers": {
"cutty": {
"url": "https://mcp.cutty.dev/mcp",
"headers": {
"Authorization": "Bearer ck_twój_klucz"
}
}
}
}
Coś nie działa?
Napisz na [email protected] — odpisuję tego samego dnia.