Skip to main content
Glama

Update Preferences

update_preferences
Idempotent

Change the user's saved Agent Preferences: agent_preferences (default creator criteria for every search, max 2,000 characters, null clears), accept_no_email_leads, and the excluded creators list (add_excluded_emails / remove_excluded_emails, up to 2,000 each, 5,000 total). Changes show in the app immediately. Only call when the user explicitly asks to change saved settings; a one-off search constraint belongs in the search request. Free.

Input Schema

NameRequiredDescriptionDefault
uidNoOptional Firebase uid. Must match the URL uid unless local fallback is enabled.
bearer_tokenNoOptional Firebase ID token. Hosted clients normally authenticate with an API key header or ?uid= in the URL instead.
idempotency_keyNoOptional. Reuse the same value when retrying this exact call after a timeout so the write happens once; omit for a new write.
agent_preferencesNo
add_excluded_emailsNo
accept_no_email_leadsNo
remove_excluded_emailsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=false; the description adds real value on top by noting that changes are visible in the app immediately and that passing null for agent_preferences clears it. The one notable gap is partial-update semantics — with all 7 params optional, it never states whether omitting a field leaves it unchanged or clears it, which matters for a settings mutation.

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?

Four dense sentences with the mutability details front-loaded and the usage restriction stated last as a guardrail. The parenthetical enumerations are information-dense but slightly heavy; nothing is outright wasted, though 'Free' arrives as a bare trailing fact.

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?

With no output schema and 7 optional params, the description should clarify what the caller gets back and what an omitted field does — neither is addressed. It is otherwise adequate for a non-destructive settings mutation, but the omit-vs-clear ambiguity is a real decision the agent cannot resolve from the definition.

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 43%, so the description has to compensate, and it largely does: it explains what agent_preferences actually is ('default creator criteria for every search'), that null clears it (not conveyed by the anyOf schema), and that add/remove excluded emails are additive operations capped at 2,000 each and 5,000 total. It leaves accept_no_email_leads undefined and says nothing beyond the schema about uid/bearer_token/idempotency_key.

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?

The description states a specific verb and resource ('Change the user's saved Agent Preferences') and enumerates exactly which settings are mutable (agent_preferences, accept_no_email_leads, excluded creators list). It also distinguishes this write tool from search-time constraints and implicitly from the read-side get_preferences sibling.

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

Usage Guidelines5/5

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

Explicit routing rule: 'Only call when the user explicitly asks to change saved settings; a one-off search constraint belongs in the search request.' This is the rare case where the description says both when to call and what to do instead.

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