Magisterium AI

المهارات

يعرض الماجستير المهارات التالية عبر بروتوكول A2A. حدد المهارة التي تريد استخدامها عبر metadata.skillId في الرسالة. إذا تم حذف skillId، فسيتم استخدام catholic_qa كافتراضي.

المهارةالمعرفالوصف
أسئلة وأجوبة كاثوليكيةcatholic_qaأسئلة وأجوبة كاملة مع اقتباسات من أكثر من 29,000 وثيقة من وثائق السلطة التعليمية، والكتاب المقدس، وآباء الكنيسة.
البحث في الوثائقdocument_searchبحث دلالي عبر وثائق السلطة التعليمية والمناشير البابوية وأقسام التعليم المسيحي والقانون الكنسي.
استرداد الوثائقdocument_fetchاسترجع النص الكامل وبيانات التعريف لوثيقة معينة من خلال معرفها.
القراءات الليتورجيةliturgical_readingsاحصل على قراءات القداس الكاثوليكي لأي تاريخ أو مناسبة ليتورجية.
قديسو اليومsaints_of_the_dayاحصل على القديسين الذين يتم إحياء ذكراهم في تاريخ معين من الشهادات الرومانية.
البحث عن قديسsaint_lookupابحث عن قديس أو طوباوي أو مكرم أو خادم لله بالاسم أو بالمعرف الكنسي.
البحث عن رجل دين كاثوليكيperson_lookupابحث عن شخصية من رجال الدين الكاثوليك (أسقف، كاردينال، رئيس أساقفة، إلخ) بالاسم أو بالمعرف الكنسي.
البحث عن باباpope_lookupابحث عن بابا بالاسم أو بالمعرف الكنسي.
البحث عن أبرشيةdiocese_lookupابحث عن ولاية كنسية (أبرشية، رئاسة أساقفة، إيبارشية) مع بيانات تعريف الدليل، والإحصائيات الرئيسية، وأحدث البيانات المالية.
السلسلة الزمنية لإحصائيات الأبرشيةdiocese_statistics_lookupيُرجع السلسلة الزمنية السنوية الكاملة للإحصائيات لأبرشية ما — 19 مقياساً، صف واحد لكل سنة.

يتم استدعاء جميع المهارات عبر طريقة message/send في JSON-RPC.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "message/send",
  "params": {
    "message": {
      "role": "user",
      "messageId": "unique-id",
      "kind": "message",
      "parts": [{ "kind": "text", "text": "your query here" }],
      "metadata": { "skillId": "document_search" }
    }
  }
}

تعود الاستجابات دائماً كمهمة Task (kind: "task") مع status.state: "completed" وواحد أو أكثر من artifacts. يحتوي كل عنصر على artifactId فريد، واسم name خاص بالمهارة، وواحد أو أكثر من parts (text أو data أو file).


catholic_qa

اطرح سؤالاً بلغة طبيعية واحصل على إجابة مستشهد بها وطويلة. هذه هي المهارة الأكثر قدرة (والأكثر استهلاكاً للموارد) — فهي تعمل مقابل نفس النموذج الذي يشغل magisterium.com.

الإدخال: جزء نصي واحد يحتوي على السؤال.

الأثر: name: "catholic_qa_response" يحتوي على:

  • جزء text مع الإجابة الكاملة.
  • جزء data مع citations (عند استخدام أي مصادر).
  • جزء data مع related_questions (عندما يُرجع النموذج اقتراحات).
json
{
  "artifactId": "art_...",
  "name": "catholic_qa_response",
  "parts": [
    { "kind": "text", "text": "The Catholic Church teaches..." },
    { "kind": "data", "data": { "citations": [ /* ... */ ] } },
    { "kind": "data", "data": { "related_questions": [ /* ... */ ] } }
  ]
}

يستخدم catholic_qa متغيراً أكثر صرامة لحد المعدل مقارنة بالمهارات الأخرى. راجع مرجع API ← حدود المعدل.

document_search

استرداد مراجع الوثائق التي تطابق استعلاماً دلالياً مقابل قاعدة معرفة الماجستير.

الإدخال: جزء نصي واحد يحتوي على الاستعلام.

