Skip to main content
Glama

DJfindr

Set my profile picture

set_avatar
DestructiveIdempotent

Set my profile picture. Needs profile:write. Two calls. The first changes nothing: it checks the arguments as the change would (a field this tool does not take is refused, by name) and answers a summary and a confirm_token. Show the summary to the person; only after they agree, call again with the same arguments plus confirm_token.

Input Schema

NameRequiredDescriptionDefault
file_idYes
confirm_tokenNoLeave out on the first call. On the second call, the confirm_token the first call answered.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but the description adds substantial context the annotations cannot convey: the required profile:write scope, the fact that the first call is a guaranteed no-op, that unknown fields are rejected by name, and exactly what the first call returns (a summary and a confirm_token). The two-phase confirmation protocol is the key behavior and it is fully disclosed.

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?

Four short sentences, front-loaded with the action and the permission requirement, then the two-call mechanics. Every sentence carries distinct information; nothing is redundant with the title or schema.

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?

With no output schema, the description usefully names what the first call returns (summary plus confirm_token), which is what an agent needs to drive the protocol. The remaining omissions are the provenance of file_id and what the summary actually contains, both of which would help an agent handle the tool unaided.

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 only 50%, so the description carries real weight here, and it does: the confirm_token round-trip (same arguments plus confirm_token) is spelled out as a workflow rather than just a field definition. The file_id parameter remains completely unexplained — nothing says what it references or where to obtain it, which is the one meaningful gap.

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?

States a specific verb and resource ("Set my profile picture") that an agent can immediately separate from the many other setters in the sibling list such as set_cover, set_profile_tags, and update_profile. There is no ambiguity about which object is being modified.

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 explicit sequencing: call once to preview, show the summary to the person, and only call again after they agree. The gating condition is unambiguous. It does not name an alternative tool for related profile edits, but the resource is distinct enough that this is a minor gap rather than a real ambiguity.

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