Zoeken wordt pas geladen wanneer je het gebruikt. Bekijk hieronder alle categorieën.

MCP-tool

Projectprofiel bijwerken

sosoapi_update_project_profile

Werk velden van het merkprofiel van een project bij. Weggelaten velden blijven ongewijzigd. Vereist expected_profile_version uit de laatste leesactie en een idempotency_key (rol editor).

Lezen als Markdown

Profielen en transporten

Profielen: full · Transporten: stdio, http

Kies core of full om te bepalen welke tools je client ziet; dit verandert geen machtigingen. Lokale bestandsupload vereist stdio en is niet beschikbaar via HTTP. Stel SOSOAPI_OUTPUT_SCHEMAS=1 in om uitvoerschema's bij detectie op te nemen. Tools geven met en zonder die instelling gestructureerde resultaten terug.

Machtigingen en neveneffecten

Annotaties helpen clients een tool te beschrijven. Elke aanroep controleert nog steeds gebruikersauthenticatie, rol, resourcetoegang en verleende bevoegdheden.

{
  "readOnlyHint": false,
  "destructiveHint": false,
  "idempotentHint": true,
  "openWorldHint": false
}

Invoervelden

Verplicht betekent verplicht binnen het bovenliggende object en de gekozen variant. Een verplicht onderliggend veld maakt een optioneel bovenliggend object niet verplicht. Onderstaande regels en veldnamen zijn uit het contract gekopieerd.

Invoervelden
Veld / variantType / verplichtBeperkingen
$objectVerplicht in bovenliggend object
  • additionalProperties: false
project_idstringVerplicht in bovenliggend object
  • format: "uuid"
expected_profile_versionintegerVerplicht in bovenliggend object
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
idempotency_keystringVerplicht in bovenliggend object
  • minLength: 8
  • maxLength: 160
patchobjectVerplicht in bovenliggend object
  • additionalProperties: false
patch.taglinestring | nullOptioneel / item—
patch.taglineanyOf 1stringOptioneel / item
  • maxLength: 300
patch.taglineanyOf 2nullOptioneel / item—
patch.descriptionstring | nullOptioneel / item—
patch.descriptionanyOf 1stringOptioneel / item
  • maxLength: 4000
patch.descriptionanyOf 2nullOptioneel / item—
patch.voicestring | nullOptioneel / item—
patch.voiceanyOf 1stringOptioneel / item
  • maxLength: 1000
patch.voiceanyOf 2nullOptioneel / item—
patch.target_audiencestring | nullOptioneel / item—
patch.target_audienceanyOf 1stringOptioneel / item
  • maxLength: 1000
patch.target_audienceanyOf 2nullOptioneel / item—
patch.color_palettearrayOptioneel / item
  • maxItems: 20
patch.color_palette[]stringOptioneel / item
  • maxLength: 64
patch.goalsarrayOptioneel / item
  • maxItems: 50
patch.goals[]stringOptioneel / item
  • maxLength: 160
patch.no_go_topicsarrayOptioneel / item
  • maxItems: 100
patch.no_go_topics[]stringOptioneel / item
  • maxLength: 160
patch.language_primarystringOptioneel / item
  • minLength: 2
  • maxLength: 35
patch.positioningstring | nullOptioneel / item—
patch.positioninganyOf 1stringOptioneel / item
  • maxLength: 2000
patch.positioninganyOf 2nullOptioneel / item—
patch.uspstring | nullOptioneel / item—
patch.uspanyOf 1stringOptioneel / item
  • maxLength: 1000
patch.uspanyOf 2nullOptioneel / item—
patch.visual_identityobject | nullOptioneel / item—
patch.visual_identityanyOf 1objectOptioneel / item
  • additionalProperties: {}
patch.visual_identity.*anyOf 1any JSON valueOptioneel / item—
patch.visual_identityanyOf 2nullOptioneel / item—
patch.forbidden_claimsarrayOptioneel / item
  • maxItems: 100
patch.forbidden_claims[]stringOptioneel / item
  • maxLength: 240
patch.north_star_metricstring | nullOptioneel / item—
patch.north_star_metricanyOf 1stringOptioneel / item
  • maxLength: 300
