Skip to main content
Glama

Update Job Preferences

getmattered_update_job_preferences
DestructiveIdempotent

Set job-matching preferences—roles, locations, salary, seniority, work styles, job types, visa needs, exclusions—or pause matching, then rerun discovery immediately.

Instructions

Set what GetMattered hunts for on the user's behalf, and re-run discovery immediately: target roles, locations, remote, salary band and currency, seniority (experience_levels), work styles, job types, visa sponsorship need, industries to exclude, or pause matching. Pass description to say it in plain words ("remote only, 120k+, senior, no crypto"); fields passed explicitly win over it. Lists REPLACE what is saved, so pass the complete list, not an addition; the previous lists are not kept, so to undo a change, save the earlier values again. application_answers saves the answers employer forms ask for (phone, city, state, zip, country, LinkedIn, work authorization, relocation, start date, notice period): fill only values the user stated, never guesses. Only call this when the user asks. Read the current preferences first with getmattered_get_account. Do not use it to search; use getmattered_get_matches with query.

Input Schema

NameRequiredDescriptionDefault
pausedNoTrue pauses new matches for the user; false resumes them. It never changes auto-apply.
job_typesNoJob types to match: full_time, part_time, contract, internship, freelance, temporary. REPLACES the saved list.
locationsNoFull list of preferred locations. REPLACES the saved list.
salary_maxNoHighest yearly salary to target, in salary_currency.
salary_minNoLowest yearly salary the user accepts, in salary_currency (e.g. 120000).
descriptionNoWhat the user wants, in their own words (e.g. "remote only, 120k+, senior, no crypto"). Fields passed explicitly win over it. Uses AI credits.
remote_onlyNoDeprecated name of include_remote. Use include_remote.
work_stylesNoWork styles to match: onsite, hybrid, remote. REPLACES the saved list.
target_rolesNoFull list of job titles to hunt for. REPLACES the saved list.
include_remoteNoInclude remote jobs in the user's region alongside their locations.
salary_currencyNoCurrency of the salary band (default usd).
experience_levelsNoSeniority to match: intern, entry, junior, mid, senior, lead, executive. REPLACES the saved list.
exclude_industriesNoIndustries to never match (e.g. ["Crypto"]). REPLACES the saved list.
application_answersNoAnswers employer forms ask for, saved to the user's application profile: phone, city, state, zip_code, country, linkedin_url, work_authorization, willing_to_relocate, available_start_date, notice_period. Only values the user stated, never guesses.
needs_visa_sponsorshipNoTrue when the user needs visa sponsorship to take the job.

Output Schema

NameRequiredDescriptionDefault
pausedYes
jobTypesYes
locationsYes
salaryMaxYes
salaryMinYes
workStylesYes
targetRolesYes
includeRemoteYes
salaryCurrencyYes
remoteWorldwideYes
visaSponsorshipYes
describedSummaryYesHow GetMattered understood `description`, when one was given.
experienceLevelsYes
excludeIndustriesYes
onboardingCompletedYesTrue when this call finished the account setup, so GetMattered starts searching for these roles.
applicationAnswersSavedYesThe application_answers fields written to the application profile.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.9.1

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond destructiveHint=true by explaining exactly what is lost: lists REPLACE saved values, previous lists are not kept, and undo requires re-saving the earlier values. It also discloses a cost not visible in annotations ('Uses AI credits' for the description field) and a data-integrity rule ('fill only values the user stated, never guesses').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose and the re-run side effect, then prerequisites and cautions in a logical order. It is dense and runs long for a single description, and the mixed enumeration of fields partly duplicates the schema, but nearly every sentence carries actionable information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 15-parameter, nested-object, destructive mutation with an output schema, the description covers the missing pieces: implicit full re-run of discovery, replace-not-merge list semantics, no history/undo, credit consumption, and the read-before-write workflow. An agent has enough to call it safely without guessing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3; the description earns extra by documenting precedence that the schema does not ('fields passed explicitly win over it') and by glossing the plain-words description field with a realistic example. It doesn't add resolution detail for the salary/currency pairing beyond what the schema already states, so not a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource+outcome ('Set what GetMattered hunts for ... and re-run discovery immediately') and then enumerates the exact preference fields it governs. It explicitly separates itself from getmattered_get_account (read current prefs) and getmattered_get_matches (search), so an agent can route correctly without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit gate ('Only call this when the user asks'), a prerequisite ('Read the current preferences first with getmattered_get_account'), and a hard exclusion with the correct alternative ('Do not use it to search; use getmattered_get_matches with query'). This is the when/when-not/alternative triad done fully.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.