Skip to main content
Glama

Update Profile

update_profile
Idempotent

Update the user's Remoet profile core and/or their visibility. Only provide the fields you want to change. Omitted fields are left as-is; pass null to clear a field. If the source data (CV, website, etc.) is missing a field, ask the user rather than guessing. Never copy placeholder text like "lorem ipsum". The account email cannot be changed through this tool.

VISIBILITY: pass visibility to control who can see the profile in company candidate lists: NONE (hidden), STARRED (only companies the user has starred, the recommended two-way match), or ALL (every company). Explain the trade-off before changing it.

SUMMARY WRITING GUIDE: the summary is the most important field, the first thing companies read. Pattern: [Role] with [X years] experience in [core tech stack]. [One differentiator or achievement]. Example: "Senior Full-Stack Developer with 8 years of experience in React, Node.js, and AWS. Built and scaled a SaaS platform serving 200K users." Under 500 characters. Avoid generic fluff like "passionate developer". Be specific and quantifiable.

Input Schema

NameRequiredDescriptionDefault
urlNoYour personal website URL
nameNoYour full name
slugNoYour public profile URL slug (must be unique)
phoneNoYour phone number
summaryNoA brief professional summary or bio
locationNoYour location
avatarUrlNoYour avatar/photo URL
githubUrlNoYour GitHub profile URL
twitterUrlNoYour Twitter/X profile URL
visibilityNoWho can see the profile in company candidate lists: NONE (hidden), STARRED (only companies the user has starred, recommended), ALL (every company). Explain the trade-off before changing.
youtubeUrlNoYour YouTube channel URL
facebookUrlNoYour Facebook profile URL
linkedinUrlNoYour LinkedIn profile URL

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / email
      Removed value: -{
      -  "description": "Update your email address",
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
  2. Changed4 schema fields changed
    • removedInput schema / properties / email / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / email / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedInput schema / properties / slug / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / slug / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  3. Changed4 schema fields changed
    • addedInput schema / properties / email / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / email / type
      Removed value: -[
      -  "string",
      -  "null"
      -]
    • addedInput schema / properties / slug / anyOf
      Added value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • removedInput schema / properties / slug / type
      Removed value: -[
      -  "string",
      -  "null"
      -]
  4. Changed4 schema fields changed
    • removedInput schema / properties / email / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / email / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedInput schema / properties / slug / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • addedInput schema / properties / slug / type
      Added value: +[
      +  "string",
      +  "null"
      +]
  5. First observed

TDQS

A4/5.0
Behavior4/5

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

Goes well beyond the annotations: null-clears-field semantics, the hard constraint that the account email cannot be changed here, a no-placeholder-text rule, and a requirement to explain the visibility trade-off before mutating it. The only gap is that it never says what a successful call returns or how to confirm the change, which matters since there is no output 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?

Front-loaded with the mutation contract, then segmented into VISIBILITY and SUMMARY WRITING GUIDE blocks so an agent can scan for the part it needs. It is longer than most tool descriptions and the visibility tiers are partly duplicated from the schema, but the length is justified by the 13-parameter surface and the summary authoring guidance.

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

Completeness4/5

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

Covers partial-update semantics, the immutable email, visibility behavior, and summary authoring for a 13-parameter tool with no required fields. The main omission is return/confirmation behavior, since no output schema exists to explain what the caller gets back after a successful update.

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 above that by adding the visibility tier meanings with a recommendation (STARRED as the two-way match) and a detailed content guide for the summary field, including a pattern, an example, and a 500-character target. Minor inconsistency: the schema allows summary up to 5000 characters while the description advises under 500.

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 Remoet profile core and/or their visibility") and the word "core" implicitly separates it from the item-level siblings like save_work_experience and save_project. It never names those siblings, so an agent must infer the boundary itself.

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

Usage Guidelines4/5

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

Gives strong operational guidance for a partial update: "Only provide the fields you want to change. Omitted fields are left as-is; pass null to clear a field," plus "ask the user rather than guessing" when source data is missing and "explain the trade-off before changing" visibility. It stops short of routing to alternatives, e.g. it does not say to use save_work_experience for experience entries or get_profile to read current values.

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.