What is MRC-20?
MRC-20, an innovative advancement within the Maya ecosystem, is set to redefine the way users engage with tokens on the blockchain. Drawing inspiration from the ERC-20 standard on Ethereum and Bitcoin's Ordinals, MRC-20 introduces a groundbreaking framework that seamlessly integrates token deployment, minting, transfer, selling, and buying, all facilitated through memos and ordinal theory. Fully indexed and supported by MayaScan.
At the heart of MRC-20 lies the incorporation of ordinal theory, a concept akin to ordinals on Bitcoin but tailored to the unique environment of the Maya Protocol. This empowers MRC-20 with a robust and secure framework for managing token interactions and ensures the preservation of network integrity.
Concept
Experiment to see if ordinal theory can facilitate fungibility on the Maya Protocol and allow users to:
Available operations
Deploy a new MRC-20 token
TX Type
SEND
Recipient
self
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token, no special characters, up to 4 characters long. |
supply | YES | The maximum supply of the token. 10 decimals. (ie: 1 token = 10000000000) |
mint-limit | NO | If letting users mint their own tokens, it specifies the max amount of tokens that an address can mint. 10 decimals |
mint-price | NO | If letting users mint their own tokens, it specifies the "price per token" (in CACAO). Minters will have to send `mint-price * mint-amount` in CACAO to the deployer address in order for the mint to go through. |
RULES
The ticker must be unique. Duplicates will be ignored
The ticker is NOT case sensitive (eth = ETH = eTh)
The ticker should not mirror existing crypto coins (BTC, ETH, KUJI, DASH, KUJI...), these will be ignored.
If the ticker contains invalid charactes or is longer than 4 characters it will be ignored.
If the supply is greater or equal to 1 trillion it will be ignored (token won't be deployed)
If the mint limit is greater than the supply, it will be ignored (the token will be deployed be the mint limit will be ignored).
Set the MINT PRICE of a MRC-20 token
TX Type
SEND
Recipient
self
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being updated. |
mint-price | YES | The new mint price per token (in CACAO). |
RULES
The ticker must exists
The MRC-20 token must have been created by the same address that is trying to update it
Mint an arbitrary amount of tokens
TX Type
SEND
Recipient
DEPLOYER
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being minted. |
amount | YES | The number of tokens that are being minted. |
recipient | NO | The owner of the newly minted tokens. |
RULES
The ticker must exists
The amount of tokens previously minted must be less than the requested amount
The mount of tokens to mint must be less or equal to the `mint-limit` initially specified by the token's deployer
The optional recipient must be a valid MAYA address
Transfer an amount of MRC-20 tokens
TX Type
SEND
Recipient
BENEFICIARY
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being transferred. |
amount | YES | The amount of tokens that are being transferred. |
RULES
The ticker must exists
The amount must be lower or equal to the amount of tokens held by the sender
If there's is a sell order in place the number of tokens being sold is discounted from the amount of tokens being held by the address
Create a sell order
TX Type
SEND
Recipient
self
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being sold. |
amount | YES | The amount of tokens that are being sold. |
price | YES | The price (in CACAO) at which the tokens are being sold for. |
RULES
The ticker must exist
The amount must be lower or equal to the amount of tokens held by the seller
Cancel a sell order
TX Type
SEND
Recipient
self
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being updated. |
hash | YES | The tx hash that created the sell order. |
RULES
The ticker must exist
The tx hash must exist
The sell order must have been created by the address canceling it
Canceling the order will only return the tokens that have not been sold already
Buy MRC-20 tokens from the order book
TX Type
SEND
Recipient
SELLER
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being bought. |
amount | YES | The amount of tokens that are being bought from the order book. |
hash | YES | The hash of the tx from the order book listing. |
RULES
The ticker must exist
The amount must be less or equal to the amount being sold
The hash must exist
Burn MRC-20 tokens
TX Type
SEND
Recipient
self
Key | Required?Req? | Description |
---|---|---|
ticker | YES | The name of the token that is being burnt. |
amount | YES | The amount of tokens that are being burnt. |
RULES
The ticker must exist
The amount must be less or equal to the amount being held by the user burning the tokens
Final thoughts
In summary, MRC-20 represents a pivotal evolution within the Maya Protocol, introducing a standardized approach to token operations through memos and ordinal theory. By fusing these elements, MRC-20 opens the door to a new era of token engagement, reinforcing Maya's position as a trailblazer in the realm of blockchain innovation.