scan_token
Scan a token contract for security risks including rug-pull, honeypot, and ownership concentration. Pay 0.003 USDC per call via x402 micropayments on Base.
Instructions
Perform a security scan on a token contract. Detects rug-pull risks, honeypot patterns, ownership concentration, mint authority, and other red flags. Costs 0.003 USDC per call (x402 micropayment on Base).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Token contract address (0x...) or symbol (e.g. "PEPE", "UNI") | |
| chain | No | Chain to scan on (e.g. "ethereum", "base", "arbitrum", "polygon"). Defaults to "ethereum". |
Implementation Reference
- src/index.ts:300-320 (registration)The tool 'scan_token' is defined in the TOOLS array with its name, description, and inputSchema (requires 'token', optional 'chain').
{ name: 'scan_token', description: 'Perform a security scan on a token contract. Detects rug-pull risks, honeypot patterns, ' + 'ownership concentration, mint authority, and other red flags. ' + 'Costs 0.003 USDC per call (x402 micropayment on Base).', inputSchema: { type: 'object', properties: { token: { type: 'string', description: 'Token contract address (0x...) or symbol (e.g. "PEPE", "UNI")', }, chain: { type: 'string', description: 'Chain to scan on (e.g. "ethereum", "base", "arbitrum", "polygon"). Defaults to "ethereum".', }, }, required: ['token'], }, }, - src/index.ts:469-477 (handler)The tool handler case in the CallToolRequestSchema switch statement. Validates that 'token' param is provided, then calls the API endpoint '/api/token-scanner' with token and chain params.
case 'scan_token': if (!params.token) { throw new McpError(ErrorCode.InvalidParams, 'scan_token requires: token'); } result = await callApi('/api/token-scanner', { token: params.token, chain: params.chain, }); break;