Magisterium AI

Yetenekler

Magisterium AI, A2A protokolü üzerinden aşağıdaki yetenekleri sunar. Kullanılacak yeteneği mesajdaki metadata.skillId aracılığıyla belirtin. skillId atlanırsa varsayılan olarak catholic_qa kullanılır.

YetenekIDAçıklama
Katolik S&Ccatholic_qa29.000'den fazla Magisterium belgesi, Kutsal Yazılar ve Kilise Babalarından alıntılarla tam S&C.
Belge Aramasıdocument_searchMagisterium belgeleri, ansiklikler, ilmihal bölümleri ve kanon hukuku genelinde anlamsal arama.
Belge Getirmedocument_fetchBelirli bir belgenin tam metnini ve meta verilerini ID'sine göre getir.
Liturjik Okumalarliturgical_readingsHerhangi bir tarih veya liturjik fırsat için Katolik Ayini okumalarını edinin.
Günün Azizlerisaints_of_the_dayRoma Martirolojisi'nden belirli bir tarihte anılan azizleri edinin.
Aziz Aramasaint_lookupBir azizi, mübareki, muhteremi veya Tanrı'nın hizmetkârını ad veya kanonik ID ile arayın.
Katolik Din Adamı Aramaperson_lookupBir Katolik din adamını (piskopos, kardinal, başpiskopos vb.) ad veya kanonik ID ile arayın.
Papa Aramapope_lookupBir papayı ad veya kanonik ID ile arayın.
Piskoposluk Aramadiocese_lookupBir kilise yargı bölgesini (piskoposluk, başpiskoposluk, eparşi) dizin meta verileri, başlık istatistikleri ve son mali verileri ile arayın.
Piskoposluk İstatistikleri Zaman Serisidiocese_statistics_lookupBir piskoposluk için tam yıllık istatistik zaman serisini döndürür — 19 metrik, yıl başına bir satır.

Tüm yetenekler message/send JSON-RPC yöntemi aracılığıyla çağrılır.

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" }
    }
  }
}

Yanıtlar her zaman status.state: "completed" olan bir Task (kind: "task") olarak ve bir veya daha fazla artifacts ile geri gelir. Her artifact, benzersiz bir artifactId, yeteneğe özgü bir name ve bir ya da daha fazla parts (text, data veya file) içerir.


catholic_qa

Doğal dilde bir soru sorun ve alıntılı, uzun bir yanıt alın. Bu, en yetenekli (ve en kaynak-yoğun) yetenektir — magisterium.com'u çalıştıran aynı model üzerinde çalışır.

Girdi: soruyu içeren tek bir text part.

Artifact: name: "catholic_qa_response", şunları içerir:

  • Tam yanıtı içeren bir text part.
  • citations içeren bir data part (herhangi bir kaynak kullanıldığında).
  • related_questions içeren bir data part (model öneri döndürdüğünde).
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, diğer yeteneklere göre daha sıkı bir hız limiti varyantı kullanır. API Referansı → Hız Limitleri bölümüne bakın.

document_search

Magisterium bilgi tabanına karşı bir anlamsal sorguya uyan belge referanslarını getirin.

Girdi: sorguyu içeren tek bir text part.

Artifact: name: "search_results", tek bir data part ile:

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

Tam metni almak için sonuçtaki id alanını kullanarak document_fetch'i çağırın.

document_fetch

Bir belgenin tam metnini ve meta verilerini ID'sine göre getirin. Bu yetenek text part yerine bir data part kabul eder:

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

Çağıran bir text part gönderirse, işleyici bunu belge ID'si olarak ele almaya geri döner.

Artifact: name: "document", iki part ile:

  • Belge gövdesini içeren bir text part.
  • { id, title, author, ref } içeren bir data part.

Belge bulunamazsa, artifact "Document not found." içeriğine sahip tek bir text part içerir.

liturgical_readings

Belirli bir tarih için Katolik Ayini okumalarını edinin. Doğal dil tarih sorgusunu kabul eder — ör. "today", "next Sunday" veya "Easter Sunday 2026".

Girdi: tarih sorgusunu içeren tek bir text part.

Artifact: name: "mass_readings", biçimlendirilmiş okumaları içeren tek bir text part ile. İstenen tarih için okuma yoksa, part "No mass readings found." içeriğine sahip olur.

saints_of_the_day

Roma Martirolojisi'nden belirli bir tarihte anılan azizleri arayın.

Girdi: mutlak tarihe sahip bir data part veya tarih sorgusu olarak ele alınan bir text part:

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

Artifact: name: "martyrology", biçimlendirilmiş martiroloji kaydını içeren tek bir text part ile. Eksik tarihler "No martyrology data found." döndürür.


