Skip to main content
Glama

update_my_profile

Save the signed-in user's synthesis profile — skin type, exposed-skin fraction, age and target IU — to their account, so the app and every later call use them. Requires OAuth (scope profile:write). Only these four values are writable; favourites, cities and history are not.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "update_my_profile"
  }
}

Input Schema

NameRequiredDescriptionDefault
ageNoAge in years, or null for the adult baseline
skinTypeNoFitzpatrick skin type 1 (very fair) to 6 (very dark); default 3
targetIUNoVitamin D target per session in IU; default 1000
exposedSkinFractionNoSkin exposed: 0.10 face+hands, 0.18 face+arms, 0.25 t-shirt+shorts (default), 0.40 swimsuit

Schema Changelog

Changes observed during successful MCP inspections.

  1. 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
  2. Added

TDQS

A3.9/5.0
Behavior3/5

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

With no annotations, the description usefully discloses the OAuth scope (profile:write) and the exact write boundary (four values only, favourites/cities/history untouched). However, for a partial-update tool where all four params are optional, it never says whether an omitted field preserves the stored value or resets to the schema default — a material ambiguity for a mutation.

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 tight sentences: the action and its persistence effect come first, then the auth requirement, then the write-boundary caveat. No filler and nothing buried.

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?

Auth and write scope are covered and no output schema is needed, but the description omits update semantics (overwrite vs. merge, what happens to an existing value when a field is null) and any indication of what the call returns, which matters for a mutation with zero annotations.

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 description coverage is 100% and each parameter already carries ranges, defaults and even the 0.10/0.18/0.25/0.40 skin-fraction mapping, so the description only restates field names. Baseline 3 applies; it adds no semantics beyond the schema.

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?

Specific verb+resource ('Save the ... synthesis profile ... to their account') with the exact writable fields enumerated, making it unmistakably the write counterpart to get_my_profile and distinguishable from configure_sun_profile or set_history_location.

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?

It states the downstream effect ('so the app and every later call use them') and explicitly excludes favourites, cities and history, which routes those needs to siblings. It stops short of naming the sibling tool to use for those excluded concerns, only ruling them out.

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