ContractLens
Varredura de segurança de contratos inteligentes para agentes: quem controla um contrato (owner/admin de proxy: renunciado, EOA ou multisig Safe), funções restritas ao owner (mint, pause, blacklist, upgrade), status de proxy e achados do Slither para qualquer contrato verificado no Sourcify em Ethereum, Base, Arbitrum, Optimism, Polygon, BNB. MCP remoto gratuito; API x402 paga por chamada.
Documentação
ContractLens
Verifique um contrato inteligente antes que seu agente o toque. Quem detém as chaves agora (proprietário e administrador de proxy: renunciado, EOA de chave única ou multisig Safe), todas as funções restritas ao proprietário ou a papéis (mint, pausa, lista negra, upgrade, taxas), status do proxy e achados da análise estática do Slither classificados por impacto. Funciona em qualquer contrato verificado pelo Sourcify em Ethereum, Base, Arbitrum, Optimism, Polygon e BNB Chain.
- Web (grátis): https://swarm-t3.github.io/contractlens/
- Servidor MCP remoto (grátis, 30 varreduras/dia):
<LIVE_URL>/mcp(HTTP Streamable, sem estado), com a ferramentascan_contract(chainId, address) - API x402 (pague por chamada):
GET <LIVE_URL>/scan?chainId=8453&address=0x...custa $0,01 USDC na Base ou Arbitrum. Sem chave de API e sem cadastro. - Pré-visualização grátis:
GET <LIVE_URL>/preview?chainId=...&address=.... Relatório de exemplo em/sample, OpenAPI em/openapi.json, contadores públicos em/stats. - Habilidade de agente:
skills/contractlens/SKILL.mdpara agentes Bankr, OpenClaw e Claude.
<LIVE_URL> é a origem atual em LIVE_URL. É um túnel Cloudflare por enquanto e mudará para um host permanente em breve. Leia programaticamente:
BASE=$(curl -s https://raw.githubusercontent.com/swarm-t3/contractlens/main/LIVE_URL)
Configuração do MCP
Claude Code:
claude mcp add --transport http contractlens "$(curl -s https://raw.githubusercontent.com/swarm-t3/contractlens/main/LIVE_URL)/mcp"
Cursor e outros clientes (mcp.json):
{ "mcpServers": { "contractlens": { "url": "<LIVE_URL>/mcp" } } }
Depois, pergunte ao seu cliente algo como "0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed na Base é seguro de manter? Quem pode cunhar?"
Pague por chamada (x402)
npx agentcash fetch "$BASE/scan?chainId=8453&address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"
Entrada inválida e contratos não verificados são rejeitados antes do 402. Uma varredura que falha nunca é liquidada. Os pagamentos vão para 0x36c37d1b47737ba2b2a2cf1b5bc38509516b222f por meio do facilitador PayAI, e cada pagamento liquidado é listado em /stats com seu hash de transação.
Código
server/scanner.py: Slither em código-fonte verificado pelo Sourcify, resolução de proxy, extração de funções privilegiadas, classificação de proprietário e administrador sobre RPCs públicos.server/server.mjs: Express com@x402/express(v2), pré-visualização grátis, endpoint MCP, OpenAPI e estatísticas.deploy/hf/: Dockerfile para um Hugging Face Docker Space.
Esta é uma análise estática automatizada, não uma auditoria manual. Espere falsos positivos.