The private ERC20 and ERC721 sets are the reason to reach for this over a generic EVM server: minting, transferring and reading a balance all go through COTI's encryption, and the AES key tools that make those readable sit in the same place.
An interface to the COTI blockchain built around its MPC-based private token support. The tools cover accounts and keys, private ERC20 and ERC721 operations, contract calls and native COTI transfers.
- Account handling: create an account, generate an AES key, encrypt and decrypt values, sign and verify messages, read or switch the current network (create_account, generate_aes_key, encrypt_value, decrypt_value, sign_message, verify_signature, get_current_network, switch_network)
- Private ERC20: deploy a contract, mint, transfer, approve a spender, and read balance, allowance, decimals and total supply (deploy_private_erc20_contract, mint_private_erc20_token, transfer_private_erc20, approve_erc20_spender, get_private_erc20_balance, get_private_erc20_allowance, get_private_erc20_decimals, get_private_erc20_total_supply)
- Private ERC721: deploy a collection, mint, transfer, approve one token or an operator for all, and read owner, balance, token URI and total supply (deploy_private_erc721_contract, mint_private_erc721_token, transfer_private_erc721, approve_private_erc721, set_private_erc721_approval_for_all, get_private_erc721_token_owner, get_private_erc721_balance, get_private_erc721_token_uri, get_private_erc721_total_supply, get_private_erc721_approved, get_private_erc721_is_approved_for_all)
- Transactions: call a contract function, read logs and status, decode event data (call_contract_function, get_transaction_logs, get_transaction_status, decode_event_data)
- Native COTI: read a balance and transfer (get_native_balance, transfer_native)
Node.js v18 or higher and a COTI AES key. Private balances are encrypted on-chain, so without the key the read tools have nothing to return in the clear.
One command plus a key — npx -y @smithery/cli install @davibauer/coti-mcp --client claude, then supply credentials
