Agent

POST铸造 Agent

Last updated August 1, 2026

构建一个交易,一步完成为您的 Agent 铸造 MPL Core 资产并在 Agent 注册表中注册其身份。API 在链下存储 Agent 元数据,并返回一个部分签名的交易,由钱包作为付款方共同签名。

Summary

这是铸造 Agent 指南背后的端点。

  • 在单笔交易中创建 Core 资产并调用 registerIdentity
  • 资产密钥对在服务端生成并预先签名,因此响应包含最终的 assetAddress
  • 存储 EIP-8004 元数据和托管的 A2A AgentCard(您提供的,或从元数据合成的)
  • 调用方的钱包作为付款方签名并提交交易

Quick Reference

项目值
方法POST
路径/agents/mint
认证无需
响应序列化交易 + assetAddress

端点

POST /agents/mint

请求体

字段类型必填描述
walletstring是将支付并拥有该 Agent 的钱包(base58)。
networkstring是solana-mainnet 或 solana-devnet。
namestring是Core 资产的 Agent 名称。
uristring是资产链下 JSON 元数据的 URI。
agentMetadataobject是EIP-8004 Agent 注册 JSON(name、description、image、services、registrations、active 等)。
collectionAddressstring否将 Agent 铸造到其中的 Core 集合。
a2aCardobject否预先构建的 A2A AgentCard。省略时会从 agentMetadata 合成一个。

请求示例

curl -X POST "https://api.metaplex.com/v1/agents/mint" \
-H "Content-Type: application/json" \
-d '{
"wallet": "4Nd1mYvJ9jVexjIXG5oJhanoGWyF7Cz6XkY8dEc4RsyG",
"network": "solana-devnet",
"name": "Example Agent",
"uri": "https://example.com/agent-metadata.json",
"agentMetadata": {
"name": "Example Agent",
"description": "An autonomous trading agent.",
"active": true,
"services": [],
"registrations": []
}
}'

响应

{
"success": true,
"tx": "<base64-encoded partially signed transaction>",
"blockhash": {
"blockhash": "9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM",
"lastValidBlockHeight": 123456789
},
"assetAddress": "7nE9GvcwsqzYcPUYfm5gxzCKfmPqi68FM7gPaSfG6EQN"
}

签名和提交

返回的交易已由资产密钥对签名;您的钱包作为付款方共同签名并提交:

import { base64 } from "@metaplex-foundation/umi/serializers";
const res = await fetch("https://api.metaplex.com/v1/agents/mint", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(input),
});
const result = await res.json();
if (!result.success) throw new Error(result.error);
const tx = umi.transactions.deserialize(base64.serialize(result.tx));
const signed = await umi.identity.signTransaction(tx);
await umi.rpc.sendTransaction(signed);

错误

状态码响应体含义
400{ "success": false, "error": "Invalid input data", "details": [...] }请求体验证失败;details 列出具体问题。
400{ "success": false, "error": "<message>" }构建失败(例如未找到集合)。
500{ "success": false, "error": "Failed to prepare mint agent" }服务器错误。

Notes

  • Metaplex 注册表条目(solana:101:metaplex)会自动添加到 agentMetadata.registrations 的最前面。
  • 一个托管的 A2A 服务条目会被插入到 services[] 中,以便 EIP-8004 消费者可以发现 AgentCard 端点;如果您已经自行编写了一个,此操作不产生任何变化。
  • 调用此端点时会存储 Agent 记录,但只有在已签名的交易被确认并索引后,它才会出现在列出 Agent 中。
  • 有关使用 SDK 的引导式演练,请参阅铸造 Agent。