Skip to main content
Glama

Update profile

update_profile
DestructiveIdempotent

Update your Himalayas profile. Uses the connected Himalayas account; no extra sign-in needed.

Input Schema

NameRequiredDescriptionDefault
bioNoShort bio
introNoIntroduction/headline
githubNoGitHub profile URL
behanceNoBehance profile URL
twitterNoTwitter/X profile URL
websiteNoPersonal website URL
dribbbleNoDribbble profile URL
linkedinNoLinkedIn profile URL
locationNoCountry name (e.g. 'United States', 'Australia'). Cities and 'City, Country' strings are not accepted.
usernameNoNew username: 3 to 30 letters, numbers, dashes or underscores. The profile moves to himalayas.app/@username and the old link stops working.
last_nameNoLast name
portfolioNoPortfolio URL
seniorityNoSeniority levels the user wants. Replaces the current list.
first_nameNoFirst name, as shown on the profile and tailored resumes
visibilityNopublic_profile: employers can find and view it. unsearchable_profile: viewable by link but not in search. private_profile: only the user sees it.
contact_emailNoEmail shown to employers, if different from the login email
email_visibleNoShow the contact email on the profile
career_max_salaryNoDesired maximum salary
career_skill_listNoSkills for job matching (e.g. ['Product design', 'User research']). Replaces the current list.
career_base_salaryNoDesired minimum salary
career_descriptionNoDescription of what you're looking for
career_company_sizeNoCompany size preferences, e.g. {'1-10': 'not_interested', '51-200': 'preferred'}. Replaces all current size preferences, so include every size the user cares about.
career_compensationNoHow the user feels about equity as part of pay
career_primary_roleNoPrimary role (e.g., 'software-engineer')
career_search_statusNoCareer search status (e.g., 'actively_searching', 'open_to_roles', 'closed_to_roles')
career_salary_countryNoCurrency of the desired salary
career_working_permitsNoCountries the user can legally work in, as country names (e.g. ['United States']). Replaces the current list.
career_interested_role_listNoOther roles the user is interested in. Replaces the current list.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed18 schema fields changed
    • addedInput schema / properties / behance
      Added value: +{
      +  "description": "Behance profile URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / career_company_size
      Added value: +{
      +  "additionalProperties": {
      +    "enum": [
      +      "not_interested",
      +      "okay",
      +      "preferred"
      +    ],
      +    "type": "string"
      +  },
      +  "description": "Company size preferences, e.g. {'1-10': 'not_interested', '51-200': 'preferred'}. Replaces all current size preferences, so include every size the user cares about.",
      +  "propertyNames": {
      +    "enum": [
      +      "1-10",
      +      "11-50",
      +      "51-200",
      +      "201-500",
      +      "501-1000",
      +      "1001-5000",
      +      "5000+"
      +    ],
      +    "type": "string"
      +  },
      +  "required": [
      +    "1-10",
      +    "11-50",
      +    "51-200",
      +    "201-500",
      +    "501-1000",
      +    "1001-5000",
      +    "5000+"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / career_compensation
      Added value: +{
      +  "description": "How the user feels about equity as part of pay",
      +  "enum": [
      +    "no_equity",
      +    "open_to_compensation",
      +    "equity_important"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / career_interested_role_list
      Added value: +{
      +  "description": "Other roles the user is interested in. Replaces the current list.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / career_salary_country
      Added value: +{
      +  "description": "Currency of the desired salary",
      +  "enum": [
      +    "USD",
      +    "AUD",
      +    "EUR",
      +    "JPY",
      +    "GBP",
      +    "CAD",
      +    "CHF",
      +    "CNY",
      +    "HKD",
      +    "NZD",
      +    "SGD",
      +    "SEK",
      +    "KRW",
      +    "NOK",
      +    "INR",
      +    "MXN",
      +    "TWD",
      +    "ZAR",
      +    "BRL",
      +    "IDR",
      +    "PHP",
      +    "THB",
      +    "CLP",
      +    "CZK",
      +    "DKK",
      +    "HUF",
      +    "ILS",
      +    "TRY",
      +    "PLN"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / career_skill_list
      Added value: +{
      +  "description": "Skills for job matching (e.g. ['Product design', 'User research']). Replaces the current list.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / career_working_permits
      Added value: +{
      +  "description": "Countries the user can legally work in, as country names (e.g. ['United States']). Replaces the current list.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / contact_email
      Added value: +{
      +  "description": "Email shown to employers, if different from the login email",
      +  "type": "string"
      +}
    • addedInput schema / properties / dribbble
      Added value: +{
      +  "description": "Dribbble profile URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / email_visible
      Added value: +{
      +  "description": "Show the contact email on the profile",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / github
      Added value: +{
      +  "description": "GitHub profile URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / linkedin
      Added value: +{
      +  "description": "LinkedIn profile URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / portfolio
      Added value: +{
      +  "description": "Portfolio URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / seniority
      Added value: +{
      +  "description": "Seniority levels the user wants. Replaces the current list.",
      +  "items": {
      +    "enum": [
      +      "Entry-level",
      +      "Mid-level",
      +      "Senior",
      +      "Manager",
      +      "Director",
      +      "Executive"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / twitter
      Added value: +{
      +  "description": "Twitter/X profile URL",
      +  "type": "string"
      +}
    • addedInput schema / properties / username
      Added value: +{
      +  "description": "New username: 3 to 30 letters, numbers, dashes or underscores. The profile moves to himalayas.app/@username and the old link stops working.",
      +  "type": "string"
      +}
    • addedInput schema / properties / visibility
      Added value: +{
      +  "description": "public_profile: employers can find and view it. unsearchable_profile: viewable by link but not in search. private_profile: only the user sees it.",
      +  "enum": [
      +    "public_profile",
      +    "unsearchable_profile",
      +    "private_profile"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / website
      Added value: +{
      +  "description": "Personal website URL",
      +  "type": "string"
      +}
  2. Changed2 schema fields changed
    • addedInput schema / properties / first_name
      Added value: +{
      +  "description": "First name, as shown on the profile and tailored resumes",
      +  "type": "string"
      +}
    • addedInput schema / properties / last_name
      Added value: +{
      +  "description": "Last name",
      +  "type": "string"
      +}
  3. Changed1 schema field changed
    • changedInput schema / properties / location / description
      Previous value: -"Location (e.g., 'San Francisco, CA')"New value: +"Country name (e.g. 'United States', 'Australia'). Cities and 'City, Country' strings are not accepted."
  4. Changed2 schema fields changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / additionalProperties
      Removed value: -false
  5. First observed

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, and readOnlyHint=false, so the safety profile is partly covered. The description adds useful auth context ("no extra sign-in needed") but omits that several fields replace existing lists and that the update is destructive. With annotations carrying the safety signal, this partial addition merits a 3.

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

Conciseness5/5

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

Two short sentences with the purpose front-loaded and no wasted words. The auth note is brief and adds context not found in the annotations.

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?

For a 28-parameter destructive profile update with nested objects, the description is thin: it does not explain partial-update behavior or which list fields are replaced. The rich schema and annotations carry much of the burden, but the description still leaves usage and replacement semantics to the structured fields.

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

Parameters3/5

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

Schema coverage is 100%, so all 28 parameters are documented in the schema itself, making 3 the baseline. The description adds no parameter meaning, format details, or examples beyond what the schema already provides.

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?

"Update your Himalayas profile" states a clear verb and resource, so an agent knows it mutates the user's profile. However, it does not differentiate from close siblings like update_account, update_company_profile, or update_profile_photo.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no conditions for choosing this tool over alternatives, and no exclusions. The note about using the connected account is authentication context, not usage guidance.

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