search_thesesبحث عام بالأطروحات
البحث المباشر عن الأطروحات بالعنوان والكلمات المفتاحية، مع إمكانية التصفية بالدرجة (ماجستير/دكتوراه) ورقم التصنيف الأكاديمي.
params: { query: string, degree?: 'ماجستير' | 'دكتوراه', categoryId?: number, page?: number, limit?: number }
get_thesis_detailsبيانات الأطروحة الكاملة
استخراج بطاقة البيانات المتكاملة لرسالة معينة عبر كودها الأكاديمي، متضمنة العنوان، التخصص، عينة الفهرس، والملفات.
params: { code: string } // مثال: "A105"
search_index_paragraphsبحث عميق في الفهارس
البحث المتقدم داخل عناوين الأبواب والفصول والمباحث الدقيقة لجميع الرسائل للوصول إلى الجزئية العلمية المطلوبة.
params: { query: string, categoryId?: number, degree?: string, limit?: number }
get_thesis_outlineفهرس المحتوى الكامل
جلب الشجرة الهيكلية الكاملة لمحتويات أطروحة معينة من البداية للنهاية بترتيب الأبواب والفصول المتسلسل.
params: { code: string }
list_categoriesدليل التخصصات
استعراض تصنيفات الكليات والأقسام الأكاديمية المفهرسة في رسائل مع أكوادها وأسمائها الرسمية.
params: { query?: string, page?: number, limit?: number }
get_thesis_download_infoروابط المعاينة والتحميل
جلب الروابط الرسمية المؤكدة لمعاينة أو تحميل ملفات الرسالة المتاحة بصيغة PDF أو Word مع أحجامها بالكيلوبايت.
params: { code: string }
searchتوافق البحث العميق
أداة البحث القياسية التي تتطلبها مسارات deep research في ChatGPT. تعيد عناصر يمكن استرجاعها بـ fetch. مطابقة العنوان أو الفهرس ليست مطابقة للمتن.
params: { query: string }
fetchتوافق الاسترجاع
استرجاع محتوى عنصر ظهر في نتائج search. يحمل الحقل metadata.availability قيمة index_only حين يكون المتاح فهرسًا لا متنًا، فلا يُقدَّم أحدهما مكان الآخر.
params: { id: string }
read_pagesقراءة الصفحات
قراءة نص صفحات محددة من رسالة بصيغة PDF ذات طبقة نصية. الحقل printed_page هو الرقم المطبوع على الصفحة، ويعود null إذا تعذّرت قراءته — ولا يُستبدل برقم الصفحة الفيزيائي أبدًا.
params: { fileId: number, from: number, to: number, maxChars?: number }
read_sectionقراءة مبحث
قراءة مبحث كامل من رسالة أصلها Word عبر مسار عنوانه. ملفات Word لا تحمل ترقيم صفحات مخزَّنًا، فالاستشهاد يكون بمسار المبحث لا برقم صفحة.
params: { fileId: number, sectionRef: string, includeDescendants?: boolean, maxChars?: number }
get_availabilityحدود الإتاحة
بيان ما إذا كانت الرسالة متاحة بنصها الكامل أم بفهرسها فقط، وعدد صفحاتها المتاحة. تُستدعى قبل الجزم بأن رسالة يمكن قراءتها أو لا.
params: { code: string }
get_outline_treeشجرة الفهرس
الفهرس بصيغة شجرة متدرجة (باب ← فصل ← مبحث ← مطلب) بمعرّف ثابت لكل عقدة. الصفحات غير المؤكدة تعود null ولا تُملأ بالاستنتاج.
params: { code: string }
list_filesنسخ الرسالة
كل النسخ المخزَّنة للرسالة بصيغها وأحجامها وبصماتها وطبقة استخراجها وحالة إتاحتها. منها يؤخذ fileId لبقية الأدوات.
params: { code: string }
prepare_downloadتجهيز النقل
التحقق من ملف مخزَّن وإصدار رابط نقل محدود الصلاحية. الحالة ready تعني أن الخادم فحص البايتات وجهّز النقل — لا أن أي عميل استلم الملف. يُستشهد بـ canonical_url لا برابط التنزيل المؤقت.
params: { fileId: number }
prepare_library_importتجهيز الحفظ في المكتبة
فتح دفعة لحفظ ملفات مختارة في مكتبة المستخدم. تُجهّز الدفعة فقط؛ الرفع الفعلي تنفذه واجهة المكوّن، ولا يُحتسب أي عنصر محفوظًا حتى يؤكد العميل بقاءه.
params: { fileIds: number[], idempotencyKey: string }
get_import_statusمتابعة الدفعة
حالة كل عنصر في دفعة حفظ. الحالة saved وحدها مؤكدة؛ أما uploaded_unverified فتعني أن معرّف رفع عاد دون تأكيد الحفظ، وتُعرض على أنها غير مؤكدة.
params: { batchId: string /* UUID */ }
verify_quoteالتحقق من اقتباس
مقارنة اقتباس بالنص المخزَّن، مع تمييز المطابقة الحرفية عن المطابقة بعد التطبيع العربي، وبيان موضع الاختلاف. تحقق نصي فقط: لا يُثبت صحة النسبة ولا الحكم العلمي.
params: { quote: string, thesisCode?: string, fileId?: number, sectionRef?: string, pageFrom?: number, pageTo?: number }
convert_to_docxتحويل إلى Word
تحويل رسالة أو نطاق صفحات منها إلى ملف Word قابل للتحرير بنص فعلي. الرسائل المصوّرة تعود unsupported — لا معالجة ضوئية في هذا الإصدار. تعيد معرّف مهمة.
params: { fileId: number, fromPage?: number, toPage?: number, includeFootnotes?: boolean }
get_processing_statusحالة التحويل
تقدم مهمة التحويل: الصفحات المنجزة، وما تعذّر تحويله، وتقرير الجودة. الحالة unsupported جواب نهائي لا خطأ يُعاد تجربته.
params: { jobId: string }
export_citationsتصدير التوثيق
تصدير سجلات التوثيق بصيغ RIS أو BibTeX أو CSV أو ملف روابط HTML. الحقول المجهولة تُعلَن ناقصة ولا تُخمَّن، والمواد الفهرسية تُوسم بوضوح.
params: { codes: string[], format: 'ris' | 'bibtex' | 'csv' | 'html', retrievedAt: string }
get_coverage_reportتقرير التغطية
بيان أين بحث النظام وما قرأه وما بقي فهرسًا فقط. يميّز «لم يُعثر على نتيجة» عن «لا توجد دراسة»، ولا يجزم بالثاني أبدًا.
params: { question: string, searchedCodes: string[], queriesRun: string[], pagesExhausted: boolean }