patch.north_star_metricanyOf 2nullOptioneel / item—
patch.posting_cadenceobject | nullOptioneel / item—
patch.posting_cadenceanyOf 1objectOptioneel / item
  • additionalProperties: {}
patch.posting_cadence.*anyOf 1any JSON valueOptioneel / item—
patch.posting_cadenceanyOf 2nullOptioneel / item—
patch.app_store_url_iosstring | nullOptioneel / item—
patch.app_store_url_iosanyOf 1stringOptioneel / item
  • format: "uri"
patch.app_store_url_iosanyOf 2nullOptioneel / item—
patch.app_store_url_androidstring | nullOptioneel / item—
patch.app_store_url_androidanyOf 1stringOptioneel / item
  • format: "uri"
patch.app_store_url_androidanyOf 2nullOptioneel / item—
patch.app_metadataobjectOptioneel / item
  • additionalProperties: {}
patch.app_metadata.*any JSON valueOptioneel / item—
Volledig JSON Schema
{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "format": "uuid"
    },
    "expected_profile_version": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "idempotency_key": {
      "type": "string",
      "minLength": 8,
      "maxLength": 160
    },
    "patch": {
      "type": "object",
      "properties": {
        "tagline": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 300
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 4000
            },
            {
              "type": "null"
            }
          ]
        },
        "voice": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "null"
            }
          ]
        },
        "target_audience": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "null"
            }
          ]
        },
        "color_palette": {
          "maxItems": 20,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 64
          }
        },
        "goals": {
          "maxItems": 50,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 160
          }
        },
        "no_go_topics": {
          "maxItems": 100,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 160
          }
        },
        "language_primary": {
          "type": "string",
          "minLength": 2,
          "maxLength": 35
        },
        "positioning": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 2000
            },
            {
              "type": "null"
            }
          ]
        },
        "usp": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "null"
            }
          ]
        },
        "visual_identity": {
          "anyOf": [
            {
              "type": "object",
              "additionalProperties": {}
            },
            {
              "type": "null"
            }
          ]
        },
        "forbidden_claims": {
          "maxItems": 100,
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 240
          }
        },
        "north_star_metric": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 300
            },
            {
              "type": "null"
            }
          ]
        },
        "posting_cadence": {
          "anyOf": [
            {
              "type": "object",
              "additionalProperties": {}
            },
            {
              "type": "null"
            }
          ]
        },
        "app_store_url_ios": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "app_store_url_android": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "app_metadata": {
          "type": "object",
          "additionalProperties": {}
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "project_id",
    "expected_profile_version",
    "idempotency_key",
    "patch"
  ],
  "additionalProperties": false
}

Gestructureerde uitvoer

Dit schema beschrijft structuredContent in een geslaagd toolresultaat. Het MCP-antwoord bevat ook content en kan isError instellen wanneer een aanroep mislukt. Lees bij publiceren het definitieve berichtresultaat; beschouw een geaccepteerd verzoek of tekstantwoord niet als bevestiging. De gekoppelde API-bewerking beschrijft machtigingen en regels voor opnieuw proberen.

Verplicht betekent verplicht binnen het bovenliggende object en de gekozen variant. Een verplicht onderliggend veld maakt een optioneel bovenliggend object niet verplicht. Onderstaande regels en veldnamen zijn uit het contract gekopieerd.

Gestructureerde uitvoer
Veld / variantType / verplichtBeperkingen
$objectVerplicht in bovenliggend object
  • additionalProperties: false
contract_versionstringVerplicht in bovenliggend object
  • const: "project/v1"
profileobjectVerplicht in bovenliggend object
  • additionalProperties: false
profile.project_idstringVerplicht in bovenliggend object
  • format: "uuid"
profile.workspace_idstringVerplicht in bovenliggend object
  • format: "uuid"
