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

Outil MCP

Lister les clés API

sosoapi_list_api_keys

Lister les clés API de l’utilisateur (nom, 4 derniers caractères, statut, expiration, filiation) ; définir include_authority pour obtenir aussi les capacités et restrictions d’espaces de travail de chaque clé. Les secrets ne sont jamais renvoyés. Nécessite l’autorisation Manage API keys ; un PAT ne peut pas l’utiliser.

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
include_revokedbooleanFacultatif / élément—
include_authoritybooleanFacultatif / élément

Renvoyer aussi les capacités de chaque clé, la restriction d’espaces (null = tous les espaces) et l’autorisation déléguée qui l’a créée.

—
JSON Schema complet
{
  "type": "object",
  "properties": {
    "include_revoked": {
      "type": "boolean"
    },
    "include_authority": {
      "description": "Also return each key's capabilities, Workspace limit (null = every Workspace) and the delegated grant that created it.",
      "type": "boolean"
    }
  },
  "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
apiKeysarrayRequis dans le parent—
apiKeys[]objectFacultatif / élément
  • additionalProperties: false
apiKeys[].idstringRequis dans le parent
  • format: "uuid"
apiKeys[].namestringRequis dans le parent—
apiKeys[].last_4stringRequis dans le parent—
apiKeys[].scopesarrayRequis dans le parent—
apiKeys[].scopes[]stringFacultatif / élément—
apiKeys[].created_atstringRequis 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)))$"
apiKeys[].expires_atstring | nullRequis dans le parent—
apiKeys[].expires_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)))$"
apiKeys[].expires_atanyOf 2nullRequis dans le parent—
apiKeys[].last_used_atstring | nullRequis dans le parent—
apiKeys[].last_used_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)))$"
apiKeys[].last_used_atanyOf 2nullRequis dans le parent—
apiKeys[].revoked_atstring | nullRequis dans le parent—
apiKeys[].revoked_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)))$"
apiKeys[].revoked_atanyOf 2nullRequis dans le parent—
apiKeys[].statusstringRequis dans le parent
  • enum: ["active","expired","revoked"]
apiKeys[].replacesobject | nullRequis dans le parent—
apiKeys[].replacesanyOf 1objectRequis dans le parent
  • additionalProperties: false
apiKeys[].replaces.idanyOf 1stringRequis dans le parent
  • format: "uuid"
apiKeys[].replaces.nameanyOf 1stringRequis dans le parent—
apiKeys[].replaces.last_4anyOf 1stringRequis dans le parent—
apiKeys[].replaces.statusanyOf 1stringRequis dans le parent
  • enum: ["active","expired","revoked"]
apiKeys[].replacesanyOf 2nullRequis dans le parent—
apiKeys[].replaced_byarrayRequis dans le parent—
apiKeys[].replaced_by[]objectFacultatif / élément
  • additionalProperties: false
apiKeys[].replaced_by[].idstringRequis dans le parent
  • format: "uuid"
apiKeys[].replaced_by[].namestringRequis dans le parent—
apiKeys[].replaced_by[].last_4stringRequis dans le parent—
apiKeys[].replaced_by[].statusstringRequis dans le parent
  • enum: ["active","expired","revoked"]
apiKeys[].capabilitiesarrayFacultatif / élément—
apiKeys[].capabilities[]stringFacultatif / élément
  • enum: ["agent:operate","agent:publish","agent:engage"]
apiKeys[].workspace_idsarray | nullFacultatif / élément—
apiKeys[].workspace_idsanyOf 1arrayFacultatif / élément—
apiKeys[].workspace_ids[]anyOf 1stringFacultatif / élément
  • format: "uuid"
apiKeys[].workspace_idsanyOf 2nullFacultatif / élément—
apiKeys[].created_by_delegated_grant_idstring | nullFacultatif / élément—
apiKeys[].created_by_delegated_grant_idanyOf 1stringFacultatif / élément
  • format: "uuid"
apiKeys[].created_by_delegated_grant_idanyOf 2nullFacultatif / élément—
JSON Schema complet
{
  "type": "object",
  "properties": {
    "apiKeys": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid"
          },
          "name": {
            "type": "string"
          },
          "last_4": {
            "type": "string"
          },
          "scopes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "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)))$"
          },
          "expires_at": {
            "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "last_used_at": {
            "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "revoked_at": {
            "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|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "active",
              "expired",
              "revoked"
            ]
          },
          "replaces": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "name": {
                    "type": "string"
                  },
                  "last_4": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "active",
                      "expired",
                      "revoked"
                    ]
                  }
                },
                "required": [
                  "id",
                  "name",
                  "last_4",
                  "status"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "replaced_by": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "format": "uuid"
                },
                "name": {
                  "type": "string"
                },
                "last_4": {
                  "type": "string"
                },
                "status": {
                  "type": "string",
                  "enum": [
                    "active",
                    "expired",
                    "revoked"
                  ]
                }
              },
              "required": [
                "id",
                "name",
                "last_4",
                "status"
              ],
              "additionalProperties": false
            }
          },
          "capabilities": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "agent:operate",
                "agent:publish",
                "agent:engage"
              ]
            }
          },
          "workspace_ids": {
            "anyOf": [
              {
                "type": "array",
                "items": {
                  "type": "string",
                  "format": "uuid"
                }
              },
              {
                "type": "null"
              }
            ]
          },
          "created_by_delegated_grant_id": {
            "anyOf": [
              {
                "type": "string",
                "format": "uuid"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "id",
          "name",
          "last_4",
          "scopes",
          "created_at",
          "expires_at",
          "last_used_at",
          "revoked_at",
          "status",
          "replaces",
          "replaced_by"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "apiKeys"
  ],
  "$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_api_keys",
  "arguments": {}
}

structuredContent

{
  "apiKeys": []
}
Installer ou connecter MCP