Magisterium AI

Навички

Magisterium AI надає такі навички через протокол A2A. Вкажіть навичку для використання через metadata.skillId у повідомленні. Якщо skillId опущено, за замовчуванням використовується catholic_qa.

НавичкаIDОпис
Католицький Q&Acatholic_qaПовноцінний Q&A з цитатами з 29 000+ документів Магістеріуму, Писання та Отців Церкви.
Пошук по документахdocument_searchСемантичний пошук по документах Магістеріуму, енцикліках, розділах катехизису та канонічному праву.
Отримання документаdocument_fetchОтримання повного тексту та метаданих конкретного документа за його ID.
Літургійні читанняliturgical_readingsОтримання католицьких читань Меси на будь-яку дату чи літургійну нагоду.
Святі дняsaints_of_the_dayОтримання святих, яких вшановують у заданий день, з Римського Мартирологу.
Пошук святогоsaint_lookupЗнайдіть святого, блаженного, преподобного або слугу Божого за іменем чи канонічним ID.
Пошук католицького духовенстваperson_lookupЗнайдіть представника католицького духовенства (єпископ, кардинал, архієпископ тощо) за іменем чи канонічним ID.
Пошук папиpope_lookupЗнайдіть папу за іменем чи канонічним ID.
Пошук дієцезіїdiocese_lookupЗнайдіть церковну юрисдикцію (дієцезія, архідієцезія, єпархія) з метаданими каталогу, головними статистичними даними та найновішими фінансовими показниками.
Часовий ряд статистики дієцезіїdiocese_statistics_lookupПовертає повний річний часовий ряд статистики для дієцезії — 19 показників, один рядок на рік.

Усі навички викликаються через JSON-RPC метод message/send.

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.

Вхідні дані: одна text-частина з запитанням.

Артефакт: 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

Отримайте посилання на документи, які відповідають семантичному запиту до бази знань Magisterium.

Вхідні дані: одна text-частина з запитом.

Артефакт: 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

Отримання повного тексту та метаданих документа за його ID. Ця навичка приймає data-частину замість text-частини:

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

Якщо виклик надсилає text-частину, обробник за замовчуванням розглядає її як ID документа.

Артефакт: name: "document" з двома частинами:

  • text-частина, що містить тіло документа.
  • data-частина з { id, title, author, ref }.

Якщо документ не знайдено, артефакт містить одну text-частину зі значенням "Document not found.".

liturgical_readings

Отримання католицьких читань Меси на задану дату. Приймає запит дати природною мовою — наприклад, "today", "next Sunday" або "Easter Sunday 2026".

Вхідні дані: одна text-частина із запитом дати.

Артефакт: name: "mass_readings" з однією text-частиною, що містить відформатовані читання. Якщо на запитувану дату читань немає, частина містить "No mass readings found.".

saints_of_the_day

Дізнайтеся, яких святих вшановують у заданий день, згідно з Римським Мартирологом.

Вхідні дані: data-частина з абсолютною датою, або text-частина, що трактується як запит дати:

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

Артефакт: name: "martyrology" з однією text-частиною, що містить відформатований запис мартирологу. Відсутні дати повертають "No martyrology data found.".


П'ять навичок нижче — це пошук у каталогах. Кожна приймає запит природною мовою query (як text-частину або як поле data.query) плюс необов'язковий канонічний ID, і повертає структурований профіль в одній data-частині. Якщо не вказано ні query, ні канонічний ID, запит відхиляється з помилкою 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"). Звичайна text-частина приймається як 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 (канонічний первинний ключ). Звичайна text-частина приймається як 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"). Звичайна text-частина приймається як 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"). Звичайна text-частина приймається як 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.