الأثر: name: "search_results" مع جزء data واحد:

json
{
  "artifactId": "art_...",
  "name": "search_results",
  "parts": [
    {
      "kind": "data",
      "data": {
        "results": [
          { "id": "12345", "url": "https://...", "title": "Lumen Gentium" }
        ]
      }
    }
  ]
}

استخدم الحقل id من النتيجة لاستدعاء document_fetch للحصول على النص الكامل.

document_fetch

استرجع النص الكامل وبيانات التعريف لوثيقة بواسطة معرفها. تقبل هذه المهارة جزء data بدلاً من جزء نصي:

json
{
  "parts": [{ "kind": "data", "data": { "id": "12345" } }]
}

إذا أرسل المستدعي جزءاً نصياً، فإن المعالج يعود إلى التعامل معه كمعرف وثيقة.

الأثر: name: "document" مع جزأين:

  • جزء text يحتوي على نص الوثيقة.
  • جزء data مع { id, title, author, ref }.

إذا لم يتم العثور على الوثيقة، يحتوي الأثر على جزء text واحد يقرأ "Document not found.".

liturgical_readings

احصل على قراءات القداس الكاثوليكي لتاريخ معين. يقبل استعلام تاريخ بلغة طبيعية — مثل "today" أو "next Sunday" أو "Easter Sunday 2026".

الإدخال: جزء نصي واحد مع استعلام التاريخ.

الأثر: name: "mass_readings" مع جزء text واحد يحتوي على القراءات المنسقة. إذا لم تكن هناك قراءات متاحة للتاريخ المطلوب، يقرأ الجزء "No mass readings found.".

saints_of_the_day

ابحث عن القديسين الذين يتم إحياء ذكراهم في تاريخ معين من الشهادات الرومانية.

الإدخال: جزء data مع تاريخ مطلق، أو جزء نصي يُعامل كاستعلام تاريخ:

json
{
  "parts": [{ "kind": "data", "data": { "date": "2026-03-19" } }]
}

الأثر: name: "martyrology" مع جزء text واحد يحتوي على إدخال الشهادات المنسق. تُرجع التواريخ المفقودة "No martyrology data found.".


المهارات الخمس أدناه هي عمليات بحث في الدليل. تقبل كل واحدة منها استعلام query بلغة طبيعية (كجزء نصي أو حقل data.query) بالإضافة إلى معرف كنسي اختياري، وتُرجع ملفاً تعريفياً منظماً داخل جزء data واحد. إذا لم يُقدَّم لا query ولا معرف كنسي، يُرفض الطلب بخطأ INVALID_PARAMS (-32602).

عندما لا يمكن حل الاستعلام، يحتوي الأثر على جزء data بالشكل { "error": "not_found", "query": "...", "hint"?: "..." } بدلاً من ملف تعريفي. تُكمَل المهمة نفسها بنجاح — not_found هو نتيجة بحث طبيعية، وليس خطأ في البروتوكول.

saint_lookup

ابحث عن قديس أو طوباوي أو مكرم أو خادم لله من دليل cd_saints (~12,500 شخصية).

الإدخال: data.query (مثل "Therese of Lisieux") أو data.saint_id (المفتاح الأساسي الكنسي، مثل "jerome"). يُقبل جزء نصي مجرد كـ query.

json
{
  "parts": [{ "kind": "data", "data": { "query": "Catherine of Siena" } }]
}

الأثر: name: "saint_profile" مع جزء data واحد يحتوي على الملف التعريفي الكنسي — saint_id، primary_name، canonical_status، vocation، image_url، learn_more_url، الحياة والوفاة، يوم العيد، قضية التطويب، الحماية، الأيقونوغرافيا، السيرة الذاتية، و(إذا تم العثور على عدة مرشحين) مصفوفة alternates.

person_lookup

ابحث عن شخصية من رجال الدين الكاثوليك (أسقف، كاردينال، رئيس أساقفة، إلخ) من دليلَي cd_persons (الأحياء، ~3,500) و cd_persons_historical (~2,200). يتم عرض الباباوات عبر مهارة pope_lookup المنفصلة.

الإدخال: data.query (مثل "Cardinal Tagle") أو data.person_id (المفتاح الأساسي الكنسي). يُقبل جزء نصي مجرد كـ query.

