أداة MCP
الاستعلام عن الأصول
sosoapi_query_assetsالعثور على أصول مساحة عمل حسب asset_type أو source أو tag؛ يُعيد صفحة (limit حتى 100 مع offset) والإجمالي. مرّر workspace_id صراحةً.
اقرأ بصيغة Markdownالملفات التعريفية ووسائل النقل
الملفات التعريفية: core, full · وسائل النقل: stdio, http
اختر core أو full للأدوات التي يراها عميلك؛ لا يغيّر ذلك أذوناته. يحتاج رفع الملفات المحلية stdio ولا يتاح بـ HTTP. اضبط SOSOAPI_OUTPUT_SCHEMAS=1 لمخططات المخرجات بالاكتشاف. النتائج منظّمة بهذا الإعداد أوبدونه.
الأذونات والآثار الجانبية
تساعد الشروح العملاء على وصف الأداة. يظل كل استدعاء يفحص مصادقة المستخدم ودوره ووصوله إلى المورد وتفويض الإمكانات.
{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
}- /assets-api/list: agent:operate · synchronous_http_response
حقول الإدخال
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب |
|
workspace_id | stringاختياري / عنصر |
|
asset_type | string | arrayاختياري / عنصر | — |
asset_typeanyOf 1 | stringاختياري / عنصر |
|
asset_typeanyOf 2 | arrayاختياري / عنصر | — |
asset_type[]anyOf 2 | stringاختياري / عنصر |
|
source | stringاختياري / عنصر |
|
tag | stringاختياري / عنصر |
|
limit | integerاختياري / عنصر |
|
offset | integerاختياري / عنصر | الصفوف التي ستُتخطّى. يُخدَم حتى 100000؛ وما بعده يعطي 400 OFFSET_TOO_LARGE. فضّل المرشحات على التصفّح العميق.
|
include_version | booleanاختياري / عنصر | اختياري. تضيف true إصدار المورد إلى الإجابة. — |
مخطط 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
}مخرجات منظّمة
يصف المخطط structuredContent في نتيجة أداة ناجحة. تشمل استجابة MCP أيضاً content وقد تضبط isError عند الفشل. للنشر، اقرأ النتيجة النهائية بدلاً من اعتبار القبول أوالنص تأكيداً. تشرح عملية API المرتبطة الأذونات وقواعد المحاولة.
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب |
|
assets | arrayمطلوب في العنصر الأب | — |
assets[] | objectاختياري / عنصر |
|
assets[].id | integer | stringمطلوب في العنصر الأب | — |
assets[].idanyOf 1 | integerمطلوب في العنصر الأب |
|
assets[].idanyOf 2 | stringمطلوب في العنصر الأب | — |
assets[].workspace_id | stringمطلوب في العنصر الأب |
|
assets[].user_id | stringمطلوب في العنصر الأب |
|
assets[].asset_type | stringمطلوب في العنصر الأب |
|
assets[].asset_url | string | nullمطلوب في العنصر الأب | — |
assets[].asset_urlanyOf 1 | stringمطلوب في العنصر الأب | — |
assets[].asset_urlanyOf 2 | nullمطلوب في العنصر الأب | — |
assets[].preview_url | string | nullاختياري / عنصر | URL قراءة مؤقت مفوّض من مساحة العمل. حدّثه بقراءة/عرض Asset بعد preview_expires_at؛ واحتفظ بـ asset_url هويةً مخزّنة للوسائط. — |
assets[].preview_urlanyOf 1 | stringاختياري / عنصر |
|
assets[].preview_urlanyOf 2 | nullاختياري / عنصر | — |
assets[].preview_expires_at | string | nullاختياري / عنصر | — |
assets[].preview_expires_atanyOf 1 | stringاختياري / عنصر |
|
assets[].preview_expires_atanyOf 2 | nullاختياري / عنصر | — |
assets[].title | string | nullمطلوب في العنصر الأب | — |
assets[].titleanyOf 1 | stringمطلوب في العنصر الأب | — |
assets[].titleanyOf 2 | nullمطلوب في العنصر الأب | — |
assets[].description | string | nullمطلوب في العنصر الأب | — |
assets[].descriptionanyOf 1 | stringمطلوب في العنصر الأب | — |
assets[].descriptionanyOf 2 | nullمطلوب في العنصر الأب | — |
assets[].tags | array | nullمطلوب في العنصر الأب | — |
assets[].tagsanyOf 1 | arrayمطلوب في العنصر الأب | — |
assets[].tags[]anyOf 1 | stringاختياري / عنصر | — |
assets[].tagsanyOf 2 | nullمطلوب في العنصر الأب | — |
assets[].metadata | object | nullمطلوب في العنصر الأب | — |
assets[].metadataanyOf 1 | objectمطلوب في العنصر الأب |
|
assets[].metadata.*anyOf 1 | any JSON valueاختياري / عنصر | — |
assets[].metadataanyOf 2 | nullمطلوب في العنصر الأب | — |
assets[].source | string | nullاختياري / عنصر | — |
assets[].sourceanyOf 1 | stringاختياري / عنصر | — |
assets[].sourceanyOf 2 | nullاختياري / عنصر | — |
assets[].source_metadata | object | nullاختياري / عنصر | — |
assets[].source_metadataanyOf 1 | objectاختياري / عنصر |
|
assets[].source_metadata.*anyOf 1 | any JSON valueاختياري / عنصر | — |
assets[].source_metadataanyOf 2 | nullاختياري / عنصر | — |
assets[].created_at | stringمطلوب في العنصر الأب | — |
assets[].version | integerاختياري / عنصر |
|
total | integerمطلوب في العنصر الأب |
|
مخطط 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
}مثال لاستدعاء أداة
تستخدم الأمثلة قيماً خيالية مفحوصة بالمخططات. استبدل المعرّفات بالمفوّض لك، والوسائط بأصول جاهزة، والتواريخ بوقت نشر مؤكد. افحص أهلية الحساب قبل الكتابة. لا تُرسل الصفحة طلبات API.
{
"name": "sosoapi_query_assets",
"arguments": {}
}structuredContent
{
"assets": [],
"total": 0
}