CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

EVM Wallet Signer

nikicat/mcp-wallet-signer
1STDIOregistry active
Summary

Routes blockchain transactions through your actual browser wallet instead of asking for private keys in config files. Exposes MCP tools for EVM chains (MetaMask, Rabby) via EIP-6963 and TRON via TronLink. You get connect_wallet, send_transaction, sign_message, sign_typed_data, plus balance lookups that work without opening a browser. Each signing operation spawns a local HTTP server and opens an approval page where you review the transaction in your wallet extension. Works with Ethereum, Polygon, Arbitrum, Base, and other EVM chains plus TRON mainnet and testnets. Reach for this when you want Claude to interact with smart contracts but need to approve every action yourself.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

MCP Wallet Signer

npm version License: MIT MCP Badge

Your private keys never leave your browser. Every transaction requires explicit user approval in your wallet.

Most blockchain MCPs require you to paste a private key into a config file — giving the AI agent full, unsupervised access to your funds. MCP Wallet Signer takes a different approach: it routes every transaction to your actual browser wallet — EVM wallets (MetaMask, Rabby, …) via EIP-6963, and TRON via TronLink — so you review and approve each action just like any other dapp interaction. No keys in config files, no risk of silent transactions.

Compatible With

Claude Desktop Claude Code Cursor Windsurf

Works with any MCP-compatible client via stdio transport.

Installation

Claude Code CLI

claude mcp add wallet-signer -- npx -y mcp-wallet-signer

(The name wallet-signer is just the MCP server identifier — pick anything you like. Legacy evm-wallet still works for users who installed before TRON support landed.)

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "wallet-signer": {
      "command": "npx",
      "args": ["-y", "mcp-wallet-signer"]
    }
  }
}

Run directly

npx -y mcp-wallet-signer
pnpx mcp-wallet-signer
bunx mcp-wallet-signer

MCP Tools

EVM (MetaMask / Rabby / any EIP-6963 wallet)

ToolDescriptionBrowser Required
connect_walletConnect wallet, return addressYes
send_transactionSend ETH/tokens, call contractsYes
sign_messageSign arbitrary message (personal_sign)Yes
sign_typed_dataSign EIP-712 typed dataYes
get_balanceRead ETH balance (via RPC)No
get_token_balanceRead ERC-20 balance (balanceOf/decimals/symbol)No

TRON (TronLink)

ToolDescriptionBrowser Required
tron_connect_walletConnect TronLink, return Base58 (T…) addressYes
tron_send_transactionNative TRX transferYes
tron_trigger_contractTRC-20 / smart-contract call via triggerSmartContractYes
tron_sign_messageSign arbitrary message (signMessageV2)Yes
tron_sign_typed_dataSign TIP-712 typed dataYes
tron_get_balanceRead TRX balance (via TronGrid)No
tron_get_token_balanceRead TRC-20 balance (balanceOf/decimals/symbol)No

How It Works

  1. Agent calls an MCP tool (e.g., send_transaction or tron_send_transaction)
  2. Server opens browser to a local signing page (EVM and TRON each run their own HTTP bridge on a separate port)
  3. User connects wallet and approves the action — in MetaMask/Rabby/etc. for EVM, in TronLink for TRON
  4. Result (address, tx hash, signature) returned to agent

Screenshots below show the EVM approval UI; the TRON UI mirrors the same card layout with TronLink-specific copy and TRX denomination.

Connect WalletSend TransactionSign Message
Connect WalletSend TransactionSign Message

Supported Chains

Built-in RPC URLs for:

  • Ethereum (1)
  • Sepolia (11155111)
  • Polygon (137)
  • Arbitrum One (42161)
  • Optimism (10)
  • Base (8453)
  • Avalanche (43114)
  • BNB Smart Chain (56)

Supported TRON Networks

  • Tron Mainnet
  • Shasta Testnet
  • Nile Testnet

Configuration

Environment variables (optional):

VariableDescriptionDefault
EVM_MCP_PORTEVM HTTP server port3847
EVM_MCP_DEFAULT_CHAINDefault EVM chain ID1
TRON_MCP_PORTTRON HTTP server port3848
TRON_MCP_DEFAULT_NETWORKDefault TRON network (mainnet/shasta/nile)mainnet

Packages

This is a monorepo with three published packages plus one internal one:

PackagePublishedDescription
wallet-signer-coreinternalChain-agnostic primitives (PendingStore, HTTP bridge, errors). Bundled into each chain package at build time — never installed directly.
browser-evm-signernpm + JSRStandalone library — sign EVM transactions via MetaMask/Rabby/any EIP-6963 wallet
browser-tron-signernpm + JSRStandalone library — sign TRON transactions via TronLink
mcp-wallet-signernpmMCP server — exposes the EVM and TRON signers as MCP tools for AI agents

Use the chain-specific packages directly if you want browser-based signing in your own Node.js/Deno app without MCP.

Development

Requires Deno v2.0+.

# Install all dependencies
deno task install:all

# Type check + lint + format check (all packages)
deno task check:all

# Run tests
deno task test:all

