Skip to main content
Glama

Update Autofill Profile

set_autofill_profile
DestructiveIdempotent

Save job application-form answers so the Companion can fill forms. Only the sections and keys you pass change; work permits merge per country and custom answers are added or replaced.

Instructions

Save the user's application-form answers: the profile get_autofill_profile reads and the Companion fills forms from. Only the sections passed change. Inside personal, eligibility, preferences and each country's work-permit answers only the keys passed change, and a null removes one; education and languages replace the stored list whole (get_autofill_profile returns them). Each custom answer replaces the saved one with the same question (case and spacing ignored) and the same only_for and only_for_kind, or is added: for an answer held for one company or city, send its only_for and only_for_kind as get_autofill_profile shows them, or a second scoped answer is added. A saved answer is never removed here, so one the Companion learned meanwhile stays (removing one is the user's, in Profile). A work-permit answer is per country and a form question without one is asked on that form, never defaulted; setup counts the answers of each country in apply_in (set_markets). Diversity (EEO) answers have no field here: they and their consent are the user's, in Profile. An unknown section, key or market key writes nothing. Returns {profile, setup}: the saved profile without eeo, and setup status's form-answer readiness (readiness 0 to 1, groups, blocking, work_auth_by_country counts), null when that read fails.

Input Schema

NameRequiredDescriptionDefault
customNo
personalNo
educationNo
languagesNo
eligibilityNo
preferencesNo
work_auth_by_countryNoWork-permit answers by market key. Each country's answers merge key by key; a country set to null loses its answers; a country left out keeps them.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.12.0

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations (destructiveHint/idempotentHint) by spelling out merge semantics per section, that null removes a key, that education/languages replace the list whole, that saved custom answers are never removed here, and that unknown section/key/market writes nothing. Also discloses the return shape {profile, setup} and that setup is null on read failure, which no output schema covers.

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 core purpose and every sentence carries substantive rules, but the custom-answer rule in particular is a long nested clause that takes rereading, and the whole thing is one dense paragraph rather than grouped by section.

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

Completeness5/5

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

For a destructive, all-optional merge-write with no output schema, the description covers the merge/removal model, the custom-answer identity rule, what is deliberately out of scope, failure behavior for unknown keys, and the returned object — leaving no material gap for correct invocation.

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 description coverage is only 14%, so the description must compensate, and it does: it explains per-section key-level merging, null-removal, list replacement for education/languages, and the question/only_for/only_for_kind matching rule for custom answers. It stops short of naming individual fields inside personal/preferences/eligibility, which the nested $defs already document.

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?

Opens with a specific verb and resource ('Save the user's application-form answers') and immediately ties it to the sibling read tool get_autofill_profile and to the Companion consumer, so the agent knows exactly what is being written and who reads it.

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?

Routes the agent clearly: reads go through get_autofill_profile, removals and EEO answers are 'the user's, in Profile' and not this tool, and work-permit answers are keyed per country with market keys from apply_in. No explicit contrast against write-side siblings like record_filled_answers, so not a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools