A2A(协议)Beta
通过开放的 A2A(Agent-to-Agent) 协议,让您的 AI 智能体能够发现 Magisterium AI、与其通信并向其委派任务。
为什么选择 A2A?
MCP 让 AI 工具 能够访问 Magisterium 的知识,而 A2A 则让 AI 智能体 能够以对等方的身份与 Magisterium 协作。一个编排型智能体可以发现 Magisterium 的能力、向其发送任务并接收结构化结果 —— 这一切都通过标准的 JSON-RPC 接口完成。
需要付费计划。 A2A 端点仅在专业版、组织版和企业版计划中可用。免费账户将收到
PLAN_REQUIRED(-32005)错误。请参阅 MCP 定价 以了解当前计划限制 —— A2A 与 MCP 共享同一个速率限制池。
智能体发现
Magisterium AI 在以下地址发布一张公开的 Agent Card:
https://www.magisterium.com/.well-known/agent.json
这是外部智能体发现可用技能、身份验证要求以及 A2A 端点 URL 的方式。该卡片遵循 A2A 规范,获取时无需身份验证。
curl https://www.magisterium.com/.well-known/agent.jsonA2A 端点
所有 A2A 操作的 JSON-RPC 端点为:
https://www.magisterium.com/api/v1/a2a
所有请求均使用 POST 方法,需带上 Content-Type: application/json 请求头以及标准的 JSON-RPC 2.0 封装。
能力
Agent Card 公布了以下能力:
| 能力 | 是否支持 | 备注 |
|---|---|---|
streaming | 否 | 所有技能都是同步的 —— 已完成的任务会在单次响应中返回。 |
pushNotifications | 否 | 客户端通过轮询 tasks/get 来获取之前已完成的任务。 |
stateTransitionHistory | 是 | 每个任务都会保留其用户和智能体消息的 history。 |
身份验证
A2A 使用与 Magisterium MCP 服务器 相同的 OAuth 2.0 用户令牌身份验证。您必须在 magisterium.com 上拥有账户才能调用 A2A 端点。
Magisterium 在 https://www.magisterium.com/.well-known/oauth-authorization-server 发布 OAuth 2.0 元数据,其中包含授权端点、令牌端点和动态客户端注册端点。实现 OAuth 2.0 授权码流程(带 PKCE)的客户端可以根据这些元数据获取访问令牌;标准的客户端配置请参阅 MCP 身份验证文档。
获得访问令牌后,请在每个 A2A 请求的 Authorization 请求头中携带它:
Authorization: Bearer $MAGISTERIUM_TOKEN在 API 控制台 中生成的长期 API 密钥仅适用于 Chat Completions、Search 和 News 端点 —— 它们 无法 用于 A2A 身份验证。请改用 OAuth 颁发的用户令牌。
缺失或无效的令牌将返回 UNAUTHORIZED(-32004)错误。
快速示例
向 catholic_qa 技能发送一个问题:
curl -X POST https://www.magisterium.com/api/v1/a2a \
-H "Authorization: Bearer $MAGISTERIUM_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "message/send",
"params": {
"message": {
"role": "user",
"messageId": "msg-001",
"kind": "message",
"parts": [{ "kind": "text", "text": "What does the Church teach about the Real Presence?" }],
"metadata": { "skillId": "catholic_qa" }
}
}
}'响应是一个已完成的 Task,答案和引用位于 result.artifacts 中:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"id": "task_abc123",
"contextId": "ctx_def456",
"kind": "task",
"status": { "state": "completed", "timestamp": "2026-04-20T12:00:00.000Z" },
"artifacts": [
{
"artifactId": "art_ghi789",
"name": "catholic_qa_response",
"parts": [
{ "kind": "text", "text": "The Catholic Church teaches..." },
{ "kind": "data", "data": { "citations": [ /* ... */ ] } }
]
}
]
}
}