About Eth Labels
Eth Labels is an MCP server published by dawsbot in the Finance category: ๐ A public dataset of crypto addresses labeled.
The repository has 302 stars and 59 forks, with the last commit 22 days ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/dawsbot/eth-labelsThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (3)
dataset_statsGet dataset statistics โ 115k+ accounts, 54k+ tokens, 170k+ total entries
Parameters not published.
lookup_addressLook up any Ethereum/EVM address to get its label and name tag
Parameters not published.
search_labelsSearch by project name, label, or token symbol (e.g. "uniswap", "binance", "USDC")
Parameters not published.
Ask AI
Ask AI about Eth Labels
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 3 hours ago. Heuristics on the source, not an audit.
- โREADME presentThe repository ships documentation.
- โLicense declaredUsable under a stated license.
- โTests presentA test suite exists in the repository.
- โDependencies pinnedA lockfile pins dependency versions.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
1 check has not been run yet.
Releases
README
API
Run it locally or serve it yourself
Ethereum
Base
Arbitrum
Optimism
Binance Smart Chain
Gnosis Chain
Celo
MCP Server
Look up labels for Ethereum and EVM addresses from Claude, Cursor, Windsurf, VS Code, and other MCP-compatible clients.
169k+ labeled addresses and tokens across EVM chains. No clone. No build. Just run.
Requires: Node.js 18+
Setup
Pick your AI client and follow the instructions. Every option uses the eth-labels-mcp npm package โ no need to clone this repo.
claude mcp add eth-labels-mcp -- npx -y eth-labels-mcp
On native Windows (not WSL), use:
claude mcp add eth-labels-mcp -- cmd /c npx -y eth-labels-mcp
Edit your config file:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
{
"mcpServers": {
"eth-labels": {
"command": "npx",
"args": ["-y", "eth-labels-mcp"]
}
}
}
Restart Claude Desktop after saving.
Add to .cursor/mcp.json in your project root (or open Settings โ Features โ MCP Servers โ Add):
{
"mcpServers": {
"eth-labels": {
"command": "npx",
"args": ["-y", "eth-labels-mcp"]
}
}
}
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"eth-labels": {
"command": "npx",
"args": ["-y", "eth-labels-mcp"]
}
}
}
Add to .vscode/mcp.json in your project:
{
"servers": {
"eth-labels": {
"type": "stdio",
"command": "npx",
"args": ["-y", "eth-labels-mcp"]
}
}
}
Open Cline โ MCP Servers โ Configure, then add:
{
"mcpServers": {
"eth-labels": {
"command": "npx",
"args": ["-y", "eth-labels-mcp"]
}
}
}
Verify it works
Once configured, ask your AI:
Search for "uniswap" addresses
If it returns labeled Uniswap addresses โ you're in. ๐
Tools
| Tool | Description |
|---|---|
lookup_address |
Look up any Ethereum/EVM address to get its label and name tag |
search_labels |
Search by project name, label, or token symbol (e.g. "uniswap", "binance", "USDC") |
dataset_stats |
Get dataset statistics โ 115k+ accounts, 54k+ tokens, 170k+ total entries |
Example
Ask your AI: "Who owns 0xa6baaed2053058a3c8f11e0c7a9716304454b09e?"
Q & A
- Where does this data come from?
- This data is already organized by the kind folks at Etherscan. Unfortunately that data is not accessible for researchers, so we've copied the data out and into a more shareable format here.
Star History
Development
To use this API locally, start it like this:
bun run dev:api
Documentation for the API is available via swagger at http://localhost:3000/swagger
Automated Scraping
This project includes an automated scraper that logs into Etherscan and pulls label data. No manual cookie copy-paste required!
Setup
- Create a
.envfile in the project root (see.env.example):
ETHERSCAN_USERNAME=your_etherscan_username
ETHERSCAN_PASSWORD=your_etherscan_password
- Start Chrome with remote debugging (one of the following):
Option A: Clawdbot Managed Browser (recommended if you use Clawdbot)
- Clawdbot runs a managed Chrome instance at
ws://127.0.0.1:18800 - The scraper will automatically detect and use it
Option B: Manual Chrome with DevTools
# macOS
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
# Linux
google-chrome --remote-debugging-port=9222
Option C: Manual Cookie (fallback) If you can't run Chrome with remote debugging, you can manually extract cookies:
-
Log into Etherscan in your browser
-
Open DevTools โ Application โ Cookies โ https://etherscan.io
-
Copy all cookies as a single string:
name1=value1; name2=value2; ... -
Add to
.env:ETHERSCAN_COOKIE=your_cookie_string_here -
Run the scraper:
bun run pull
How it works
The scraper uses Chrome DevTools Protocol (CDP) to connect to an already-running Chrome instance:
- Detects Chrome running at port 18800 (Clawdbot) or 9222 (standard DevTools)
- Connects via CDP (not launching a new browser โ avoids Cloudflare automation detection!)
- Opens a new tab and navigates to etherscan.io/login
- Fills in credentials from environment variables
- Waits for you to solve the CAPTCHA (if present)
- Extracts cookies using CDP (including httpOnly cookies)
- Closes only the login tab (browser stays running)
- Uses those cookies for all subsequent requests
Why CDP? Connecting to a real Chrome instance avoids Cloudflare's automation detection. Unlike Puppeteer's launch(), which gets blocked, connecting to an existing browser looks like a normal browsing session.
README fetched from the repository 3 hours ago. The original is authoritative.