MCP Connector

Deploy and Manage ERC-20 Tokens Across 21 Blockchains

MCP server for AI agents to deploy and transfer ERC-20 tokens across 21 EVM blockchains via a signing private key.


90
Spark score
out of 100
Updated Apr 2025
Version 1.0.0
Models
universal

Add to Favorites

Why it matters

Automate the creation and management of ERC-20 tokens on a wide range of blockchains. This asset enables seamless deployment, transfer, and querying of token information, simplifying complex multi-chain operations.

Outcomes

What it gets done

01

Deploy new ERC-20 tokens with custom parameters.

02

Transfer ERC-20 tokens between accounts.

03

Query token balances and transaction details.

04

Retrieve ERC-20 token metadata.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-token-minter-mcp | bash

Capabilities

Tools your agent gets

deployToken

Deploys a new ERC-20 token with customizable name, symbol, initial supply, decimals, and chain.

transferToken

Transfers ERC-20 tokens to a specified address on a given blockchain.

getTransactionInfo

Retrieves transaction details by hash on a specified blockchain.

getTokenBalance

Queries the balance of a specific ERC-20 token for the current account.

getTokenInfo

Queries ERC-20 token metadata including name, symbol, and total supply.

getBalance

Checks the native token balance of the current account on a specified chain.

Overview

token-minter-mcp MCP Server

An MCP server letting AI agents deploy and transfer ERC-20 tokens, check balances, and look up transactions across 21 EVM blockchains. Use to deploy or transfer ERC-20 tokens via natural language. Requires a raw private key to sign transactions - scope it to a dedicated wallet and test on chainId 1337 (Hardhat) before targeting mainnet.

What it does

Token Minter MCP gives AI agents tools to deploy and manage ERC-20 tokens across 21 blockchains. deployToken creates a new ERC-20 token with configurable name, symbol, initial supply, decimals, and target chain. transferToken sends ERC-20 tokens to a recipient address (returns a transaction hash without waiting for confirmation). getTransactionInfo retrieves details for a transaction by hash. getTokenBalance and getTokenInfo query a specific ERC-20 token's balance and metadata (name, symbol, decimals, total supply). getBalance checks the native token balance of the configured account. A tokenMetadata resource exposes token metadata via token://{chainId}/{address}, and a deployTokenGuide prompt walks through the parameters needed to deploy on a given chain.

{
  "mcpServers": {
    "Token-Minter-MCP": {
      "command": "node",
      "args": ["path/to/token-minter-mcp/server/index.js"],
      "env": {
        "INFURA_KEY": "your infura key",
        "PRIVATE_KEY": "your private key"
      }
    }
  }
}

Supported networks span 21 chains via chainId, including Ethereum, Polygon, BSC, Arbitrum, Optimism, Base, Avalanche, zkSync, Scroll, Starknet, and a local Hardhat network (chainId 1337) for testing. A worked example: asking to deploy "RewardToken" (symbol RWD, 5M initial supply, 6 decimals) on Arbitrum returns a transaction hash and a note to check status via getTransactionInfo; deployment and transfer confirmations are asynchronous.

When to use - and when NOT to

Use this connector when you want an AI agent to deploy new ERC-20 tokens or transfer existing ones on real or test EVM chains, check balances, or look up transaction and token details, driven by natural-language requests.

This server requires a raw Ethereum private key configured as an environment variable to sign transactions - deployToken and transferToken move real value and deploy real contracts on whatever chain is targeted, with no built-in confirmation step, so the private key should be scoped to a dedicated wallet with only the funds intended for this use, and transactions should be reviewed before requesting them on mainnet. Use chainId 1337 against a local Hardhat node for safe testing before targeting a live chain.

Capabilities

deployToken: deploy a new ERC-20 token with custom name/symbol/supply/decimals on a chosen chain. transferToken: send ERC-20 tokens to an address. getTransactionInfo: look up transaction status and details by hash. getTokenBalance / getTokenInfo: query a token's balance and metadata. getBalance: check native token balance. deployTokenGuide prompt: interactive deployment parameter guidance.

How to install

Requires Node.js 18+, an Infura API key for EVM network access, and an Ethereum private key for signing. Clone the repository, cd token-minter-mcp/server, run npm install, and configure INFURA_KEY and PRIVATE_KEY as environment variables in the MCP server config. For local testing, run npx hardhat node and use chainId 1337 instead of a live network.

Who it's for

Web3 developers and teams who want an AI agent to deploy and manage ERC-20 tokens across multiple EVM chains, with care taken around private-key handling and mainnet transaction review.

Source README

MseeP.ai Security Assessment Badge

Token Minter MCP

An MCP server providing tools for AI agents to mint ERC-20 tokens, supporting 21 blockchains.

License
Node.js
Status

