技能
Magisterium AI 通过 A2A 协议公开以下技能。通过消息中的 metadata.skillId 指定要使用的技能。如果省略 skillId,则默认使用 catholic_qa。
| 技能 | ID | 描述 |
|---|---|---|
| 天主教问答 | catholic_qa | 完整问答,附带来自 29,000 多份训导文献、《圣经》及教父著作的引用。 |
| 文献搜索 | document_search | 对训导文献、通谕、要理章节和教会法进行语义搜索。 |
| 文献获取 | document_fetch | 通过 ID 获取特定文献的完整正文和元数据。 |
| 礼仪读经 | liturgical_readings | 获取任意日期或礼仪时节的天主教弥撒读经。 |
| 每日圣人 | saints_of_the_day | 获取《罗马殉道录》中某一天纪念的圣人。 |
所有技能均通过 message/send JSON-RPC 方法调用。
{
"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。每个 artifact 都有一个唯一的 artifactId、一个与技能相关的 name,以及一个或多个 parts(text、data 或 file)。
catholic_qa
用自然语言提出一个问题,获得带引用的长篇回答。这是功能最强大(也最消耗资源)的技能 —— 它运行在与 magisterium.com 相同的模型上。
输入: 包含问题的单个文本 part。
Artifact: name: "catholic_qa_response",包含:
- 一个
textpart,内含完整回答。 - 一个
datapart,包含citations(当使用了任何来源时)。 - 一个
datapart,包含related_questions(当模型返回建议时)。
{
"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 知识库中检索与语义查询匹配的文献引用。
输入: 包含查询的单个文本 part。
Artifact: name: "search_results",包含单个 data part:
{
"artifactId": "art_...",
"name": "search_results",
"parts": [
{
"kind": "data",
"data": {
"results": [
{ "id": "12345", "url": "https://...", "title": "Lumen Gentium" }
]
}
}
]
}使用结果中的 id 字段调用 document_fetch 以获取完整文本。
document_fetch
通过 ID 获取一份文献的完整正文和元数据。该技能接受一个 data part,而不是文本 part:
{
"parts": [{ "kind": "data", "data": { "id": "12345" } }]
}如果调用方发送的是文本 part,处理程序会退回到将其视为文献 ID。
Artifact: name: "document",包含两个 part:
- 一个
textpart,包含文献正文。 - 一个
datapart,包含{ id, title, author, ref }。
如果找不到该文献,artifact 将只包含一个内容为 "Document not found." 的 text part。
liturgical_readings
获取指定日期的天主教弥撒读经。接受 自然语言 日期查询 —— 例如 "today"、"next Sunday" 或 "Easter Sunday 2026"。
输入: 包含日期查询的单个文本 part。
Artifact: name: "mass_readings",包含单个 text part,内含格式化后的读经内容。如果所请求的日期没有可用的读经,该 part 的内容为 "No mass readings found."。
saints_of_the_day
从《罗马殉道录》中查询指定日期所纪念的圣人。
输入: 包含绝对日期的 data part,或被视为日期查询的文本 part:
{
"parts": [{ "kind": "data", "data": { "date": "2026-03-19" } }]
}Artifact: name: "martyrology",包含单个 text part,内含格式化的殉道录条目。缺失的日期将返回 "No martyrology data found."。