MIP: Enhance ESDTModifyCreator
to allow specifying the new creator address
Motivation
Currently, the ESDTModifyCreator
operation allows changing the creator of a dynamic NFT/SFT, but with significant limitations:
- The transaction must be sent by the new creator address (holder of
ESDTRoleModifyCreator
). - There is no way to specify a different new creator as a parameter in the transaction.
- This makes it impractical for cases where a smart contract, marketplace, or governance mechanism should assign the creator rights to another address (e.g., after a sale, auction, or DAO vote).
As a result, this powerful feature is underused, and its potential for dynamic assets is not fully exploited.
Proposal
Enhance the ESDTModifyCreator
transaction to accept the new creator address as a parameter.
New transaction format:
ModifyCreatorTransaction {
Sender: <authorized account or smart contract (must have ESDTRoleModifyCreator
role)>
Receiver:
Value: 0
GasLimit: 60000000
Data: “ESDTModifyCreator” +
“@” + <token identifier in hexadecimal encoding> +
“@” + <token nonce in hexadecimal encoding> +
“@” + <optional new creator address in hexadecimal encoding>
}
If the new creator
address is not provided, the current logic applies (assign creator to the sender).
Benefits
New use cases unlocked
- Dynamic transfer of creator rights (after sales, auctions, governance decisions)
- Integration in marketplaces, DAOs, and smart contracts
- Easier support for programmable art, collaborative NFTs, RWAs
No impact on existing tokens
- Backward compatible: existing tooling and transactions continue to work.
Stronger ecosystem
- Makes dynamic NFTs/SFTs more useful and flexible for developers and creators.
Security considerations
- The sender must still hold
ESDTRoleModifyCreator
to modify the creator. - The protocol will validate the
new creator
address and apply the change atomically.
FAQ
Q: Would this break existing collections or tooling?
A: No. The new parameter is optional. If absent, the behavior remains as today: creator is assigned to the sender.
Q: Can smart contracts use this safely?
A: Yes. As long as the contract holds ESDTRoleModifyCreator
, it can assign the creator to any address passed in the transaction.
Call for feedback
This proposal aims to make dynamic NFTs/SFTs more powerful and usable in real-world scenarios.
Looking forward to your feedback and discussions on how to best implement this!