Tools: NFTs
Inventory, transfers, and marketplace trading (buy, sell, bid) via transaction envelopes.
NFT tools cover inventory reads (Solana only), direct transfers, and marketplace trading via agent-supplied transaction envelopes. Write tools require policy approval. Supported marketplaces: Blur, Magic Eden, OpenSea, Tensor.
get_nft_inventory
Lists NFT-like mints owned by a wallet. Currently Solana only.
Parameters
Prop
Type
Response
{
"items": [
{
"chain": "solana",
"mint": "ABC123...",
"owner": "11111111111111111111111111111111"
}
]
}Response shape is representative; actual fields may vary.
Examples
{
"chain": "solana",
"limit": 100
}Notes
- For non-Solana chains, Seashail currently returns
not_supported. EVM NFT inventory is planned for a future release. - The
chainparameter is required even though only Solana is currently supported.
transfer_nft
Transfers an NFT. Uses SPL token transfer on Solana and ERC-721 safeTransferFrom on EVM. Requires policy approval.
Parameters
Prop
Type
Per-Chain Behavior
- Uses SPL token transfer (transfers exactly 1 token) - Provide
mintparameter: Solana mint pubkey - Seashail creates the recipient's associated token account (ATA) if needed - Scam blocklist applies to both recipient and mint addresses
- Uses ERC-721
safeTransferFrom- Providecontractandtoken_idparameters - Token ID must be a decimal string (e.g., "1234") - Transactions are simulated before broadcast - Scam blocklist applies to both recipient and contract addresses
Response
{
"chain": "solana",
"signature": "5UfD...txid"
}{
"chain": "base",
"tx_hash": "0x..."
}Response shape is representative; actual fields may vary.
Examples
{
"chain": "solana",
"to": "11111111111111111111111111111111",
"mint": "So11111111111111111111111111111111111111112"
}{
"chain": "base",
"to": "0xRecipientAddress",
"contract": "0xContractAddress",
"token_id": "1234"
}Notes
- Requires policy approval. Transactions may be auto-approved, require confirmation, or be blocked depending on your policy configuration.
- Solana transfers always transfer exactly 1 token (the NFT quantity).
- See also: NFT Guide
buy_nft
Buy an NFT via a marketplace by executing a transaction envelope (agent-supplied or fetched from a configured marketplace adapter). Requires policy approval.
Parameters
Prop
Type
Per-Chain Envelope
- Provide
tx_b64: base64-encodedVersionedTransactionbytes (unsigned; Seashail will sign) - Provideallowed_program_ids: allowlist of program IDs (every instruction must be in this set) - Alternatively, provideassetobject for marketplace adapter to fetch envelope - Solana marketplace envelopes are always force-confirmed (user confirmation required regardless of policy) - After policy approval, the transaction is signed and broadcast to Solana
- Provide
to: contract/recipient address - Providedata: 0x-prefixed calldata (use0xfor empty) - Providevalue_wei: optional ETH value as a decimal string (default: "0") - Alternatively, provideassetobject for marketplace adapter to fetch envelope - Transaction is simulated before broadcast - Scam blocklist applies totoaddress
Response
{
"chain": "solana",
"marketplace": "magic_eden",
"signature": "5UfD...txid"
}{
"chain": "base",
"marketplace": "opensea",
"tx_hash": "0x..."
}Response shape is representative; actual fields may vary.
Examples
{
"chain": "solana",
"marketplace": "magic_eden",
"usd_value": 50,
"tx_b64": "BASE64...",
"allowed_program_ids": [
"ComputeBudget111111111111111111111111111111",
"11111111111111111111111111111111"
]
}{
"chain": "base",
"marketplace": "opensea",
"usd_value": 50,
"to": "0x...",
"data": "0x...",
"value_wei": "0"
}Notes
- Requires policy approval. Transactions may be auto-approved, require confirmation, or be blocked depending on your policy configuration and USD value.
- The agent or a configured adapter must construct the transaction envelope. Seashail does not construct marketplace transaction envelopes itself.
- Solana marketplace envelopes are always force-confirmed (user confirmation required regardless of policy).
- If neither envelope fields (
tx_b64/to/data) norassetare provided, Seashail returns an error. - See also: NFT Guide
sell_nft
Sell an NFT via a marketplace by executing a transaction envelope (agent-supplied or fetched from a configured marketplace adapter). Requires policy approval.
Parameters
Same as buy_nft above. All three marketplace tools (buy_nft, sell_nft, bid_nft) share the same parameter set.
Per-Chain Envelope
Same as buy_nft above. See the Per-Chain Envelope section for Solana and EVM envelope format details.
Response
{
"chain": "solana",
"marketplace": "tensor",
"signature": "5UfD...txid"
}{
"chain": "ethereum",
"marketplace": "blur",
"tx_hash": "0x..."
}Response shape is representative; actual fields may vary.
Examples
{
"chain": "solana",
"marketplace": "tensor",
"usd_value": 100,
"tx_b64": "BASE64...",
"allowed_program_ids": [
"TCMPhJdwDryooaGGZjYoHRlM2vvDXcAP2BW2hhBKRmb"
]
}{
"chain": "ethereum",
"marketplace": "blur",
"usd_value": 100,
"to": "0x...",
"data": "0x...",
"value_wei": "0"
}Notes
- Use
get_nft_inventoryto discover owned NFTs before selling. - See
buy_nftnotes for envelope construction, policy approval, and force-confirm behavior. - See also: NFT Guide
bid_nft
Place a bid or offer for an NFT via a marketplace by executing a transaction envelope (agent-supplied or fetched from a configured marketplace adapter). Requires policy approval.
Parameters
Same as buy_nft above. All three marketplace tools (buy_nft, sell_nft, bid_nft) share the same parameter set.
Per-Chain Envelope
Same as buy_nft above. See the Per-Chain Envelope section for Solana and EVM envelope format details.
Response
{
"chain": "solana",
"marketplace": "magic_eden",
"signature": "5UfD...txid"
}{
"chain": "polygon",
"marketplace": "opensea",
"tx_hash": "0x..."
}Response shape is representative; actual fields may vary.
Examples
{
"chain": "solana",
"marketplace": "magic_eden",
"usd_value": 25,
"tx_b64": "BASE64...",
"allowed_program_ids": [
"M2mx93ekt1fmXSVkTrUL9xVFHkmME8HTUi5Cyc5aF7K"
]
}{
"chain": "polygon",
"marketplace": "opensea",
"usd_value": 25,
"to": "0x...",
"data": "0x...",
"value_wei": "0"
}Notes
- See
buy_nftnotes for envelope construction, policy approval, and force-confirm behavior. - See also: NFT Guide
- See also: Policy and Approvals