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

MCP-tool

Mediabestanden doorzoeken

sosoapi_query_assets

Zoek mediabestanden in een werkruimte op asset_type, source of tag; geeft een pagina (limit maximaal 100, plus offset) en het totaal terug. Geef workspace_id expliciet mee.

Lezen als Markdown

Profielen en transporten

Profielen: core, 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": true,
  "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
workspace_idstringOptioneel / item
  • format: "uuid"
asset_typestring | arrayOptioneel / item—
asset_typeanyOf 1stringOptioneel / item
  • enum: ["text","image","video","audio"]
asset_typeanyOf 2arrayOptioneel / item—
asset_type[]anyOf 2stringOptioneel / item
  • enum: ["text","image","video","audio"]
sourcestringOptioneel / item
  • maxLength: 64
tagstringOptioneel / item
  • maxLength: 64
limitintegerOptioneel / item
  • minimum: 1
  • maximum: 100
offsetintegerOptioneel / item

Over te slaan rijen. Beschikbaar tot 100000; daarboven 400 OFFSET_TOO_LARGE. Gebruik liever filters dan diepe paginering.

  • minimum: 0
  • maximum: 9007199254740991
include_versionbooleanOptioneel / item

Optioneel. true voegt de resourceversie aan het antwoord toe.

—
Volledig JSON Schema
{
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid"
    },
    "asset_type": {
      "anyOf": [
        {
          "type": "string",
          "enum": [
            "text",
            "image",
            "video",
            "audio"
          ]
        },
        {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "text",
              "image",
              "video",
              "audio"
            ]
          }
        }
      ]
    },
    "source": {
      "type": "string",
      "maxLength": 64
    },
    "tag": {
      "type": "string",
      "maxLength": 64
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Rows to skip. Served up to 100000; beyond it 400 OFFSET_TOO_LARGE. Prefer filters to paging deep.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "include_version": {
      "description": "Optional. true adds the resource version to the answer.",
      "type": "boolean"
    }
  },
  "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
assetsarrayVerplicht in bovenliggend object—
assets[]objectOptioneel / item
  • additionalProperties: false
assets[].idinteger | stringVerplicht in bovenliggend object—
assets[].idanyOf 1integerVerplicht in bovenliggend object
  • minimum: -9007199254740991
  • maximum: 9007199254740991
assets[].idanyOf 2stringVerplicht in bovenliggend object—
assets[].workspace_idstringVerplicht in bovenliggend object
  • format: "uuid"
assets[].user_idstringVerplicht in bovenliggend object
  • format: "uuid"
assets[].asset_typestringVerplicht in bovenliggend object
  • enum: ["text","image","video","audio"]
assets[].asset_urlstring | nullVerplicht in bovenliggend object—
assets[].asset_urlanyOf 1stringVerplicht in bovenliggend object—
assets[].asset_urlanyOf 2nullVerplicht in bovenliggend object—
assets[].preview_urlstring | nullOptioneel / item

Tijdelijke lees-URL met werkruimtetoestemming. Vernieuw via Asset lezen/weergeven na preview_expires_at; behoud asset_url als blijvende media-identiteit.

—
assets[].preview_urlanyOf 1stringOptioneel / item
  • format: "uri"
assets[].preview_urlanyOf 2nullOptioneel / item—
assets[].preview_expires_atstring | nullOptioneel / item—
assets[].preview_expires_atanyOf 1stringOptioneel / item
  • 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))$"
assets[].preview_expires_atanyOf 2nullOptioneel / item—
assets[].titlestring | nullVerplicht in bovenliggend object—
assets[].titleanyOf 1stringVerplicht in bovenliggend object—
assets[].titleanyOf 2nullVerplicht in bovenliggend object—
assets[].descriptionstring | nullVerplicht in bovenliggend object—
assets[].descriptionanyOf 1stringVerplicht in bovenliggend object—
assets[].descriptionanyOf 2nullVerplicht in bovenliggend object—
assets[].tagsarray | nullVerplicht in bovenliggend object—
assets[].tagsanyOf 1arrayVerplicht in bovenliggend object—
assets[].tags[]anyOf 1stringOptioneel / item—
assets[].tagsanyOf 2nullVerplicht in bovenliggend object—
assets[].metadataobject | nullVerplicht in bovenliggend object—
assets[].metadataanyOf 1objectVerplicht in bovenliggend object
  • additionalProperties: {}
assets[].metadata.*anyOf 1any JSON valueOptioneel / item—
assets[].metadataanyOf 2nullVerplicht in bovenliggend object—
assets[].sourcestring | nullOptioneel / item—
assets[].sourceanyOf 1stringOptioneel / item—
assets[].sourceanyOf 2nullOptioneel / item—
assets[].source_metadataobject | nullOptioneel / item—
assets[].source_metadataanyOf 1objectOptioneel / item
  • additionalProperties: {}
assets[].source_metadata.*anyOf 1any JSON valueOptioneel / item—
assets[].source_metadataanyOf 2nullOptioneel / item—
assets[].created_atstringVerplicht in bovenliggend object—
assets[].versionintegerOptioneel / item
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
totalintegerVerplicht in bovenliggend object
  • minimum: 0
  • maximum: 9007199254740991
Volledig JSON Schema
{
  "type": "object",
  "properties": {
    "assets": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              },
              {
                "type": "string"
              }
            ]
          },
          "workspace_id": {
            "type": "string",
            "format": "uuid"
          },
          "user_id": {
            "type": "string",
            "format": "uuid"
          },
          "asset_type": {
            "type": "string",
            "enum": [
              "text",
              "image",
              "video",
              "audio"
            ]
          },
          "asset_url": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "preview_url": {
            "description": "Workspace-authorized temporary read URL. Refresh through Asset read/list after preview_expires_at; keep asset_url as persisted media identity.",
            "anyOf": [
              {
                "type": "string",
                "format": "uri"
              },
              {
                "type": "null"
              }
            ]
          },
          "preview_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))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "title": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "description": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "tags": {
            "anyOf": [
              {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              {
                "type": "null"
              }
            ]
          },
          "metadata": {
            "anyOf": [
              {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ]
          },
          "source": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "source_metadata": {
            "anyOf": [
              {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {}
              },
              {
                "type": "null"
              }
            ]
          },
          "created_at": {
            "type": "string"
          },
          "version": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id",
          "workspace_id",
          "user_id",
          "asset_type",
          "asset_url",
          "title",
          "description",
          "tags",
          "metadata",
          "created_at"
        ],
        "additionalProperties": false
      }
    },
    "total": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "assets",
    "total"
  ],
  "$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_query_assets",
  "arguments": {}
}

structuredContent

{
  "assets": [],
  "total": 0
}
Installeer of verbind MCP