# MRC-721

{% hint style="warning" %}
請注意該協議仍在測試網測試中,我們會在充分測試後在比特幣主網合適的區塊高度啟動該協議
{% endhint %}

## 介紹

MRC-721 是一個基於 MetaID 的 NFT 專輯協議。儘管在 MetaID 協議中，每條數據均為 NFT，但我們仍需要一個專門的 NFT 專輯協議，以方便 NFT 以專輯方式展示和銷售。本協議可適用於各種 NFT 專輯，包括音樂 NFT 專輯、藝術創作 NFT 專輯、圖書 NFT 專輯等。

## 協議格式

### 專輯

#### 基礎路徑 `/nft/mrc721/{collection_name}`

MRC-721 採用路徑區分不同的專輯，用戶應該將 NFT PIN 創建在`/nft/mrc721/{collection_name}` 下，即約定了相關 NFT 歸屬於專輯{collection\_name}，PIN 格式不限。

如用戶要創建名字為“metabot”的 NFT專輯，則將所有相關 NFT PIN 文件創建在`/nft/mrc721/metabot` 路徑下

#### 要點說明

* 存放在`/nft/mrc721/` 路徑下的所有 NFT 文件以及其他文件，均不接受 modify，revoke 和 hide 操作符；也就是MRC721 協議下的所有文件都不能修改、撤銷和隱藏。
* collection\_name為任意字符，只要最後的路徑符合 metaid pin 的路徑規範即可

### 專輯說明協議

#### 路徑: `/nft/mrc721/collection_name}/collection_desc`

該協議為對其所在路徑的專輯的說明和介紹。只有存在collection\_desc 協議文件的 NFT 專輯才會被後端索引器索引。

#### 專輯說明協議格式：

```json
{
	"name":"the full name of the collection",
	"totalSupply":5, //該專輯的最大发行量，可接受值 ;range[-1~1e12]；default to -1，means unlimited；optional
	"royaltyRate":5, //該專輯的銷售版税設置，單位為百分比，5 即為 5%，可用範圍0-20, default to 0;optional
	"desc":"description of the collection", //optional
	"website":"https://the-website-of-the-collection", //optional
	"cover":"metafile://your-nft-cover-pinid",//optional
	"metadata":"any data if needed" //optional
}
```

#### 要點說明

* collectionid 為`collection_desc` 協議的 pinid; collectionid為專輯的索引值；
* `totalSupply`為專輯最大的發行量，索引器只索引專輯路徑下與`totalSupply`值對應的 PIN。超過`totalSupply`數量的 PIN 視為不是該專輯的有效PIN。如`totalSupply`為 999，則只認為首先創建的前 999 個 PIN 為該專輯下的有效 PIN。
* 每個專輯下只有一個 collection\_desc 協議。NFT 專輯有多個 collection\_desc 協議，則只採取第一個忽略後來增加的。

<br>

### NFT Item 說明協議

#### 路徑: `/nft/mrc721/{collection_name}/item_desc`

該協議用於對專輯內各個 Item 說明的協議。該協議為可選項，為對相關 NFT Item 的一個補充性，額外性說明。如缺失不影響 NFT 專輯的創建和索引。

#### NFT Item 說明協議格式

```json
{
"items":
[{
		"pinid":"the-pinid-of-nft", //optional
		"name":"the-name-of-the-NFT-Item",//optional
		"desc":"the description of the specific NFT",//optional
		"cover":"metafile://your-nft-cover-pinid",//optional
		"metadata":"any arbitrary data you can place here"//optional
	},
//repeat item object if needed
]
}
```

#### 要點說明：

* `item_desc`為對專輯內各個 NFT 的描述性文件；item\_desc為可選項，如缺失不影響後端索引器對該 NFT 專輯的索引。
* 一個 NFT 專輯下允許存在多個 `item_desc`協議文件
* 如有多個重複 pinid，則採用先見原則，對於已存在的 pinid 的相關信息將忽略處理；
* 如 pinid 指向非本專輯的 pinid，則忽略處理。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.metaid.io/zh-hk/zi-chan-xie-yi/mrc-721.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
