La recherche se charge uniquement lorsque vous l’utilisez. Parcourez toutes les catégories ci-dessous.

Outil MCP

Obtenir le profil d’un projet

sosoapi_get_project_profile

Lire le profil de marque d’un projet (slogan, ton, public cible, objectifs, palette, etc.) ; profile vaut null s’il n’existe pas.

Lire en Markdown

Profils et transports

Profils : full · Transports : stdio, http

Choisissez core ou full pour définir les outils visibles du client ; cela ne change pas ses autorisations. Le téléversement local nécessite stdio et n’est pas disponible sur HTTP. Définissez SOSOAPI_OUTPUT_SCHEMAS=1 pour inclure les schémas de sortie à la découverte. Les outils renvoient des résultats structurés avec ou sans ce réglage.

Autorisations et effets de bord

Les annotations aident les clients à décrire un outil. Chaque appel vérifie toujours l’authentification, le rôle, l’accès aux ressources et les capacités accordées de l’utilisateur.

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

Champs d’entrée

Requis signifie requis dans l’objet parent et la branche sélectionnée. Un enfant requis ne rend pas obligatoire un parent facultatif. Les règles et noms de champs ci-dessous proviennent du contrat.

Champs d’entrée
Champ / brancheType / requisContraintes
$objectRequis dans le parent
  • additionalProperties: false
project_idstringRequis dans le parent
  • format: "uuid"
JSON Schema complet
{
  "type": "object",
  "properties": {
    "project_id": {
      "type": "string",
      "format": "uuid"
    }
  },
  "required": [
    "project_id"
  ],
  "additionalProperties": false
}

Sortie structurée

Ce schéma décrit structuredContent dans un résultat d’outil réussi. La réponse MCP contient aussi content et peut définir isError en cas d’échec. Pour publier, lisez le résultat final de la publication plutôt que de considérer une requête acceptée ou une réponse texte comme une confirmation. L’opération API liée explique les autorisations et règles de nouvelle tentative.

Requis signifie requis dans l’objet parent et la branche sélectionnée. Un enfant requis ne rend pas obligatoire un parent facultatif. Les règles et noms de champs ci-dessous proviennent du contrat.

Sortie structurée
Champ / brancheType / requisContraintes
$objectRequis dans le parent
  • additionalProperties: false
contract_versionstringRequis dans le parent
  • const: "project/v1"
profileobject | nullRequis dans le parent—
profileanyOf 1objectRequis dans le parent
  • additionalProperties: false
profile.project_idanyOf 1stringRequis dans le parent
  • format: "uuid"
profile.workspace_idanyOf 1stringRequis dans le parent
  • format: "uuid"
profile.taglineanyOf 1string | nullRequis dans le parent—
profile.taglineanyOf 1 / anyOf 1stringRequis dans le parent—
profile.taglineanyOf 1 / anyOf 2nullRequis dans le parent—
profile.descriptionanyOf 1string | nullRequis dans le parent—
profile.descriptionanyOf 1 / anyOf 1stringRequis dans le parent—
profile.descriptionanyOf 1 / anyOf 2nullRequis dans le parent—
profile.voiceanyOf 1string | nullRequis dans le parent—
profile.voiceanyOf 1 / anyOf 1stringRequis dans le parent—
profile.voiceanyOf 1 / anyOf 2nullRequis dans le parent—
profile.target_audienceanyOf 1string | nullRequis dans le parent—
profile.target_audienceanyOf 1 / anyOf 1stringRequis dans le parent—
profile.target_audienceanyOf 1 / anyOf 2nullRequis dans le parent—
profile.color_paletteanyOf 1arrayRequis dans le parent—
profile.color_palette[]anyOf 1stringFacultatif / élément—
profile.goalsanyOf 1arrayRequis dans le parent—
profile.goals[]anyOf 1stringFacultatif / élément—
profile.no_go_topicsanyOf 1arrayRequis dans le parent—
profile.no_go_topics[]anyOf 1stringFacultatif / élément—
profile.language_primaryanyOf 1stringRequis dans le parent—
profile.positioninganyOf 1string | nullRequis dans le parent—
profile.positioninganyOf 1 / anyOf 1stringRequis dans le parent—
profile.positioninganyOf 1 / anyOf 2nullRequis dans le parent—
profile.uspanyOf 1string | nullRequis dans le parent—
profile.uspanyOf 1 / anyOf 1stringRequis dans le parent—
profile.uspanyOf 1 / anyOf 2nullRequis dans le parent—
profile.visual_identityanyOf 1object | nullRequis dans le parent—
profile.visual_identityanyOf 1 / anyOf 1objectRequis dans le parent
  • additionalProperties: {}
