save_company_profile

Save the company profile

All MCP toolsWrite

Replace the organization's canonical company profile (whole-document semantics: omitted sections are removed). Supply any of intro (one Markdown block), facts (ordered label/value rows), and links (ordered public URLs); the schema version is managed server-side. Candidates only ever see the intro, and only on postings a human has separately published — saving the profile takes effect immediately within the organization.

Input schema

{
  "type": "object",
  "properties": {
    "intro": {
      "description": "Company intro: ONE Markdown block — facts and links alone do not convey what the company is like. Read by (1) candidates in the posting's About-the-company block and (3) agents as their material when speaking about the company. The suggested section headings live in COMPANY_MD_SECTIONS — a suggestion for authors, never a required structure.",
      "type": "string",
      "maxLength": 20000,
      "pattern": "^\\S(?:[\\s\\S]*\\S)?$"
    },
    "facts": {
      "description": "Company facts: ordered free rows, one line each (label + value). Present means non-empty — an empty list is spelled by omitting the field (the nonempty-optional posture).",
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "maxLength": 200,
            "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
            "description": "What the row states (trimmed, non-empty). Rows are free — add, edit, delete at will; the default vocabulary is founded / headcount / locations / business domains, but nothing is a fixed key."
          },
          "value": {
            "type": "string",
            "maxLength": 200,
            "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
            "description": "The stated value, exactly as the company words it (trimmed, non-empty)."
          }
        },
        "required": [
          "label",
          "value"
        ],
        "additionalProperties": false,
        "description": "One company fact row: label + value."
      }
    },
    "links": {
      "description": "Company links: ordered public URLs. Present means non-empty — an empty list is spelled by omitting the field (the nonempty-optional posture).",
      "minItems": 1,
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "maxLength": 200,
            "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
            "description": "Display label for the link (trimmed, non-empty)."
          },
          "url": {
            "type": "string",
            "format": "uri",
            "description": "Public URL where an agent can look the company up."
          }
        },
        "required": [
          "label",
          "url"
        ],
        "additionalProperties": false,
        "description": "One public company link: label + URL, in the order stated."
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output schema

{
  "type": "object",
  "properties": {
    "profile": {
      "type": "object",
      "properties": {
        "schemaVersion": {
          "type": "string",
          "pattern": "^2\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$",
          "description": "Contract version as a SemVer core triple with major locked to 2 (pattern \"2.<minor>.<patch>\", e.g. \"2.0.0\"). Minors are additive-only: they may only add optional fields. Other majors and non-SemVer strings are rejected."
        },
        "intro": {
          "description": "Company intro: ONE Markdown block — facts and links alone do not convey what the company is like. Read by (1) candidates in the posting's About-the-company block and (3) agents as their material when speaking about the company. The suggested section headings live in COMPANY_MD_SECTIONS — a suggestion for authors, never a required structure.",
          "type": "string",
          "maxLength": 20000,
          "pattern": "^\\S(?:[\\s\\S]*\\S)?$"
        },
        "facts": {
          "description": "Company facts: ordered free rows, one line each (label + value). Present means non-empty — an empty list is spelled by omitting the field (the nonempty-optional posture).",
          "minItems": 1,
          "maxItems": 50,
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string",
                "maxLength": 200,
                "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
                "description": "What the row states (trimmed, non-empty). Rows are free — add, edit, delete at will; the default vocabulary is founded / headcount / locations / business domains, but nothing is a fixed key."
              },
              "value": {
                "type": "string",
                "maxLength": 200,
                "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
                "description": "The stated value, exactly as the company words it (trimmed, non-empty)."
              }
            },
            "required": [
              "label",
              "value"
            ],
            "additionalProperties": false,
            "description": "One company fact row: label + value."
          }
        },
        "links": {
          "description": "Company links: ordered public URLs. Present means non-empty — an empty list is spelled by omitting the field (the nonempty-optional posture).",
          "minItems": 1,
          "maxItems": 20,
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "label": {
                "type": "string",
                "maxLength": 200,
                "pattern": "^\\S(?:[\\s\\S]*\\S)?$",
                "description": "Display label for the link (trimmed, non-empty)."
              },
              "url": {
                "type": "string",
                "format": "uri",
                "description": "Public URL where an agent can look the company up."
              }
            },
            "required": [
              "label",
              "url"
            ],
            "additionalProperties": false,
            "description": "One public company link: label + URL, in the order stated."
          }
        }
      },
      "required": [
        "schemaVersion"
      ],
      "additionalProperties": false,
      "description": "The saved profile, read back from the store."
    }
  },
  "required": [
    "profile"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

On this page