BSC MultiSend MCP
An MCP server that enables agents to perform bulk BNB and BEP20 token transfers on BSC.
Features
- distributeNative Tool: Sends BNB to multiple addresses in a single transaction.
- Parameters:
receivers
: Array of BSC addresses to receive BNB.amounts
: Array of BNB amounts (e.g., 0.1 BNB) to send, automatically summed for the total.
- Automatically converts amounts to wei and handles gas estimation.
- Parameters:
- distributeToken Tool: Sends BEP20 tokens to multiple addresses.
- Parameters:
tokenAddress
: Address of the BEP20 token contract.receivers
: Array of BSC addresses to receive tokens.amounts
: Array of token amounts (e.g., 100.5 tokens).
- Queries token decimals, checks allowance, and auto-approves if needed.
- Parameters:
Prerequisites
- Node.js: Version 18 or higher.
- pnpm: For installing dependencies.
- BNB Smart Chain Wallet: A wallet with sufficient BNB for gas and tokens for distribution.
- BSC RPC Endpoint: Access to a BSC node (e.g.,
https://bsc-dataseed.binance.org/
).
Installation
Clone the repository:
git clone https://github.com/kukapay/bsc-multisend-mcp.git cd bsc-multisend-mcp
Install dependencies:
pnmp install
Configure MCP client:
Claude Desktop configuration file as a reference:
{ "mcpServers": { "BSC MultiSend": { "command": "node", "args": [ "/path/to/bsc-multisend-mcp/index.js" ], "env": { "PRIVATE_KEY": "your-private-key" } } } }
Replace
/path/to/bsc-multisend-mcp
with your actual installation path, andyour-private-key
with your BSC wallet private key.
Usage
The server offers two tools — distributeNative and distributeToken — for bulk token distribution.
distributeNative
Purpose: Distributes BNB to multiple addresses in a single transaction.
Example Prompt:
I want to send 0.1 BNB to 0xRecipient1 and 0.2 BNB to 0xRecipient2 on BSC.
Expected Response:
BNB distribution successful. Tx Hash: 0x...
distributeToken
Purpose: Distributes BEP20 tokens to multiple addresses. It queries the token's decimals, checks the contract's allowance, approves the contract if needed, and executes the transfer.
Example Prompt:
Send tokens to the following addresses on BSC using the token contract at 0xTokenAddress:
- 0xRecipient1: 100.5 tokens
- 0xRecipient2: 200 tokens
- 0xRecipient3: 50.75 tokens
- 0xRecipient4: 150 tokens
- 0xRecipient5: 75.25 tokens
Expected Response:
Token distribution successful. Tx Hash: 0x...
License
This project is licensed under the MIT License. See the LICENSE file for details.