profile.taglinestring | nullVerplicht in bovenliggend object—
profile.taglineanyOf 1stringVerplicht in bovenliggend object—
profile.taglineanyOf 2nullVerplicht in bovenliggend object—
profile.descriptionstring | nullVerplicht in bovenliggend object—
profile.descriptionanyOf 1stringVerplicht in bovenliggend object—
profile.descriptionanyOf 2nullVerplicht in bovenliggend object—
profile.voicestring | nullVerplicht in bovenliggend object—
profile.voiceanyOf 1stringVerplicht in bovenliggend object—
profile.voiceanyOf 2nullVerplicht in bovenliggend object—
profile.target_audiencestring | nullVerplicht in bovenliggend object—
profile.target_audienceanyOf 1stringVerplicht in bovenliggend object—
profile.target_audienceanyOf 2nullVerplicht in bovenliggend object—
profile.color_palettearrayVerplicht in bovenliggend object—
profile.color_palette[]stringOptioneel / item—
profile.goalsarrayVerplicht in bovenliggend object—
profile.goals[]stringOptioneel / item—
profile.no_go_topicsarrayVerplicht in bovenliggend object—
profile.no_go_topics[]stringOptioneel / item—
profile.language_primarystringVerplicht in bovenliggend object—
profile.positioningstring | nullVerplicht in bovenliggend object—
profile.positioninganyOf 1stringVerplicht in bovenliggend object—
profile.positioninganyOf 2nullVerplicht in bovenliggend object—
profile.uspstring | nullVerplicht in bovenliggend object—
profile.uspanyOf 1stringVerplicht in bovenliggend object—
profile.uspanyOf 2nullVerplicht in bovenliggend object—
profile.visual_identityobject | nullVerplicht in bovenliggend object—
profile.visual_identityanyOf 1objectVerplicht in bovenliggend object
  • additionalProperties: {}
profile.visual_identity.*anyOf 1any JSON valueOptioneel / item—
profile.visual_identityanyOf 2nullVerplicht in bovenliggend object—
profile.forbidden_claimsarrayVerplicht in bovenliggend object—
profile.forbidden_claims[]stringOptioneel / item—
profile.north_star_metricstring | nullVerplicht in bovenliggend object—
profile.north_star_metricanyOf 1stringVerplicht in bovenliggend object—
profile.north_star_metricanyOf 2nullVerplicht in bovenliggend object—
profile.posting_cadenceobject | nullVerplicht in bovenliggend object—
profile.posting_cadenceanyOf 1objectVerplicht in bovenliggend object
  • additionalProperties: {}
profile.posting_cadence.*anyOf 1any JSON valueOptioneel / item—
profile.posting_cadenceanyOf 2nullVerplicht in bovenliggend object—
profile.app_store_url_iosstring | nullVerplicht in bovenliggend object—
profile.app_store_url_iosanyOf 1stringVerplicht in bovenliggend object—
profile.app_store_url_iosanyOf 2nullVerplicht in bovenliggend object—
profile.app_store_url_androidstring | nullVerplicht in bovenliggend object—
profile.app_store_url_androidanyOf 1stringVerplicht in bovenliggend object—
profile.app_store_url_androidanyOf 2nullVerplicht in bovenliggend object—
profile.app_metadataobjectVerplicht in bovenliggend object
  • additionalProperties: {}
profile.app_metadata.*any JSON valueOptioneel / item—
profile.profile_versionintegerVerplicht in bovenliggend object
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
profile.updated_bystring | nullVerplicht in bovenliggend object—
profile.updated_byanyOf 1stringVerplicht in bovenliggend object
  • format: "uuid"
profile.updated_byanyOf 2nullVerplicht in bovenliggend object—
profile.updated_by_kindstringVerplicht in bovenliggend object
  • enum: ["jwt","api_key","delegated_ai","migration"]
profile.updated_by_api_key_idstring | nullVerplicht in bovenliggend object—
profile.updated_by_api_key_idanyOf 1stringVerplicht in bovenliggend object
  • format: "uuid"
profile.updated_by_api_key_idanyOf 2nullVerplicht in bovenliggend object—
profile.updated_by_delegated_grant_idstring | nullVerplicht in bovenliggend object—
profile.updated_by_delegated_grant_idanyOf 1stringVerplicht in bovenliggend object
  • format: "uuid"
profile.updated_by_delegated_grant_idanyOf 2nullVerplicht in bovenliggend object—
profile.created_atstringVerplicht in bovenliggend object
  • 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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
profile.updated_atstringVerplicht in bovenliggend object
  • 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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
receipt_idstringVerplicht in bovenliggend object
  • format: "uuid"
appliedbooleanVerplicht in bovenliggend object—
dedupedbooleanVerplicht in bovenliggend object—
Volledig JSON Schema
{
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "project/v1"
    },
    "profile": {
      "type": "object",
      "properties": {
        "project_id": {
          "type": "string",
          "format": "uuid"
        },
        "workspace_id": {
          "type": "string",
          "format": "uuid"
        },
        "tagline": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "voice": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "target_audience": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "color_palette": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "goals": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "no_go_topics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "language_primary": {
          "type": "string"
        },
        "positioning": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "usp": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "visual_identity": {
          "anyOf": [
            {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            {
              "type": "null"
            }
          ]
        },
        "forbidden_claims": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "north_star_metric": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "posting_cadence": {
          "anyOf": [
            {
              "type": "object",
              "propertyNames": {
                "type": "string"
              },
              "additionalProperties": {}
            },
            {
              "type": "null"
            }
          ]
        },
        "app_store_url_ios": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "app_store_url_android": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "app_metadata": {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {}
        },
        "profile_version": {
          "type": "integer",
          "exclusiveMinimum": 0,
          "maximum": 9007199254740991
        },
        "updated_by": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ]
        },
        "updated_by_kind": {
          "type": "string",
          "enum": [
            "jwt",
            "api_key",
            "delegated_ai",
            "migration"
          ]
        },
        "updated_by_api_key_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ]
        },
        "updated_by_delegated_grant_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ]
        },
        "created_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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        },
        "updated_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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
        }
      },
      "required": [
        "project_id",
        "workspace_id",
        "tagline",
        "description",
        "voice",
        "target_audience",
        "color_palette",
        "goals",
        "no_go_topics",
        "language_primary",
        "positioning",
        "usp",
        "visual_identity",
        "forbidden_claims",
        "north_star_metric",
        "posting_cadence",
        "app_store_url_ios",
        "app_store_url_android",
        "app_metadata",
        "profile_version",
        "updated_by",
        "updated_by_kind",
        "updated_by_api_key_id",
        "updated_by_delegated_grant_id",
        "created_at",
        "updated_at"
      ],
      "additionalProperties": false
    },
    "receipt_id": {
      "type": "string",
      "format": "uuid"
    },
    "applied": {
      "type": "boolean"
    },
    "deduped": {
      "type": "boolean"
    }
  },
  "required": [
    "contract_version",
    "profile",
    "receipt_id",
    "applied",
    "deduped"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Voorbeeld van een toolaanroep

Deze voorbeelden gebruiken fictieve waarden die tegen de schema's zijn gecontroleerd. Vervang IDs door toegestane IDs, media door gereedstaande bestanden en datums door je bevestigde publicatietijd. Controleer accountgeschiktheid vóór een schrijfhandeling. Deze pagina verstuurt geen API-verzoeken.

{
  "name": "sosoapi_update_project_profile",
  "arguments": {
    "project_id": "11111111-1111-4111-8111-111111111111",
    "expected_profile_version": 1,
    "idempotency_key": "example-intent-0001",
    "patch": {
      "tagline": "A fictional project for the documentation example."
    }
  }
}

structuredContent

{
  "contract_version": "project/v1",
  "profile": {
    "project_id": "11111111-1111-4111-8111-111111111111",
    "workspace_id": "11111111-1111-4111-8111-111111111111",
    "tagline": null,
    "description": null,
    "voice": null,
    "target_audience": null,
    "color_palette": [],
    "goals": [],
    "no_go_topics": [],
    "language_primary": "example",
    "positioning": null,
    "usp": null,
    "visual_identity": null,
    "forbidden_claims": [],
    "north_star_metric": null,
    "posting_cadence": null,
    "app_store_url_ios": null,
    "app_store_url_android": null,
    "app_metadata": {},
    "profile_version": 1,
    "updated_by": null,
    "updated_by_kind": "jwt",
    "updated_by_api_key_id": null,
    "updated_by_delegated_grant_id": null,
    "created_at": "2099-01-15T09:00:00Z",
    "updated_at": "2099-01-15T09:00:00Z"
  },
  "receipt_id": "11111111-1111-4111-8111-111111111111",
  "applied": false,
  "deduped": false
}
Installeer of verbind MCP