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

Outil MCP

Lister les projets

sosoapi_list_projects

Lister les projets d’un espace de travail (couche facultative de provenance et de comptes par défaut) et indiquer celui qui est actif.

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
workspace_idstringRequis dans le parent
  • format: "uuid"
limitintegerFacultatif / élément

Taille de page, de 1 à 100. Envoyer limit ou cursor active la pagination par curseur et ajoute next_cursor à la réponse.

  • minimum: 1
  • maximum: 100
cursorstringFacultatif / élément

Curseur opaque : le next_cursor de la page précédente, inchangé. Omettez-le pour la première page. Les mêmes filtres doivent accompagner chaque page.

  • minLength: 1
  • maxLength: 512
include_versionbooleanFacultatif / élément

Facultatif. true ajoute la version de la ressource à la réponse.

—
JSON Schema complet
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Page size, 1 to 100. Sending limit or cursor switches this route to cursor paging and adds next_cursor to the answer."
    },
    "cursor": {
      "type": "string",
      "minLength": 1,
      "maxLength": 512,
      "description": "Opaque cursor: the next_cursor of the previous page, unchanged. Omit it for the first page. The same filters must be sent with every page."
    },
    "include_version": {
      "description": "Optional. true adds the resource version to the answer.",
      "type": "boolean"
    }
  },
  "required": [
    "workspace_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
projectsarrayRequis dans le parent—
projects[]objectFacultatif / élément
  • additionalProperties: false
projects[].idstringRequis dans le parent
  • format: "uuid"
projects[].workspace_idstringRequis dans le parent
  • format: "uuid"
projects[].namestringRequis dans le parent
  • minLength: 1
  • maxLength: 200
projects[].operational_statestringRequis dans le parent
  • enum: ["active","archived"]
projects[].lifecycle_versionintegerRequis dans le parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
projects[].defaults_versionintegerRequis dans le parent
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
projects[].archived_atstring | nullRequis dans le parent—
projects[].archived_atanyOf 1stringRequis dans le parent—
projects[].archived_atanyOf 2nullRequis dans le parent—
projects[].archived_bystring | nullRequis dans le parent—
projects[].archived_byanyOf 1stringRequis dans le parent
  • format: "uuid"
projects[].archived_byanyOf 2nullRequis dans le parent—
projects[].archived_by_api_key_idstring | nullRequis dans le parent—
projects[].archived_by_api_key_idanyOf 1stringRequis dans le parent
  • format: "uuid"
projects[].archived_by_api_key_idanyOf 2nullRequis dans le parent—
projects[].created_atstringRequis dans le parent—
projects[].updated_atstringRequis dans le parent—
projects[].versionintegerFacultatif / élément
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
active_project_idstring | nullRequis dans le parent—
active_project_idanyOf 1stringRequis dans le parent
  • format: "uuid"
active_project_idanyOf 2nullRequis dans le parent—
next_cursorstring | nullFacultatif / élément

Présent uniquement si la requête contient limit ou cursor. Null sur la dernière page.

—
next_cursoranyOf 1stringFacultatif / élément—
next_cursoranyOf 2nullFacultatif / élément—
JSON Schema complet
{
  "type": "object",
  "properties": {
    "projects": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "workspace_id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 200
          },
          "operational_state": {
            "type": "string",
            "enum": [
              "active",
              "archived"
            ]
          },
          "lifecycle_version": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "defaults_version": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "archived_at": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "archived_by": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid"
              },
              {
                "type": "null"
              }
            ]
          },
          "archived_by_api_key_id": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid"
              },
              {
                "type": "null"
              }
            ]
          },
          "created_at": {
            "type": "string"
          },
          "updated_at": {
            "type": "string"
          },
          "version": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id",
          "workspace_id",
          "name",
          "operational_state",
          "lifecycle_version",
          "defaults_version",
          "archived_at",
          "archived_by",
          "archived_by_api_key_id",
          "created_at",
          "updated_at"
        ],
        "additionalProperties": false
      }
    },
    "active_project_id": {
      "anyOf": [
        {
          "type": "string",
          "format": "uuid"
        },
        {
          "type": "null"
        }
      ]
    },
    "next_cursor": {
      "description": "Present only when the request sent limit or cursor. Null on the last page.",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "projects",
    "active_project_id"
  ],
  "$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_list_projects",
  "arguments": {
    "workspace_id": "11111111-1111-4111-8111-111111111111"
  }
}

structuredContent

{
  "projects": [],
  "active_project_id": null
}
Installer ou connecter MCP