Printr
Guides

Creating tokens

Launch a token on an EVM chain or Solana.

A launch has two halves: build an unsigned payload from your metadata, then sign and submit it. This guide covers the build; see Wallets & signing for the second half.

Supported chains

Chains are identified by CAIP-2. Pass these ids in the chains array. This table is generated from the SDK's chain metadata, so it always matches what @printr/sdk actually supports.

ChainCAIP-2Native
Ethereumeip155:1ETH
BNBeip155:56BNB
Unichaineip155:130ETH
Monadeip155:143MON
HyperEVMeip155:999HYPE
Mantleeip155:5000MNT
MegaETHeip155:4326ETH
Baseeip155:8453ETH
Plasmaeip155:9745XPL
Arbitrumeip155:42161ETH
Avalancheeip155:43114AVAX
Solanasolana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpSOL

A token may target multiple chains in one launch — pass several CAIP-2 ids in chains.

Walkthrough

Estimate the cost (optional)

import { ,  } from "@printr/sdk";

const  = ({
  : .,
  : .,
});

Use the printr_quote MCP tool (or the API) to itemize per-chain cost before committing.

Prepare the image

  • Max size 500KB (base64).
  • JPEG recommended — PNGs are usually too large; convert first.
  • Pass either image (base64/URL) or image_path (local file, resolved and compressed for you).

Build the unsigned payload

import {  } from "@printr/sdk";

const  = await (
  {
    : ["eip155:8453:0xYourAddress"],
    : "My Token",
    : "MINE",
    : "A cross-chain token.",
    : ["eip155:8453"],
    : { : 10 },
    : "./logo.jpg",
  },
  ,
);

buildToken returns a ResultAsync with the unsigned transaction payload.

Sign and submit

Hand the payload to a signer — browser or keystore. See Wallets & signing.

Where creator fees go is controlled by fee_sink (dev | stake_pool | buyback | liquidity_pool), defaulting to dev (the creator wallet).

On this page