# Build all npm packages
deno task build:all

# Format code
deno task fmt

Manual signing CLI

A signer-cli script triggers the same flows that the MCP tools do, but from your shell — useful for smoke-testing against a real wallet without going through an MCP client.

# Discover subcommands
deno task cli                                 # top-level help
deno task cli evm help                        # EVM subcommands
deno task cli tron help                       # TRON subcommands
deno task cli evm send-transaction --help     # subcommand flags

# Examples (each opens a browser; sign in MetaMask / TronLink)
deno task cli evm  connect --chain 1
deno task cli evm  send-transaction --to 0x... --value 1000000000000000000
deno task cli evm  sign-message --message "hello"
deno task cli tron connect --network mainnet
deno task cli tron send-trx --to T... --amount 1000000
deno task cli tron trigger-contract --contract T... \
    --selector 'transfer(address,uint256)' \
    --params '[{"type":"address","value":"T..."},{"type":"uint256","value":"1000000"}]'
deno task cli tron get-balance --address T...   # no browser

The approval URL is always printed up-front, and every browser-interacting subcommand (both chains, every flow except get-balance which doesn't open a browser) accepts --browser <name> and --print:

# Pick a specific browser (the one that has TronLink / MetaMask installed)
deno task cli evm  connect --browser firefox
deno task cli evm  sign-message --message "hi" --browser chrome
deno task cli tron send-trx --to T... --amount 1000000 --browser edge
deno task cli tron trigger-contract --contract T... --selector 'transfer(address,uint256)' \
    --params '[...]' --browser /usr/bin/brave-browser

# Print the URL only — don't auto-open anything. Open it manually wherever you like
deno task cli evm  send-transaction --to 0x... --value 1000 --print
deno task cli evm  sign-typed-data --json typed.json --print
deno task cli tron connect --network shasta --print
deno task cli tron sign-message --message "hello" --print

--browser <name> accepts chrome, firefox, edge, safari, or a binary path. Useful when your system default doesn't have the wallet extension installed.

Per-package deno task trigger ... works too if you're already inside packages/browser-evm-signer/ or packages/browser-tron-signer/.

Project Structure

tools/
└── signer-cli.ts            # Root dispatcher → per-package trigger CLIs

packages/
├── wallet-signer-core/      # Chain-agnostic primitives (npm: wallet-signer-core)
│   ├── src/                  # PendingStore, HTTP bridge, errors, browser opener
│   ├── tests/                # Core unit tests
│   └── scripts/build-npm.ts
│
├── browser-evm-signer/      # EVM signing library (npm: browser-evm-signer)
│   ├── src/                  # EVM types, viem transport, EIP-6963 approval UI
│   ├── tools/trigger.ts      # Manual-trigger CLI
│   ├── tests/                # Unit, e2e (HTTP), and e2e-browser (Playwright) tests
│   └── scripts/build-npm.ts
│
├── browser-tron-signer/     # TRON signing library (npm: browser-tron-signer)
│   ├── src/                  # TRON types, TronLink approval UI, TronGrid balance fetch
│   ├── tools/trigger.ts      # Manual-trigger CLI
│   ├── tests/                # Unit, e2e (HTTP), and e2e-browser (Playwright) tests
│   └── scripts/build-npm.ts
│
└── mcp-wallet-signer/       # MCP server layer (npm: mcp-wallet-signer)
    ├── src/                  # MCP tool definitions + CLI entry
    └── scripts/build-npm.ts

A Deno workspace declaration at the root makes each member's import map visible to root-level scripts (notably tools/signer-cli.ts resolving wallet-signer-core).

All packages are built with dnt and use node: builtins (no Deno-specific APIs) so the npm bundles run under Node.js.

License

MIT

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Configuration

EVM_MCP_PORTdefault: 3847

HTTP server port for the browser approval UI (default: 3847)

EVM_MCP_DEFAULT_CHAINdefault: 1

Default EVM chain ID (default: 1 for Ethereum mainnet)

Categories
Web & Browser Automation
Registryactive
Packagemcp-wallet-signer
TransportSTDIO
UpdatedFeb 10, 2026
View on GitHub

Related Web & Browser Automation MCP Servers

View all →
Browser Use

therealtimex/browser-use

AI browser automation - navigate, click, type, extract content, and run autonomous web tasks
Fetcher

jae-jae/fetcher-mcp

Fetch web page content using a Playwright headless browser with intelligent content extraction and Markdown/HTML output.
1k
Puppeteer

merajmehrabi/puppeteer-mcp-server

This MCP server provides browser automation capabilities through Puppeteer, allowing interaction with both new browser instances and existing Chrome windows.
449
Playwright Mcp Server

com.thenextgennexus/playwright-mcp-server

Headless browser primitives for AI agents when sites need real JS rendering.
Browser

saik0s/mcp-browser-use

Provides a browser automation MCP server that lets AI assistants control a real browser for navigation, form interaction, data extraction, and more.
933
Browser Use

kontext-dev/browser-use-mcp-server

Browse the web, directly from Cursor etc.
822