profile.visual_identity.*anyOf 1 / anyOf 1any JSON valueFacultatif / élément—
profile.visual_identityanyOf 1 / anyOf 2nullRequis dans le parent—
profile.forbidden_claimsanyOf 1arrayRequis dans le parent—
profile.forbidden_claims[]anyOf 1stringFacultatif / élément—
profile.north_star_metricanyOf 1string | nullRequis dans le parent—
profile.north_star_metricanyOf 1 / anyOf 1stringRequis dans le parent—
profile.north_star_metricanyOf 1 / anyOf 2nullRequis dans le parent—
profile.posting_cadenceanyOf 1object | nullRequis dans le parent—
profile.posting_cadenceanyOf 1 / anyOf 1objectRequis dans le parent
  • additionalProperties: {}
profile.posting_cadence.*anyOf 1 / anyOf 1any JSON valueFacultatif / élément—
profile.posting_cadenceanyOf 1 / anyOf 2nullRequis dans le parent—
profile.app_store_url_iosanyOf 1string | nullRequis dans le parent—
profile.app_store_url_iosanyOf 1 / anyOf 1stringRequis dans le parent—
profile.app_store_url_iosanyOf 1 / anyOf 2nullRequis dans le parent—
profile.app_store_url_androidanyOf 1string | nullRequis dans le parent—
profile.app_store_url_androidanyOf 1 / anyOf 1stringRequis dans le parent—
profile.app_store_url_androidanyOf 1 / anyOf 2nullRequis dans le parent—
profile.app_metadataanyOf 1objectRequis dans le parent
  • additionalProperties: {}
profile.app_metadata.*anyOf 1any JSON valueFacultatif / élément—
profile.profile_versionanyOf 1integerRequis dans le parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
profile.updated_byanyOf 1string | nullRequis dans le parent—
profile.updated_byanyOf 1 / anyOf 1stringRequis dans le parent
  • format: "uuid"
profile.updated_byanyOf 1 / anyOf 2nullRequis dans le parent—
profile.updated_by_kindanyOf 1stringRequis dans le parent
  • enum: ["jwt","api_key","delegated_ai","migration"]
profile.updated_by_api_key_idanyOf 1string | nullRequis dans le parent—
profile.updated_by_api_key_idanyOf 1 / anyOf 1stringRequis dans le parent
  • format: "uuid"
profile.updated_by_api_key_idanyOf 1 / anyOf 2nullRequis dans le parent—
profile.updated_by_delegated_grant_idanyOf 1string | nullRequis dans le parent—
profile.updated_by_delegated_grant_idanyOf 1 / anyOf 1stringRequis dans le parent
  • format: "uuid"
profile.updated_by_delegated_grant_idanyOf 1 / anyOf 2nullRequis dans le parent—
profile.created_atanyOf 1stringRequis dans le parent
  • 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_atanyOf 1stringRequis dans le parent
  • 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)))$"
profileanyOf 2nullRequis dans le parent—
JSON Schema complet
{
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "project/v1"
    },
    "profile": {
      "anyOf": [
        {
          "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
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "contract_version",
    "profile"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Exemple d’appel d’outil

Ces exemples utilisent des valeurs fictives vérifiées contre les schémas. Remplacez les identifiants par ceux que vous êtes autorisé à utiliser, les médias par des ressources prêtes et les dates par l’heure confirmée. Vérifiez l’éligibilité du compte avant toute écriture. Cette page n’envoie aucune requête API.

{
  "name": "sosoapi_get_project_profile",
  "arguments": {
    "project_id": "11111111-1111-4111-8111-111111111111"
  }
}

structuredContent

{
  "contract_version": "project/v1",
  "profile": null
}
Installer ou connecter MCP