أداة MCP
قراءة مصدر بحث اجتماعي عام
sosoapi_research_evidence_retrieve-socialجلب عينة محدودة من الأدلة الاجتماعية العامة باستخدام URL و mutation_id؛ النص غير موثوق والتغطية جزئية. يتطلب agent:research.
اقرأ بصيغة Markdownالملفات التعريفية ووسائل النقل
الملفات التعريفية: full · وسائل النقل: stdio, http
# This operation requires a CLI build containing the updated Research contract.
# Use HTTP or hosted MCP if your CLI build does not include it.
# 此操作需要包含更新版 Research contract 的 CLI build。
# 如 CLI build 未包含此 contract,請使用 HTTP 或 hosted MCP。اختر core أو full للأدوات التي يراها عميلك؛ لا يغيّر ذلك أذوناته. يحتاج رفع الملفات المحلية stdio ولا يتاح بـ HTTP. اضبط SOSOAPI_OUTPUT_SCHEMAS=1 لمخططات المخرجات بالاكتشاف. النتائج منظّمة بهذا الإعداد أوبدونه.
الأذونات والآثار الجانبية
تساعد الشروح العملاء على وصف الأداة. يظل كل استدعاء يفحص مصادقة المستخدم ودوره ووصوله إلى المورد وتفويض الإمكانات.
{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
}- /research-api/evidence/retrieve-social: agent:research · إيصال اجتماعي محدود محفوظ بشكل دائم ومراجع أدلة دقيقة؛ تظل العينات الجزئية والعدادات المجهولة موضحة صراحة
حقول الإدخال
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب |
|
workspace_id | stringمطلوب في العنصر الأب |
|
mutation_id | stringمطلوب في العنصر الأب |
|
url | stringمطلوب في العنصر الأب |
|
مخطط JSON Schema الكامل
{
"type": "object",
"properties": {
"workspace_id": {
"type": "string",
"format": "uuid"
},
"mutation_id": {
"type": "string",
"format": "uuid"
},
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
}
},
"required": [
"workspace_id",
"mutation_id",
"url"
],
"additionalProperties": false
}مخرجات منظّمة
يصف المخطط structuredContent في نتيجة أداة ناجحة. تشمل استجابة MCP أيضاً content وقد تضبط isError عند الفشل. للنشر، اقرأ النتيجة النهائية بدلاً من اعتبار القبول أوالنص تأكيداً. تشرح عملية API المرتبطة الأذونات وقواعد المحاولة.
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب |
|
retrieval | objectمطلوب في العنصر الأب |
|
retrieval.id | stringمطلوب في العنصر الأب |
|
retrieval.workspace_id | stringمطلوب في العنصر الأب |
|
retrieval.mutation_id | stringمطلوب في العنصر الأب |
|
retrieval.kind | stringمطلوب في العنصر الأب |
|
retrieval.state | stringمطلوب في العنصر الأب |
|
retrieval.created_at | stringمطلوب في العنصر الأب |
|
retrieval.settled_at | string | nullمطلوب في العنصر الأب | — |
retrieval.settled_atanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.settled_atanyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.valid_until | stringمطلوب في العنصر الأب |
|
retrieval.result | object | nullمطلوب في العنصر الأب | — |
retrieval.resultanyOf 1 | objectمطلوب في العنصر الأب |
|
retrieval.result.sourceanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.platformanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.canonical_urlanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.fetched_atanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.expires_atanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.upstream_updated_atanyOf 1 | nullمطلوب في العنصر الأب | — |
retrieval.result.statusanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.profileanyOf 1 | object | nullمطلوب في العنصر الأب | — |
retrieval.result.profileanyOf 1 / anyOf 1 | objectمطلوب في العنصر الأب |
|
retrieval.result.profile.source_account_idanyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.profile.id_namespaceanyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.profile.usernameanyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.profile.nameanyOf 1 / anyOf 1 | string | nullمطلوب في العنصر الأب | — |
retrieval.result.profile.nameanyOf 1 / anyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.profile.nameanyOf 1 / anyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.profile.followersanyOf 1 / anyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.profile.followersanyOf 1 / anyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.profile.followersanyOf 1 / anyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.profileanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.postsanyOf 1 | arrayمطلوب في العنصر الأب |
|
retrieval.result.posts[]anyOf 1 | objectاختياري / عنصر |
|
retrieval.result.posts[].source_post_idanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].id_namespaceanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].shortcodeanyOf 1 | string | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].shortcodeanyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].shortcodeanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].source_account_idanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].authoranyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].canonical_urlanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].textanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].published_atanyOf 1 | string | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].published_atanyOf 1 / anyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].published_atanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].media_kindanyOf 1 | stringمطلوب في العنصر الأب |
|
retrieval.result.posts[].metricsanyOf 1 | objectمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.likesanyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.likesanyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.likesanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.commentsanyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.commentsanyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.commentsanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.reactionsanyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.reactionsanyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.reactionsanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.sharesanyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.sharesanyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.sharesanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.viewsanyOf 1 | integer | nullمطلوب في العنصر الأب | — |
retrieval.result.posts[].metrics.viewsanyOf 1 / anyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.posts[].metrics.viewsanyOf 1 / anyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.result.coverageanyOf 1 | objectمطلوب في العنصر الأب |
|
retrieval.result.coverage.completeanyOf 1 | booleanمطلوب في العنصر الأب |
|
retrieval.result.coverage.reasonsanyOf 1 | arrayمطلوب في العنصر الأب |
|
retrieval.result.coverage.reasons[]anyOf 1 | stringاختياري / عنصر |
|
retrieval.result.coverage.omitted_rowsanyOf 1 | integerمطلوب في العنصر الأب |
|
retrieval.result.coverage.next_cursoranyOf 1 | nullمطلوب في العنصر الأب | — |
retrieval.resultanyOf 2 | nullمطلوب في العنصر الأب | — |
retrieval.evidence | arrayمطلوب في العنصر الأب |
|
retrieval.evidence[] | objectاختياري / عنصر |
|
retrieval.evidence[].evidence_id | stringمطلوب في العنصر الأب |
|
retrieval.evidence[].revision | integerمطلوب في العنصر الأب |
|
مخطط JSON Schema الكامل
{
"type": "object",
"properties": {
"retrieval": {
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"workspace_id": {
"type": "string",
"format": "uuid"
},
"mutation_id": {
"type": "string",
"format": "uuid"
},
"kind": {
"type": "string",
"const": "public_social"
},
"state": {
"type": "string",
"enum": [
"pending",
"running",
"completed",
"cancelled",
"unconfirmed",
"expired"
]
},
"created_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"settled_at": {
"anyOf": [
{
"type": "string",
"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)))$",
"format": "date-time"
},
{
"type": "null"
}
]
},
"valid_until": {
"type": "string",
"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)))$",
"format": "date-time"
},
"result": {
"anyOf": [
{
"type": "object",
"properties": {
"source": {
"type": "string",
"enum": [
"facebook_public_web",
"instagram_public_web",
"threads_public_web"
]
},
"platform": {
"type": "string",
"enum": [
"facebook",
"instagram",
"threads"
]
},
"canonical_url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"fetched_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"expires_at": {
"type": "string",
"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)))$",
"format": "date-time"
},
"upstream_updated_at": {
"type": "null"
},
"status": {
"type": "string",
"enum": [
"available",
"partial",
"unavailable"
]
},
"profile": {
"anyOf": [
{
"type": "object",
"properties": {
"source_account_id": {
"type": "string",
"pattern": "^[0-9]{1,30}$"
},
"id_namespace": {
"type": "string",
"const": "public_web"
},
"username": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"name": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 200
},
{
"type": "null"
}
]
},
"followers": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"source_account_id",
"id_namespace",
"username",
"name",
"followers"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"posts": {
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"source_post_id": {
"type": "string",
"pattern": "^[0-9]{1,30}$"
},
"id_namespace": {
"type": "string",
"const": "public_web"
},
"shortcode": {
"anyOf": [
{
"type": "string",
"minLength": 1,
"maxLength": 64
},
{
"type": "null"
}
]
},
"source_account_id": {
"type": "string",
"pattern": "^[0-9]{1,30}$"
},
"author": {
"type": "string",
"minLength": 1,
"maxLength": 50
},
"canonical_url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"text": {
"type": "string",
"maxLength": 30000
},
"published_at": {
"anyOf": [
{
"type": "string",
"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)))$",
"format": "date-time"
},
{
"type": "null"
}
]
},
"media_kind": {
"type": "string",
"enum": [
"text",
"image",
"video",
"carousel",
"unknown"
]
},
"metrics": {
"type": "object",
"properties": {
"likes": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"comments": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"reactions": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"shares": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"views": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"likes",
"comments",
"reactions",
"shares",
"views"
],
"additionalProperties": false
}
},
"required": [
"source_post_id",
"id_namespace",
"shortcode",
"source_account_id",
"author",
"canonical_url",
"text",
"published_at",
"media_kind",
"metrics"
],
"additionalProperties": false
}
},
"coverage": {
"type": "object",
"properties": {
"complete": {
"type": "boolean",
"const": false
},
"reasons": {
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"enum": [
"initial_page_only",
"public_web_ids",
"metrics_unavailable",
"profile_only",
"no_attributable_posts",
"foreign_or_malformed_rows",
"parser_limit",
"unsupported_payload",
"blocked",
"rate_limited",
"upstream_http_error",
"redirect_rejected",
"unsupported_content_type",
"response_too_large",
"timeout",
"aborted",
"network_error",
"inconsistent_identity",
"research_limit",
"source_removed"
]
}
},
"omitted_rows": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"next_cursor": {
"type": "null"
}
},
"required": [
"complete",
"reasons",
"omitted_rows",
"next_cursor"
],
"additionalProperties": false
}
},
"required": [
"source",
"platform",
"canonical_url",
"fetched_at",
"expires_at",
"upstream_updated_at",
"status",
"profile",
"posts",
"coverage"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"evidence": {
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"evidence_id": {
"type": "string",
"format": "uuid"
},
"revision": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"evidence_id",
"revision"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"workspace_id",
"mutation_id",
"kind",
"state",
"created_at",
"settled_at",
"valid_until",
"result",
"evidence"
],
"additionalProperties": false
}
},
"required": [
"retrieval"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}مثال لاستدعاء أداة
تستخدم الأمثلة قيماً خيالية مفحوصة بالمخططات. استبدل المعرّفات بالمفوّض لك، والوسائط بأصول جاهزة، والتواريخ بوقت نشر مؤكد. افحص أهلية الحساب قبل الكتابة. لا تُرسل الصفحة طلبات API.
{
"name": "sosoapi_research_evidence_retrieve-social",
"arguments": {
"workspace_id": "11111111-1111-4111-8111-111111111111",
"mutation_id": "40000000-0000-4000-8000-000000000005",
"url": "https://www.instagram.com/fictional_example/"
}
}structuredContent
{
"retrieval": {
"id": "30000000-0000-4000-8000-000000000007",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"mutation_id": "40000000-0000-4000-8000-000000000005",
"kind": "public_social",
"state": "completed",
"created_at": "2099-01-15T09:00:00Z",
"settled_at": "2099-01-15T09:00:01Z",
"valid_until": "2099-01-16T09:00:00Z",
"evidence": [],
"result": {
"source": "instagram_public_web",
"platform": "instagram",
"canonical_url": "https://www.instagram.com/fictional_example/",
"fetched_at": "2099-01-15T09:00:00Z",
"expires_at": "2099-01-16T09:00:00Z",
"upstream_updated_at": null,
"status": "unavailable",
"profile": null,
"posts": [],
"coverage": {
"complete": false,
"reasons": [
"blocked"
],
"omitted_rows": 0,
"next_cursor": null
}
}
}
}