get_proposal
Read one company's proposal
All MCP toolsRead
Start with get_patrol_digest, whose open items of kind proposal name the organization; then read the proposal here: one item per company — the terms row, the company's proposal of terms independent of any job posting (nothing of the terms is recorded; they are talked about in the chat), with the person's answer so far, null while it awaits one. answer_proposal answers it by agreementId. A job the company proposed is not read here — it stands as an open item of kind match in get_patrol_digest (its entry carries proposal), answered with express_interest or pass_match_card. An organization that never proposed terms to this person — one that proposed jobs alone included — refuses with not_found.
Input schema
{
"type": "object",
"properties": {
"personId": {
"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 person whose proposal this is (persons.id — self)."
},
"organizationId": {
"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 proposing organization (organizations.id)."
}
},
"required": [
"personId",
"organizationId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output schema
{
"type": "object",
"properties": {
"proposal": {
"type": "object",
"properties": {
"companyName": {
"type": "string",
"maxLength": 1000,
"description": "The proposing organization's name."
},
"open": {
"type": "boolean",
"description": "true ⇔ the terms row still awaits an answer (the item is in Decisions)."
},
"waitingSince": {
"anyOf": [
{
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
},
{
"type": "null"
}
],
"description": "The instant the open terms row was proposed (ISO 8601, UTC); null once it is answered."
},
"terms": {
"type": "object",
"properties": {
"agreementId": {
"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 proposal-born agreement record (agreements.id)."
},
"offeredAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
"description": "When the terms were proposed (ISO 8601, UTC)."
},
"answer": {
"anyOf": [
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"interested",
"passed"
]
},
"at": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
"description": "When the answer was given (ISO 8601, UTC)."
},
"threadId": {
"anyOf": [
{
"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)$"
},
{
"type": "null"
}
],
"description": "The pair's chat after an interested answer (its topic is the agreed terms); null otherwise."
}
},
"required": [
"kind",
"at",
"threadId"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "null while the terms row awaits an answer (open); the answer otherwise."
}
},
"required": [
"agreementId",
"offeredAt",
"answer"
],
"additionalProperties": false,
"description": "The terms row — the company's proposal of terms independent of any job posting (answer it with answer_proposal and its agreementId)."
}
},
"required": [
"companyName",
"open",
"waitingSince",
"terms"
],
"additionalProperties": false,
"description": "One company's proposal as the person reads it — open or answered."
}
},
"required": [
"proposal"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}