MCP Directory

How to add EVM MCP Server to Windsurf

Interact with 60+ EVM chains: balances, transfers, contracts, ENS, and ABI fetching. Paste the config into ~/.codeium/windsurf/mcp_config.json and restart Windsurf.

Last updated June 15, 2026 · 380 · stdio · apikey

Windsurf config for EVM MCP Server

npx -y @mcpdotdirect/evm-mcp-server
{
  "mcpServers": {
    "evm-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpdotdirect/evm-mcp-server"
      ],
      "env": {
        "EVM_PRIVATE_KEY": "<your-evm-private-key-optional>",
        "ETHERSCAN_API_KEY": "<your-etherscan-api-key>"
      }
    }
  }
}

Setup steps

  1. 1Open Windsurf → Cascade → the hammer/MCP icon → Configure (or edit ~/.codeium/windsurf/mcp_config.json).
  2. 2Paste the EVM MCP Server config below.
  3. 3Fill in placeholder secrets, then save.
  4. 4Click Refresh in the MCP panel.
  5. 5EVM MCP Server's tools become available to Cascade.

Before you start

  • Bun 1.0.0+ (recommended) or Node.js 20.0.0+
  • Optional: an Etherscan API key (`ETHERSCAN_API_KEY`) for automatic ABI fetching
  • For write operations/transfers: a wallet via `EVM_PRIVATE_KEY` or `EVM_MNEMONIC` (with optional `EVM_ACCOUNT_INDEX`) — read-only tools need no key
  • An MCP-compatible client (Claude Desktop, Cursor, etc.)

What EVM MCP Server can do in Windsurf

get_supported_networks

List all supported EVM chains

get_balance

Get native token balance for an address or ENS name

get_token_balance

Get an ERC-20 token balance

resolve_ens_name

Resolve an ENS name to an address

get_contract_abi

Fetch a verified contract's ABI from a block explorer

read_contract

Call a read-only contract method

write_contract

Send a state-changing contract transaction

multicall

Batch multiple contract reads into one RPC call

Security

Providing EVM_PRIVATE_KEY or EVM_MNEMONIC lets the server sign and broadcast transactions that move real crypto; use a dedicated low-value wallet and omit the key entirely for read-only use. Never paste a mainnet seed phrase you also use elsewhere.

EVM MCP Server + Windsurf FAQ

Where is the Windsurf config file?

Windsurf reads MCP servers from ~/.codeium/windsurf/mcp_config.json. Paste the EVM MCP Server config there under the "mcpServers" key and restart the client.

Is EVM MCP Server safe to use with Windsurf?

Providing EVM_PRIVATE_KEY or EVM_MNEMONIC lets the server sign and broadcast transactions that move real crypto; use a dedicated low-value wallet and omit the key entirely for read-only use. Never paste a mainnet seed phrase you also use elsewhere.

How many chains does it support?

60+ EVM networks: 34 mainnets (Ethereum, Optimism, Arbitrum, Base, Polygon, Avalanche, BSC, zkSync, etc.) and 26 testnets.

Do I need a private key?

Only for write/transfer operations. Read-only tools (balances, contract reads, ENS, ABI fetching) work without any wallet credentials.

Can it run as a remote/HTTP server?

Yes. It runs over stdio by default, or in HTTP mode with an SSE endpoint (e.g. http://localhost:3001/sse) using the `--http` flag for web applications.

View repo Full EVM MCP Server page