Features

  • Deploy new ERC-20 tokens with customizable parameters.
  • Query token metadata (name, symbol, decimals, total supply).
  • Initiate token transfers (returns transaction hash without confirmation).
  • Retrieve transaction details by hash.
  • Check native token balance of the current account.
  • Access token metadata via URI.
  • Interactive prompt for deployment guidance.

Tools

  • deployToken: Deploys a new ERC-20 token (name, symbol, initialSupply, decimals, chainId).
  • transferToken: Transfers ERC-20 tokens (tokenAddress, toAddress, amount, chainId).
  • getTransactionInfo: Retrieves transaction details (txHash, chainId).
  • getTokenBalance: Queries the balance of a specific ERC-20 token for the current account.
  • getTokenInfo: Queries ERC-20 token metadata (tokenAddress, chainId).
  • getBalance: Checks native token balance (chainId).

Resources

  • tokenMetadata: Exposes token metadata via token://{chainId}/{address}.

Prompts

  • deployTokenGuide: Guides token deployment with required parameters (chainId).

Prerequisites

  • Node.js v18.x or higher
  • npm (typically bundled with Node.js)
  • A valid Infura API key for EVM network access
  • An Ethereum private key for signing transactions

Installation

  1. Clone the Repository:

    git clone https://github.com/kukapay/token-minter-mcp.git
    cd token-minter-mcp/server
    
  2. Install Dependencies:

    npm install
    

Configuration

{
  "mcpServers": {
    "Token-Minter-MCP": {
      "command": "node",
      "args": ["path/to/token-minter-mcp/server/index.js"],
      "env": {
        "INFURA_KEY": "your infura key",
        "PRIVATE_KEY": "your private key"
      }
    }
  }
}

Usage

  1. Examples:

    I want to create a new token called 'RewardToken' with the symbol 'RWD' on Arbitrum. It should have 5 million tokens in initial supply and use 6 decimal places.

    Token deployment initiated on Arbitrum (chainId: 42161)!
    Name: RewardToken
    Symbol: RWD
    Decimals: 6
    Initial Supply: 5000000 tokens
    Transaction Hash: 0xabc123...
    Note: Use 'getTransactionInfo' to check deployment status.
    

    Can you tell me how much POL I have in my wallet on the Polygon network?

    Account Balance on Polygon (chainId: 137):
    Address: 0xYourAddressHere
    Balance: 25.3478 POL
    

    What’s the balance of my newly created token on Polygon?

    Token Balance on Polygon (chainId: 137):
    Address: 0xYourAddressHere
    Token: 0xYourTokenAddressHere
    Symbol: ABCD
    Balance: 10000000.00 ABCD
    

    Please transfer 150.75 USDC from my account to 0xRecipientAddressHere on Polygon."

    Transfer initiated on Polygon (chainId: 137)!
    Token: 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174
    To: 0xRecipientAddressHere
    Amount: 150.75 (150.75 tokens)
    Transaction Hash: 0xdef456...
    Note: Use 'getTransactionInfo' to check transfer status.
    

    What’s the status of my token deployment transaction with hash 0xabc123... on Arbitrum?

    Transaction Info on Arbitrum (chainId: 42161):
    Hash: 0xabc123...
    From: 0xYourAddressHere
    To: Contract Creation
    Value: 0 ETH
    Status: Success
    Deployed Contract Address: 0xNewTokenAddressHere
    

    Give me the details of the token at address 0xNewTokenAddressHere on Arbitrum.

    Token Info on Arbitrum (chainId: 42161):
    Address: 0xNewTokenAddressHere
    Name: RewardToken
    Symbol: RWD
    Decimals: 6
    Total Supply: 5000000
    

    How do I deploy a token on Polygon? What details do I need to provide?

    To deploy a token on Polygon (chainId: 137), use the "deployToken" tool with these parameters:
    - name: The token's full name (e.g., "MyToken")
    - symbol: The token's ticker (e.g., "MTK")
    - initialSupply: Amount in token units (e.g., 1000000 for 1M tokens, default 1,000,000)
    - decimals: Optional number of decimals (default is 18)
    - chainId: Optional chain ID (default is 1 for Ethereum)
    
  2. Local Testing:

    Intall dependencies:

    cd token-minter-mcp
    npm install
    

    Start a local Hardhat node:

    npx hardhat node
    

    Use chainId: 1337 in your prompts to test locally.

Supported Networks

Chain ID Network Name Native Token
1 Ethereum ETH
137 Polygon POL
56 BSC BNB
42161 Arbitrum ETH
10 Optimism ETH
59144 Linea ETH
8453 Base ETH
81457 Blast ETH
11297108109 Palm PALM
43114 Avalanche AVAX
42220 Celo CELO
324 zkSync ETH
5000 Mantle MNT
204 opBNB BNB
534352 Scroll ETH
1923 Swellchain ETH
130 Unichain ETH
23448594291968334 Starknet ETH
80094 Berachain BERA
999 Hyperliquid HYPE
146 Sonic S
1337 Localhost ETH

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.