CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

sublime-api

Call the Sublime.app library REST API. Use when the user wants to save a URL or note to Sublime, list or search their Sublime library, create or update a collection, favorite a card, add a note, or integrate sublime.app into a script. Not for Sublime Text, Sublime Security email, or generic web search.

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Sublime API

Read and write the user's Sublime library over REST. No SDK. Bearer token. Trailing slashes are required.

Auth

  1. User creates a token in Settings → Developer → API keys. It is shown once.
  2. Store it as SUBLIME_API_TOKEN. Never print it. Never commit it.
  3. Send Authorization: Bearer $SUBLIME_API_TOKEN on every request.

Base URL: https://api.sublime.app/api/public/v1

curl -sS https://api.sublime.app/api/public/v1/library/ \
  -H "Authorization: Bearer $SUBLIME_API_TOKEN"

Docs live at https://sublime.app/developers. That page is login-walled. curl and remote crawlers get 429 or a login form. Use this skill, not a scrape.

Hosted MCP exists at https://mcp.sublime.app/mcp?token=<mcp-token>. Prefer REST unless MCP tools are already connected in this session.

Endpoints

MethodPathDoes
POST/cards/Create a card from url or text
GET/cards/{uuid}/Get a card
POST/cards/{uuid}/connections/Attach card to collections
GET/cards/{uuid}/content/Full text content
POST/cards/{uuid}/favorite/Favorite
DELETE/cards/{uuid}/favorite/Unfavorite
POST/cards/{uuid}/notes/Add a note
GET/collections/List collections
POST/collections/Create a collection
PATCH/collections/{uuid}/Update a collection
GET/collections/{uuid}/cards/Cards in a collection
GET/library/List saved cards
GET/search/Search. Query q is required

All paths are under the base URL. Keep the trailing slash.

Recipes

Create from a URL:

curl -sS https://api.sublime.app/api/public/v1/cards/ \
  -H "Authorization: Bearer $SUBLIME_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com"}'

Search:

curl -sS "https://api.sublime.app/api/public/v1/search/?q=attention+economy" \
  -H "Authorization: Bearer $SUBLIME_API_TOKEN"

List collections, then attach a card (collection_ids is an array of UUIDs):

curl -sS https://api.sublime.app/api/public/v1/collections/ \
  -H "Authorization: Bearer $SUBLIME_API_TOKEN"

curl -sS https://api.sublime.app/api/public/v1/cards/$CARD/connections/ \
  -H "Authorization: Bearer $SUBLIME_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"collection_ids":["'"$COLLECTION"'"]}'

Rules

  1. MUST ask for a token if SUBLIME_API_TOKEN is unset. MUST NOT invent one.
  2. MUST NOT print or commit the token.
  3. Treat 401 as a bad or missing token. Treat 404 as a missing UUID or a dropped slash.
  4. Paginate with the cursor / next fields the API returns. Do not guess offsets unless the endpoint documents offset.
  5. Confirm before DELETE or bulk create.
  6. This is the user's private library. MUST NOT dump the full library into chat unless they asked.
Repository

saif-shines/sublime-skill

Path

skills/sublime-api/SKILL.md

Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.