solana_kit_mpl_core

pub package docs website CI coverage

Metaplex Core program client for the Solana Kit Dart SDK: instruction builders, account codecs, error helpers, and PDA derivations for the Metaplex Core program, a single-program standard for non-fungible assets with pluggable metadata.

What you get

  • Instruction builders for all 42 core instructions: creating assets and collections, minting, transferring, burning, plugin management (royalties, attributes, external plugin adapters), group/collection operations, and delegation
  • Account codecs for AssetV1, CollectionV1, plugin headers, plugin registries, oracle, and external plugin adapter records
  • PDA derivations for the asset signer, preconfigured plugin accounts (program, asset, collection, owner, and recipient scopes), dynamic extra accounts, and oracle accounts
  • Error helpers for all 57 program errors
  • Program parsing via the generated identification and parsing entry points

Installation

Install the package directly:

dependencies:
  "solana_kit_mpl_core": ^

If your app uses several Solana Kit packages together, you can also depend on the umbrella package instead:

dart pub add solana_kit

Inside this monorepo, Dart workspace resolution uses the local package automatically.

:::

Installation

Install the package directly:

dependencies:
  "solana_kit_mpl_core": ^

If your app uses several Solana Kit packages together, you can also depend on the umbrella package instead:

dart pub add solana_kit

Inside this monorepo, Dart workspace resolution uses the local package automatically.

Documentation

For architecture notes, getting-started guides, and cross-package examples, start with the workspace docs site and then drill down into the package README and API reference.

Usage

Derive the asset signer PDA

External plugin execution routes through the asset signer, a PDA derived from the asset address.

import 'package:solana_kit_addresses/solana_kit_addresses.dart';
import 'package:solana_kit_mpl_core/solana_kit_mpl_core.dart';

Future<void> main() async {
  final assetSigner = await findAssetSignerPda(
    asset: Address('Asset1111111111111111111111111111111111111'),
  );

  print(assetSigner);
}

Instruction builders such as getCreateV1Instruction, getCreateCollectionV1Instruction, and getTransferV1Instruction give you explicit account ordering while pattern helpers like deriveExtraAccountAddress cover the external plugin adapter surface.

Key APIs

  • findAssetSignerPda, findPreconfiguredProgramPda, findPreconfiguredAssetPda, findPreconfiguredCollectionPda, findPreconfiguredOwnerPda, findPreconfiguredRecipientPda, findOracleAccount, deriveExtraAccountAddress
  • getCreateV1Instruction, getCreateCollectionV1Instruction, getTransferV1Instruction, getUpdateV1Instruction, and the rest of the generated builders
  • parseMplCoreInstruction, identifyMplCoreInstruction
  • getMplCoreErrorMessage, MplCoreError

Reference

Generated with codama-renderers-dart from the metaplex-foundation / mpl-core shank IDL, mirroring the upstream TypeScript client. PDA seeds follow the on-chain Rust (processor/execute.rs, external plugin adapter prefixes) and were cross-verified against @solana/web3.js derivations.

Libraries

solana_kit_mpl_core
mpl-core client for the Solana Kit Dart SDK.