json
{
  "parts": [{ "kind": "data", "data": { "query": "Cardinal Tagle" } }]
}

الأثر: name: "person_profile" مع جزء data واحد يحتوي على الملف التعريفي الكنسي — person_id، source_table، primary_name، current_position، image_url، coat_of_arms_url، تواريخ الرسامة والتكريس، الترقية إلى منصب الكاردينال، السلسلة الأسقفية، التعليم، الشعار، وأي alternates.

إذا انحل الاستعلام إلى بابا فقط، فإن الاستجابة تكون { "error": "not_found", "hint": "Top match looks like a pope; try get_pope." }.

pope_lookup

ابحث عن بابا من دليل cd_popes (267 شخصية).

الإدخال: data.query (مثل "Pope Francis"، "John Paul II") أو data.pope_id (المفتاح الأساسي الكنسي، مثل "benedict-xvi"). يُقبل جزء نصي مجرد كـ query.

json
{
  "parts": [{ "kind": "data", "data": { "query": "John Paul II" } }]
}

الأثر: name: "pope_profile" مع جزء data واحد يحتوي على الملف التعريفي البابوي الكنسي — pope_id، primary_name، papal_name، ordinal، pope_title، image_url، coat_of_arms_url، birth_name، origin، pontificate، حالة التطويب والتقديس، وأي alternates.

إذا انحل الاستعلام إلى عضو من رجال الدين غير بابا فقط، فإن الاستجابة تكون { "error": "not_found", "hint": "Top match looks like a non-pope clergy member; try get_person." }.

diocese_lookup

ابحث عن ولاية كنسية (أبرشية، رئاسة أساقفة، إيبارشية، إلخ) من دليل الأبرشيات (~3,200 ولاية حول العالم).

الإدخال: data.query (مثل "Archdiocese of Manila") أو data.source_code (المفتاح الأساسي الكنسي، مثل "dmaml"). يُقبل جزء نصي مجرد كـ query.

json
{
  "parts": [{ "kind": "data", "data": { "query": "Archdiocese of Manila" } }]
}

الأثر: name: "diocese_profile" مع جزء data واحد يحتوي على بيانات تعريف الدليل (source_code، primary_name، jurisdiction_type، rite، country، region_primary، state، city، metropolitan، depends_on، province، cathedral، patron_saint، area، erected، elevated، official_website، image_url، current_bishop) بالإضافة إلى:

  • recent_statistics — حتى 5 سنوات من الأرقام الرئيسية (الكاثوليك، إجمالي السكان، نسبة الكاثوليك، إجمالي الكهنة، الرعايا، المعموديات، طلاب اللاهوت).
  • latest_financials — المقاييس الرئيسية لأحدث سنة مالية (إجمالي الإيرادات، إجمالي النفقات، صافي الأصول، إجمالي الأصول، الفائض/العجز) عند توفرها، مع العملة.
  • alternates — عند تطابق عدة مرشحين.

لتحليل الاتجاهات على مدى سنوات متعددة، استخدم بدلاً من ذلك diocese_statistics_lookup.

diocese_statistics_lookup

يُرجع السلسلة الزمنية السنوية الكاملة للإحصائيات لأبرشية ما — جميع المقاييس الـ 19 المتعقَّبة في diocese_statistics.

الإدخال: data.query أو data.source_code (واحد منهما مطلوب)، بالإضافة إلى حدود ضمنية اختيارية:

json
{
  "parts": [{
    "kind": "data",
    "data": {
      "source_code": "dmaml",
      "start_year": 2010,
      "end_year": 2024
    }
  }]
}

الأثر: name: "diocese_statistics_time_series" مع جزء data واحد يحتوي على source_code، diocese_name، year_range: { start, end }، ومصفوفة rows. يحمل كل صف 19 مقياساً لسنة واحدة: catholics، total_population، percent_catholic، diocesan_priests، religious_priests، total_priests، catholics_per_priest، permanent_deacons، male_religious، female_religious، parishes، area_km2، churches_or_stations، diocesan_priests_ordained، religious_priests_ordained، seminarians، educational_institutes، charitable_institutes، baptisms.