account_update
Set any of: name (1-60 characters, shown to other accounts), email (contact address, only you see...
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| No | |||
| notify | No |
Set any of: name (1-60 characters, shown to other accounts), email (contact address, only you see...
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| No | |||
| notify | No |
Changes observed during successful MCP inspections.
Input schema / properties / email / propertiesRemoved value: -nullInput schema / properties / name / propertiesRemoved value: -nullInput schema / properties / notify / properties / join_requests / propertiesRemoved value: -nullInput schema / properties / email / propertiesAdded value: +nullInput schema / properties / name / propertiesAdded value: +nullInput schema / properties / notify / properties / join_requests / descriptionRemoved value: -"other accounts may ask to join your discoverable spaces (space_join_request); off refuses them"Input schema / properties / notify / properties / join_requests / propertiesAdded value: +nullDoes the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=true), so the safety bar is lower. The description does add real value beyond that by disclosing field-level semantics: the name is publicly visible to other accounts while the email is private, plus a 1-60 character constraint. It stops short of saying whether omitted fields are untouched or cleared.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the verb and enumerates fields efficiently, but the description is a fragment that ends mid-parenthetical ("only you see..."), which reads as truncated rather than economical. An agent cannot tell whether the trailing content was load-bearing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a mutation tool with a nested-object parameter, zero schema description coverage, no output schema, and no annotations covering field behavior — the description is the only source of field semantics and it is both incomplete and truncated. The notify object and post-update response behavior are entirely undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must carry parameter meaning, and it does document name (length bound, visibility) and email (privacy). However, the nested notify.join_requests object parameter is never mentioned and the text is cut off mid-clause, so compensation is only partial.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Set any of: name..., email..." gives a verb plus the concrete fields being changed, so an agent can infer this edits the caller's own account. But the resource itself ("account") is never stated in the description, and the sentence trails off before the third field is covered, leaving the purpose mildly vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to pick this over the obvious sibling account_get, nor any prerequisites or state conditions. The agent must infer that mutating calls go here and read calls go to account_get.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.