Aşağıdaki beş yetenek dizin aramalarıdır. Her biri doğal dilde bir query (text part veya data.query alanı olarak) artı isteğe bağlı bir kanonik ID kabul eder ve tek bir data part içinde yapılandırılmış bir profil döndürür. Ne query ne de kanonik ID sağlanmazsa, istek INVALID_PARAMS (-32602) ile reddedilir.

Sorgu çözümlenemediğinde, artifact bir profil yerine { "error": "not_found", "query": "...", "hint"?: "..." } biçiminde bir data part içerir. Görevin kendisi yine başarıyla tamamlanır — not_found bir protokol hatası değil, normal bir arama sonucudur.

saint_lookup

cd_saints dizininden (~12.500 kişi) bir azizi, mübareki, muhteremi veya Tanrı'nın hizmetkârını arayın.

Girdi: data.query (ör. "Therese of Lisieux") veya data.saint_id (kanonik birincil anahtar, ör. "jerome"). Çıplak bir text part query olarak kabul edilir.

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

Artifact: name: "saint_profile", kanonik profili içeren tek bir data part ile — saint_id, primary_name, canonical_status, vocation, image_url, learn_more_url, yaşam ve ölüm bilgileri, yortu günü, kanonizasyon davası, hamilik, ikonografi, biyografi ve (birden fazla aday bulunduğunda) bir alternates dizisi.

person_lookup

Bir Katolik din adamını (piskopos, kardinal, başpiskopos vb.) cd_persons (yaşayan, ~3.500) ve cd_persons_historical (~2.200) dizinlerinden arayın. Papalar ayrı pope_lookup yeteneği aracılığıyla sunulur.

Girdi: data.query (ör. "Cardinal Tagle") veya data.person_id (kanonik birincil anahtar). Çıplak bir text part query olarak kabul edilir.

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

Artifact: name: "person_profile", kanonik profili içeren tek bir data part ile — person_id, source_table, primary_name, current_position, image_url, coat_of_arms_url, kutsama ve takdis tarihleri, kardinalliğe yükseltilme, episkopal silsile, eğitim, motto ve varsa alternates.

Sorgu yalnızca bir papaya çözümlenirse, yanıt { "error": "not_found", "hint": "Top match looks like a pope; try get_pope." } olur.

pope_lookup

cd_popes dizininden (267 kişi) bir papayı arayın.

Girdi: data.query (ör. "Pope Francis", "John Paul II") veya data.pope_id (kanonik birincil anahtar, ör. "benedict-xvi"). Çıplak bir text part query olarak kabul edilir.

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

Artifact: name: "pope_profile", kanonik papalık profilini içeren tek bir data part ile — pope_id, primary_name, papal_name, ordinal, pope_title, image_url, coat_of_arms_url, birth_name, origin, pontificate, kutsanma ve kanonizasyon durumu ve varsa alternates.

Sorgu yalnızca papa olmayan bir din adamına çözümlenirse, yanıt { "error": "not_found", "hint": "Top match looks like a non-pope clergy member; try get_person." } olur.

diocese_lookup

Bir kilise yargı bölgesini (piskoposluk, başpiskoposluk, eparşi vb.) piskoposluk dizininden (dünya çapında ~3.200 yargı bölgesi) arayın.

Girdi: data.query (ör. "Archdiocese of Manila") veya data.source_code (kanonik birincil anahtar, ör. "dmaml"). Çıplak bir text part query olarak kabul edilir.

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

Artifact: name: "diocese_profile", dizin meta verilerini (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) içeren tek bir data part ile, ek olarak:

  • recent_statistics — başlık verilerinin 5 yıla kadar olan kısmı (katolikler, toplam nüfus, Katolik yüzdesi, toplam rahip, kilise cemaatleri, vaftizler, ilahiyat öğrencileri).
  • latest_financials — mevcut olduğunda en son mali yılın başlık metrikleri (toplam gelir, toplam gider, net varlıklar, toplam varlıklar, fazla/açık), para birimi ile birlikte.
  • alternates — birden fazla aday eşleştiğinde.

Çok yıllı eğilim analizi için bunun yerine diocese_statistics_lookup kullanın.

diocese_statistics_lookup

Bir piskoposluk için tam yıllık istatistik zaman serisini döndürür — diocese_statistics içinde izlenen tüm 19 metrik.

Girdi: data.query veya data.source_code (biri gereklidir), artı isteğe bağlı dahil edici sınırlar:

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

Artifact: name: "diocese_statistics_time_series", source_code, diocese_name, year_range: { start, end } ve bir rows dizisi içeren tek bir data part ile. Her satır bir yıl için 19 metrik taşır: 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.