SSkilltecabyclaudinhocode
Enviar skill
← Voltar para o catálogo

picsee-short-link

Dados e Análise

PicSee URL shortener via MCP — shorten URLs, generate QR codes, view rich click analytics (daily / platform / referrer / region / audience), and manage links. Use when the user asks to shorten a URL, see link analytics, list/search short links, edit/delete links, or mentions PicSee. Anonymous mode supports `create_short_link` only; OAuth 2.1 unlocks the full 14-tool authenticated surface.

0estrelas
Ver no GitHub ↗Autor: PicSeeInc

PicSee Short Link

URL shortener with rich click analytics and full link management — exposed to AI agents through the PicSee MCP server at https://api.picsee.io/mcp.

The skill ships no code: it just teaches your agent how to call the MCP server. Authentication is handled by OAuth 2.1 with PKCE (Dynamic Client Registration), so no API tokens are ever stored on disk by the skill.


Installation

Add the PicSee MCP server to your AI client's MCP config. Pick the transport your client supports — most modern clients speak Streamable HTTP directly.

Streamable HTTP (recommended)

{
  "mcpServers": {
    "picsee-short-link": { "url": "https://api.picsee.io/mcp" }
  }
}

Stdio bridge (for clients without remote-MCP support)

{
  "mcpServers": {
    "picsee-short-link": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://api.picsee.io/mcp"]
    }
  }
}

See README.md for the exact config file path on each platform.


Authentication

Anonymous mode (no setup)

create_short_link is callable with no credentials. Anonymous calls are pinned to pse.is and have no access to externalId filtering / attribution dashboards.

Authenticated mode (OAuth 2.1)

On the first authenticated tool call, the MCP client triggers an OAuth flow:

  1. Dynamic Client Registration → https://public-api-oauth.picsee.io/oauth/register
  2. Browser → https://public-api-oauth.picsee.io/oauth/authorize
  3. User signs in to PicSee and grants user:read + user:write
  4. Client receives access + refresh tokens via PKCE/S256
  5. Token is stored by the MCP client — never by this skill

All 14 authenticated tools become available after this flow.


Tools

15 tools total. create_short_link is callable anonymously; the rest require OAuth.

create_short_link (anonymous OK)

Create a new short link.

FieldRequiredNotes
urlDestination URL, ≤2048 chars
encodeIdCustom slug, 3–90 chars (letters / digits / _ / - / Chinese). Must be globally unique — conflicts return PUB00503
domainpse.is or a BSD from get_my_domains. Ignored when called anonymously
externalId1–100 chars. Agents SHOULD default this to their own product name — see Attribution
utm{ source, medium, campaign, term, content }
titleOG preview title, 3–300 chars
descriptionOG preview description, 3–300 chars
imageUrlOG preview image URL
tagsArray of up to 3 tag names — use get_my_tags to offer a picker
targetsDevice-specific redirects, see below
fbPixelMeta Pixel ID — must already be saved in PicSee (get_my_tracking_tools)
gTagGTM container ID — must already be saved in PicSee (get_my_tracking_tools)
pathFormat{ key: "<param-name>" } — Path Parameterization add-on (paid Advanced)

targets[].target enum: ios_android, ios, ios_store, android, android_store, ios_line, ios_safari, android_fb, pc_mac, pc, mac, facebook, twitter. ios_android = all mobile; pc_mac = all desktop. App-store buckets only fire for users with the app installed.

Returns picseeUrl (the shortened link).

Account / discovery tools

get_api_status

No params. Returns the account's API plan, lifetime quota, current period usage, and plan expiration. Call this before bulk operations to confirm remaining quota.

get_api_usage_by_external_id

FieldRequiredNotes
startTimeTaipei time YYYY-MM-DDTHH:mm:ss. Defaults to 30 days before endTime
endTimeTaipei time YYYY-MM-DDTHH:mm:ss. Defaults to current hour. Max 31-day range

Returns API-link counts grouped by externalId — useful for attributing usage to agents / campaigns.

get_my_domains

No params. Lists every short-link domain on the account: brand short domains (BSDs), PicSee subdomains, shared root. Each entry flags HTTPS support and default status. Call before create_short_link if the user wants a non-default domain.

get_my_tags

No params. Returns { id, name } pairs. name values are what tags accepts on create_short_link / edit_short_link.

get_my_tracking_tools

No params. Returns previously-used UTM sources / mediums, saved Meta Pixels, and saved GTM containers. Use to populate pickers instead of asking the user to retype IDs.

list_short_links

FieldNotes
limit1–50, default 20
startTimeTaipei time YYYY-MM-DDTHH:mm:ss. Returns links created at or before this timestamp — i.e. queries backward. Default = now
prevMapIdCursor: return links with mapId older than this. Combine with startTime for AND filtering
isAPItrue (default) = only API-created links; false = only website-created
isStartrue = starred only. Default false
externalIdExact-match filter
search.encodeIdExact slug — priority 1, overrides all other search fields
search.authorIdFilter by author's PicSee user ID — priority 2
search.tagTag name, 3–30 chars — priority 3
search.keywordSubstring, 3–30 chars — priority 4

Tip: when the user says "links from March 2026", pass startTime: "2026-03-31T23:59:59" (the end of the period) — the server queries backward from there.

edit_short_link

FieldRequiredNotes
encodeIdSlug of the link to edit
urlNew destination. May be rejected with PUB00510 if the new origin is on a different brand
domain
title / description / imageUrl3–300 chars for text fields
tagsUp to 3
targetsSame enum as create_short_link
fbPixel / gTagPass null to clear
utmPass null to clear all UTM params
expireTimeFuture Taipei time YYYY-MM-DDTHH:mm:ss, or null to remove. Requires the expiration add-on

delete_short_link

FieldRequiredNotes
encodeId
valuedelete (default) = move to trash; recover = restore from trash
  • Starred links can't be deleted (PUB00706) — unstar via web first.
  • Links trashed for >30 days can't be recovered (PUB00704).

Per-link analytics

All five tools share the same shape: required encodeId, optional startTime / endTime (Taipei YYYY-MM-DDTHH:mm:ss). Default window is the last 30 days; Advanced plan can look back up to 365 days.

ToolReturns
get_link_overviewTotal clicks, unique clicks, destination URL, domain, HTTPS flag, creation time. Use for at-a-glance summaries
get_link_daily_clicksTime-series of total + unique clicks aggregated by day. Use as raw data for chart rendering
get_link_platformsUnique-click breakdown by device (iphone, android, windows, macintosh, …). Aggregate to mobile/desktop client-side if needed
get_link_referrersUnique-click breakdown by referrer (search engines, social, AI agents, long-tail). Clicks without referrer info → direct
get_link_regionsUnique-click breakdown by country (no city-level data). Unknown countries → Others (code: "others")
get_link_audience_labelsInterest + brand labels. Privacy guard: only returns data when the link has >100 lifetime unique clicks; otherwise both arrays come back empty. No startTime / endTime — covers link lifetime

Attribution

The create_short_link schema asks the calling agent to set externalId to its own product name when the user hasn't specified one. PicSee account owners use this to attribute API usage in their dashboard.

AgentRecommended externalId
Claude CodeClaude Code
CursorCursor
Codex / Co

Como adicionar

/plugin marketplace add PicSeeInc/picsee-short-link

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Comentários · Nenhum comentário

Entre para comentar. Entrar

  • Ainda não há comentários. Seja o primeiro.