Token Revoke
About
Enables secure management and revocation of ERC20 token allowances across 40+ blockchain networks, helping users protect their assets by controlling which protocols have permission to spend their tokens.
Details
- Author
- kukapay
- Repository
- kukapay/token-revoke-mcp
- GitHub stars
- 1
- License
- MIT License
- Categories
- Design, Developer Tools, AI, Infrastructure, Security, API, Frontend
Jump to
- Fetch Token Approvals: Retrieve all ERC20 token approvals for a wallet on a specified chain, including token details, balances, and USD values at risk.
- Revoke Allowances: Submit transactions to revoke ERC20 token allowances for specific spenders.
- Check Transaction Status: Verify the success or failure of submitted transactions using transaction hashes.
- Multi-Chain Support: Supports over 50 EVM-compatible chains, including mainnets (e.g., Ethereum, Polygon, BSC) and testnets (e.g., Goerli, Mumbai).
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Token RevokeCommand (node, npx, python, etc.)nodeArguments-
Argument 1
path/to/token-revoke-mcp/index.js
Environment-
PRIVATE_KEY
your wallet private key -
MORALIS_API_KEY
your moralis api key
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Below are examples of how you might interact with the server using natural language prompts as input. The outputs are the raw text values from the content array returned by the server, assuming a client translates the prompts into tool calls.
Fetch Token Approvals
Retrieve all ERC20 token approvals for a wallet on a specified chain, including token details, balances, and USD values at risk.
Revoke Allowances
Submit transactions to revoke ERC20 token allowances for specific spenders.
Check Transaction Status
Verify the success or failure of submitted transactions using transaction hashes.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"token revoke": {
"env": {
"PRIVATE_KEY": "your wallet private key",
"MORALIS_API_KEY": "your moralis api key"
},
"args": [
"path/to/token-revoke-mcp/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"PRIVATE_KEY": "your wallet private key",
"MORALIS_API_KEY": "your moralis api key"
},
"args": [
"path/to/token-revoke-mcp/index.js"
],
"command": "node"
}
Macos
{
"env": {
"PRIVATE_KEY": "your wallet private key",
"MORALIS_API_KEY": "your moralis api key"
},
"args": [
"path/to/token-revoke-mcp/index.js"
],
"command": "node"
}
Windows
{
"env": {
"PRIVATE_KEY": "your wallet private key",
"MORALIS_API_KEY": "your moralis api key"
},
"args": [
"/c",
"node",
"path/to/token-revoke-mcp/index.js"
],
"command": "cmd"
}
Token Revoke MCP
An MCP server for checking and revoking ERC-20 token allowances, enhancing security and control.
Features
- Fetch Token Approvals: Retrieve all ERC20 token approvals for a wallet on a specified chain, including token details, balances, and USD values at risk.
- Revoke Allowances: Submit transactions to revoke ERC20 token allowances for specific spenders.
- Check Transaction Status: Verify the success or failure of submitted transactions using transaction hashes.
- Multi-Chain Support: Supports over 50 EVM-compatible chains, including mainnets (e.g., Ethereum, Polygon, BSC) and testnets (e.g., Goerli, Mumbai).
Prerequisites
- Node.js: Version 18 or higher (for native fetch support).
- Moralis API Key: Required for fetching token approval data.
- Private Key: An Ethereum-compatible private key for signing revocation transactions.
Installation
1. Clone the Repository:
git clone https://github.com/kukapay/token-revoke-mcp.git
cd token-revoke-mcp
2. Install Dependencies:
npm install
3. Client Configuration:
{
"mcpServers": {
"token-revoke-mcp": {
"command": "node",
"args": ["path/to/token-revoke-mcp/index.js"],
"env": {
"MORALIS_API_KEY": "your moralis api key",
"PRIVATE_KEY": "your wallet private key"
}
}
}
}
Usage
Below are examples of how you might interact with the server using natural language prompts as input. The outputs are the raw text values from the content array returned by the server, assuming a client translates the prompts into tool calls.
Example 1: Fetch Token Approvals
Input Prompt: > "Show me all the token approvals for my wallet on Polygon."Output Response:
[
{
"tokenAddress": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"tokenSymbol": "USDC",
"balance": "100.5",
"usdPrice": "1.00",
"usdValueAtRisk": "50.25",
"spenderAddress": "0x1111111254eeb25477b68fb85ed929f73a960582",
"approvedAmount": "1000.0",
"transactionHash": "0xabc...",
"timestamp": "2023-10-01T12:00:00Z"
}
]
Example 2: Revoke an Allowance
Input Prompt: > "Revoke the allowance for token 0x2791bca1f2de4661ed88a30c99a7a9449aa84174 to spender 0x1111111254eeb25477b68fb85ed929f73a960582 on BSC."Output Response:
Allowance revocation submitted on bsc. Transaction hash: 0x123.... Note: Transaction is not yet confirmed.
Example 3: Check Transaction Status
Input Prompt: > "Did my transaction 0x123... on BSC go through?"Output Response (possible outputs):
- Pending:
Transaction 0x123... on bsc is still pending or not found.
- Success:
Transaction 0x123... on bsc has completed with status: successful. Block number: 12345.
- Failure:
Transaction 0x123... on bsc has completed with status: failed. Block number: 12345.
Supported Chains
The server supports a wide range of EVM-compatible chains based on the Moralis JS SDK’s chaindata.ts. Examples include:
- Mainnets: ethereum, polygon, bsc, avalanche, fantom, arbitrum, optimism, etc.
- Testnets: goerli, mumbai, bsc testnet, arbitrum goerli, optimism sepolia, etc.
- Full list: See SUPPORTED_CHAINS in server.js.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




