Skip to main content
Glama

Worklittle Jobs

Jobs · Update My Profile

update_my_profile
DestructiveIdempotent

Jobs — Update the user's Worklittle profile, such as name, location, phone, links or the kind of job they want. Only send the fields to change.

Input Schema

NameRequiredDescriptionDefault
phoneNo
x_urlNo
you_nameNo
you_workNo
educationNoReplaces education. Months as YYYY-MM.
job_titleNoCurrent job title(s), most recent first
languagesNo
experienceNoReplaces work history. Months as YYYY-MM; omit end for the current job.
github_urlNo
tiktok_urlNo
you_schoolNo
youtube_urlNo
company_nameNoCurrent employer(s), most recent first
facebook_urlNo
home_addressNo
linkedin_urlNo
instagram_urlNo
location_cityNo
school_degreeNo
you_interestsNo
desired_salaryNoe.g. "$90,000+" or "$25+/hour"
location_stateNo
phone_nationalNo
drivers_licenseNovalid | none | empty to clear
huggingface_urlNo
location_countryNo
years_experienceNo
needs_sponsorshipNotrue if they need visa sponsorship to work
phone_country_isoNo
personal_website_urlNo
profile_clear_fieldsNoField names to clear when empty
work_authorization_countriesNoISO2 country codes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed12 schema fields changed
    • addedInput schema / properties / company_name
      Added value: +{
      +  "description": "Current employer(s), most recent first",
      +  "type": "string"
      +}
    • addedInput schema / properties / desired_salary
      Added value: +{
      +  "description": "e.g. \"$90,000+\" or \"$25+/hour\"",
      +  "type": "string"
      +}
    • addedInput schema / properties / education
      Added value: +{
      +  "description": "Replaces education. Months as YYYY-MM.",
      +  "items": {
      +    "properties": {
      +      "degree": {
      +        "type": "string"
      +      },
      +      "end": {
      +        "type": "string"
      +      },
      +      "field_of_study": {
      +        "type": "string"
      +      },
      +      "school": {
      +        "type": "string"
      +      },
      +      "start": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "school"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / experience
      Added value: +{
      +  "description": "Replaces work history. Months as YYYY-MM; omit end for the current job.",
      +  "items": {
      +    "properties": {
      +      "company": {
      +        "type": "string"
      +      },
      +      "current": {
      +        "type": "boolean"
      +      },
      +      "end": {
      +        "type": "string"
      +      },
      +      "start": {
      +        "type": "string"
      +      },
      +      "title": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "company"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / home_address
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / job_title
      Added value: +{
      +  "description": "Current job title(s), most recent first",
      +  "type": "string"
      +}
    • addedInput schema / properties / languages
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / location_city
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / location_country
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / location_state
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / needs_sponsorship
      Added value: +{
      +  "description": "true if they need visa sponsorship to work",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / years_experience
      Added value: +{
      +  "type": "number"
      +}
  2. Added

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and idempotentHint=true; the description's "only send the fields to change" usefully reinforces patch semantics and does not contradict them. However, it never discloses the genuinely destructive behavior (education and experience wholesale replacement, field clearing) or any auth/permission requirements, which are only visible in the schema.

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?

Two sentences, front-loaded with the verb and resource, with the operational rule last. The "Jobs —" prefix is marginally wasteful but the body has no filler.

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

Completeness3/5

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

Output schema exists, so return values need no explanation, and the schema documents replacement semantics for education/experience. Still, for a destructive 32-param mutation with 28% coverage, the description leaves clearing behavior and permission requirements to inference.

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

Parameters2/5

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

Schema description coverage is only 28% across 32 parameters, so the description carries most of the burden and mostly does not. "Name, location, phone, links or the kind of job they want" gestures at a handful of fields but says nothing about the replace-vs-merge arrays, profile_clear_fields, needs_sponsorship, work_authorization_countries, or the phone/locale fields.

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

Purpose4/5

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

States a specific verb and resource ("Update the user's Worklittle profile") and enumerates example field families (name, location, phone, links, desired job), which clearly separates it from the read-only sibling get_my_profile. It stops short of naming that sibling, but the intent is unambiguous.

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

Usage Guidelines3/5

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

"Only send the fields to change" gives real partial-update guidance, which is the key usage rule for a 32-param patch tool. It does not cover when to prefer get_my_profile first, when to use profile_clear_fields versus sending an empty value, or any prerequisite checks.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources