List saved jobs
list_saved_jobsList the jobs the user has liked, applied to or dismissed, a page at a time, as numbered text rows.
Buckets are views over a job's two independent pieces of state, not stored values:
liked: liked, and not applied
applied: applied, whatever its liked or dismissed status
dismissed: dismissed, applied or not So marking a liked job applied moves it from liked to applied without clearing the like, and a dismissed job the user applied to is in both applied and dismissed. Each row's state says where the job really stands.
Returns limit jobs (default 25, at most 100) starting offset jobs
in (default 0): liked and dismissed jobs most recently changed first,
applied jobs most recently applied first. One row per job:
{rank}. [{id}] {title} — {company} · {place} · {remote|on-site} · {seniority} · {salary} · posted {age} · {state}
The state is "liked" or "dismissed", then "applied {age}", then
"removed {date}", each only when it holds, and a fact the posting
lacks is left out. {rank} is the job's place in the whole list, so it
carries on from page to page. The bracketed id is the job's first 12
characters; every tool takes it back, as it takes any unique prefix
of 8 or more characters. detail is search_jobs': "brief", one line;
"summary" (the default), adding the Smart Digest summary; "digest",
adding the company, the day to day, the requirements and the
posting's URL. The raw posting text is never included; get_jobs with
include_posting=true reads it.
The reply's first line names the list, the rows shown and how many jobs the list holds; an empty list, or an offset past the end, is said instead, with the total. While more remain, the last line gives the offset to list from next. A reply holds at most 40,000 characters: rows that would cross that are left out, and the next offset starts at the first of them.
Acting on a listed job (update_jobs, clear_jobs) reshapes the list: the job leaves the bucket or moves to its top, and every later job shifts. After acting, list again from offset 0 rather than going on from the next offset.
The liked list includes postings the employer has since taken down; their rows end "removed {date}". They are listed on purpose, because the user chose them: mention the removal rather than hiding the job, and don't send the user to apply to one, since the posting is gone from the employer's site.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"bucket": "<bucket>"
},
"name": "list_saved_jobs"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many of the list's jobs to return, from 1 to 100. | |
| bucket | Yes | "liked", "applied" or "dismissed". | |
| detail | No | How much of each job its row shows: "brief", one line of facts; "summary", that line and the Smart Digest summary; "digest", the summary plus the company, the day to day, the requirements and the posting's URL. | summary |
| offset | No | How many of the list's jobs to skip, newest first: 0 for the first page. A reply's last line gives the offset of the next page. |