🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

base-token-safety-mcp

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

base-token-safety-mcp

Keyless MCP server + CLI for token safety on Base: eth_getCode ground truth (explicit NOT_A_CONTRACT), honeypot.is + GoPlus cross-check, structured pass/caution/fail verdicts. Signals, not guarantees.

latest
Source
npmnpm
Version
0.1.0
Version published
Maintainers
1
Created
Source

base-token-safety-mcp

{
  "state": "OK",
  "verdict": "pass",
  "address": "0x4200000000000000000000000000000000000006",
  "chain": "base",
  "chainId": 8453,
  "checks": {
    "isContract": true,
    "honeypotIs": {
      "reachable": true,
      "hasData": true,
      "isHoneypot": false,
      "honeypotReason": null,
      "buyTaxPct": 0,
      "sellTaxPct": 0,
      "simulationSuccess": true,
      "risk": "low",
      "openSource": true,
      "apiFlags": []
    },
    "goPlus": {
      "reachable": true,
      "indexed": true,
      "isHoneypot": false,
      "buyTaxPct": null,
      "sellTaxPct": null,
      "sourceVerified": true,
      "holderCount": 5188511,
      "signals": []
    },
    "sourceVerified": true,
    "topHolderConcentration": {
      "topHolderPct": 26.93,
      "top10Pct": 53.07,
      "basis": "goplus_holders (burn addresses excluded)"
    }
  },
  "flags": [],
  "explain": [
    "contract: 2041 bytes of deployed bytecode at 0x4200000000000000000000000000000000000006 on base (chainId 8453) via eth_getCode — confirmed on-chain contract.",
    "honeypot.is: simulation succeeded — not flagged as honeypot (buy tax 0%, sell tax 0%), risk rating \"low\".",
    "goplus: indexed — source verified, 5188511 holders; no risk fields raised.",
    "source: contract source code is verified.",
    "holders: top non-burn holder 26.93%, top 10 hold 53.07%.",
    "verdict: pass — deployed contract, no honeypot signals from the consulted sources. Signals, not a guarantee."
  ],
  "checkedAt": "2026-07-03T19:10:09.751Z",
  "elapsedMs": 370
}

That is one real check_token call on WETH (Base) — no API key, no signup, 370 ms. A keyless MCP server (and plain CLI) that gives agents a structured pre-buy safety verdict for any token address on Base (plus Ethereum and BSC).

Why it's different

  • Chain-truth first, explicit states always. Security APIs answer "no flags found" even for addresses that aren't contracts at all. This server asks the chain first — raw eth_getCode against a public RPC — so a wallet address, a wrong-chain paste, or a fake listing comes back as an explicit NOT_A_CONTRACT, never an ambiguous empty result. It even distinguishes EIP-7702 delegated EOAs from real contracts.
  • Cross-checked signals. honeypot.is and GoPlus free APIs queried in parallel: honeypot flags, buy/sell tax (worst of both sources), source verification, top-holder concentration.
  • Never a silent OK. A dead upstream degrades the verdict to UPSTREAM_DEGRADED with the partial checks attached — it does not crash, and it does not pretend the check passed.
  • Zero keys, zero signup, npx -y runnable. Typical check completes in well under 5 seconds (all upstream calls run in parallel with timeouts).

Install

Claude Code

claude mcp add base-token-safety -- npx -y base-token-safety-mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "base-token-safety": {
      "command": "npx",
      "args": ["-y", "base-token-safety-mcp"]
    }
  }
}

VS Code (.vscode/mcp.json)

{
  "servers": {
    "base-token-safety": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "base-token-safety-mcp"]
    }
  }
}

Plain CLI — no MCP client needed

npx -y base-token-safety-mcp check 0x4200000000000000000000000000000000000006
npx -y base-token-safety-mcp check 0x... --chain ethereum

Exit codes: 0 = check completed (read verdict in the JSON), 2 = invalid input.

Tool: check_token

ArgumentTypeNotes
addressstringrequired — 0x + 40 hex chars
chainstringoptional — base (default), ethereum, or bsc

States

stateMeaningTypical verdict
OKDeployed contract, security sources responded; pass if no flags, caution if soft flags raisedpass / caution
NOT_A_CONTRACTNo deployed code at the address (wallet/EOA, empty address, or wrong chain) — nothing to buyfail
HONEYPOT_SIGNALSHoneypot-grade signal from any source (honeypot flag, cannot-sell, extreme tax)fail
UNVERIFIED_RISKContract exists but source is unverified, or no security source knows it — unknown ≠ safecaution
UPSTREAM_DEGRADEDOne or more upstreams unreachable — partial check only, never a silent OKcaution

Every result carries machine-readable flags (e.g. sell_tax_extreme, top_holder_gt_50pct, eip7702_delegated_eoa, upstream_unreachable:goplus) and plain-English explain lines saying exactly what was observed and why the verdict is what it is.

Data sources & configuration

All keyless and free: public RPC eth_getCode (Base default https://mainnet.base.org with automatic fallback), honeypot.is v2 API, GoPlus token_security v1 API.

Env varPurpose
BASE_RPC_URLOverride the Base RPC endpoint
ETH_RPC_URLOverride the Ethereum RPC endpoint
BSC_RPC_URLOverride the BSC RPC endpoint

Honest limits

These are signals, not guarantees, and not financial advice. A pass means the consulted free sources raised no red flags at check time — not that the token is safe. Upgradeable contracts can turn hostile after you check; brand-new tokens are often unindexed (UNVERIFIED_RISK); holder data can lag; simulations can miss trap logic that activates later or under different conditions. Use this to reject obvious garbage cheaply, not to bless anything. Never risk money you can't afford to lose.

Built by the Broke to Built machine. MIT.

Keywords

mcp

FAQs

Package last updated on 03 Jul 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts