save_org_brief_defaults
Save the organization's brief defaults
All MCP toolsWrite
Replace the organization-wide brief defaults as a whole document: a row carrying an existing id keeps that id (rewrite its text or category freely — jobs' overrides stay keyed to it), a row without an id is new and receives its id on save, and any current row left out is deleted. Saving here moves NO job: each job keeps composing with the version it confirmed until it adopts the new one (adopt_org_brief_defaults); jobsBehind counts the jobs you can see whose brief is now behind. An unchanged document keeps its version. Refuses org_row_not_found when an id names no current row, defaults_moved when the document changed since you read it (re-read and retry), and prohibited_criteria when a row would carry a criterion that must not be used (protected attributes and their near proxies): rephrase in terms of aptitude, ability, experience, and working conditions. Never shown to candidates.
Input schema
{
"type": "object",
"properties": {
"rows": {
"maxItems": 50,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "The id of an existing row (from get_org_brief_defaults) to keep or rewrite; omit for a new row — the id is assigned on save.",
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"category": {
"type": "string",
"enum": [
"meet",
"decline",
"salary",
"talking",
"avoid"
],
"description": "The principle's category: meet — whom to meet; decline — whom to decline; salary — the shared salary stance; talking — how to speak about the company; avoid — expressions never to use."
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 500,
"description": "One principle in the company's own words (one sentence, up to 500 characters)."
}
},
"required": [
"category",
"text"
]
},
"description": "The whole document, in the order it should read (0 to 50 rows)."
},
"expectedVersion": {
"description": "The version you read (get_org_brief_defaults); a different current version refuses defaults_moved. Optional — the save still refuses when the document moved between this tool's own read and its write.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"rows"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output schema
{
"type": "object",
"properties": {
"version": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "The document's version; 0 when the organization has never saved defaults."
},
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The row's identity — the key a job's override refers to."
},
"category": {
"type": "string",
"enum": [
"meet",
"decline",
"salary",
"talking",
"avoid"
],
"description": "The principle's category: meet — whom to meet; decline — whom to decline; salary — the shared salary stance; talking — how to speak about the company; avoid — expressions never to use."
},
"text": {
"type": "string",
"description": "The principle as stored."
}
},
"required": [
"id",
"category",
"text"
],
"additionalProperties": false
},
"description": "The saved document read back, with every id assigned."
},
"jobsBehind": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991,
"description": "How many jobs you can see now compose with an older version than this one — each adopts on its own."
}
},
"required": [
"version",
"rows",
"jobsBehind"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}