{
  "markdown": "# <img src=\"https://coti.io/images/favicon.ico\" height=\"32\"> COTI MCP Server\n\n[![smithery badge](https://smithery.ai/badge/@davibauer/coti-mcp)](https://smithery.ai/server/@davibauer/coti-mcp)\n\nA Model Context Protocol (MCP) server that enables AI applications to interact with the COTI blockchain, specializing in private token operations using COTI's Multi-Party Computation (MPC) technology.\n\n## Features\n\n**Complete Account Management**\n- Create, import, and export COTI accounts\n- Switch between networks (testnet/devnet/mainnet)\n- Generate AES keys and manage account credentials\n- Sign messages and verify signatures\n- Multi-account support with seamless switching\n\n**Private ERC20 Token Operations**\n- Deploy new private ERC20 contracts\n- Comprehensive token information and allowance management\n- Secure minting, transfer, and approval operations\n- Balance, decimals, and supply tracking\n\n**Private ERC721 NFT Operations**\n- Deploy new private NFT collections\n- Complete approval and ownership management\n- Safe minting and transfer operations\n- Token URI, balance, and collection supply tracking\n\n**Transaction Management**\n- Call arbitrary smart contract functions\n- Monitor transaction status and retrieve logs\n- Decode event data from transaction logs\n- Full transaction lifecycle management\n\n**Privacy & Encryption**\n- Value encryption and decryption using COTI AES keys\n- Full privacy support through MPC technology\n- Secure transaction processing and message signing\n\n## Available Tools\n\n**Account Management (12 tools)**\n- `change_default_account` - Switch between configured accounts\n- `create_account` - Create new COTI account\n- `decrypt_value` - Decrypt values with COTI AES key\n- `encrypt_value` - Encrypt values with COTI AES key\n- `export_accounts` - Export account configurations\n- `generate_aes_key` - Generate new AES encryption key\n- `get_current_network` - Get currently configured network\n- `import_accounts` - Import account configurations\n- `list_accounts` - List all configured accounts\n- `sign_message` - Sign messages with account private key\n- `switch_network` - Switch between COTI networks\n- `verify_signature` - Verify message signatures\n\n**Private ERC20 Operations (8 tools)**\n- `approve_erc20_spender` - Approve spender for ERC20 tokens\n- `deploy_private_erc20_contract` - Deploy new private ERC20 contract\n- `get_private_erc20_allowance` - Get ERC20 token allowance\n- `get_private_erc20_balance` - Get private token balance\n- `get_private_erc20_decimals` - Get token decimals\n- `get_private_erc20_total_supply` - Get token total supply\n- `mint_private_erc20_token` - Mint private ERC20 tokens\n- `transfer_private_erc20` - Transfer private ERC20 tokens\n\n**Private ERC721 Operations (11 tools)**\n- `approve_private_erc721` - Approve spender for specific NFT\n- `deploy_private_erc721_contract` - Deploy new private NFT contract\n- `get_private_erc721_approved` - Get approved spender for NFT\n- `get_private_erc721_balance` - Get NFT balance for account\n- `get_private_erc721_is_approved_for_all` - Check operator approval status\n- `get_private_erc721_token_owner` - Get NFT token owner\n- `get_private_erc721_token_uri` - Get NFT token URI\n- `get_private_erc721_total_supply` - Get NFT collection total supply\n- `mint_private_erc721_token` - Mint new private NFT\n- `set_private_erc721_approval_for_all` - Set operator approval for all NFTs\n- `transfer_private_erc721` - Transfer private NFTs\n\n**Transaction Management (4 tools)**\n- `call_contract_function` - Call smart contract functions\n- `decode_event_data` - Decode transaction event data\n- `get_transaction_logs` - Get transaction event logs\n- `get_transaction_status` - Get transaction status and details\n\n**Native Token Operations (2 tools)**\n- `get_native_balance` - Get native COTI token balance\n- `transfer_native` - Transfer native COTI tokens\n\n## Requirements\n\n- Node.js v18 or higher\n- COTI AES Key for API authentication\n- COTI Private Key for signing transactions\n- COTI Public Key corresponding to the private key\n\n## Setup\n\n### Installation\n\n```bash\ngit clone https://github.com/davibauer/coti-mcp.git\ncd coti-mcp\nnpm install\nnpm run build\n```\n\n### Distribution\n\n**Smithery**\n```bash\nnpx -y @smithery/cli install @davibauer/coti-mcp --client claude\n```\n\n**Local Configuration**\n\nAdd to your Claude desktop configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"coti-mcp\": {\n      \"command\": \"node\",\n      \"args\": [\"path/to/build/index.js\"],\n      \"env\": {\n        \"COTI_MCP_AES_KEY\": \"your_aes_key_here\",\n        \"COTI_MCP_PUBLIC_KEY\": \"your_public_key_here\",\n        \"COTI_MCP_PRIVATE_KEY\": \"your_private_key_here\",\n        \"COTI_MCP_CURRENT_PUBLIC_KEY\": \"current_account_public_key\"\n      }\n    }\n  }\n}\n```\n\n**Multi-Account Support**\n\nConfigure multiple accounts using comma-separated values:\n\n```json\n\"env\": {\n  \"COTI_MCP_AES_KEY\": \"key1,key2,key3\",\n  \"COTI_MCP_PUBLIC_KEY\": \"pub1,pub2,pub3\",\n  \"COTI_MCP_PRIVATE_KEY\": \"priv1,priv2,priv3\",\n  \"COTI_MCP_CURRENT_PUBLIC_KEY\": \"pub1\"\n}\n```\n\n## Resources\n\n- [COTI Documentation](https://docs.coti.io)\n- [Smithery Server Page](https://smithery.ai/server/@davibauer/coti-mcp)\n\n## License\n\nMIT License - see LICENSE file for details.",
  "bytes": 5176,
  "sha": "15ddea58d367bca5433bcd3813d2e77272cb083f7409641711342c353540add9",
  "repo_slug": "cuongpo/coti-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_smithery_cuongpo_coti_mcp_29bce669/readme"
}