Webhook alerts for EVM wallets, contract admin changes, Safe queues and custom events.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Start watching an address. kind=wallet|contract|event|safe_queue. For kind=event pass event as a signature like Transfer(address,address,uint256) or a topic0. Optional token (wallet kind: only this ERC-20) and label. Free.
Your Ledgerbell API key (from create_api_key)
0x address to watch
Discord/Slack/Telegram/ntfy webhook URL or any HTTPS JSON endpoint
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Start watching an address. kind=wallet|contract|event|safe_queue. For kind=event pass event as a signature like Transfer(address,address,uint256) or a topic0. Optional token (wallet kind: only this ERC-20) and label. Free.
| Argument | Type | Description |
|---|---|---|
| key* | string | Your Ledgerbell API key (from create_api_key) |
| kind* | string | |
| chain* | string | |
| event | string | |
| label | string | |
| token | string | |
| address* | string | 0x address to watch |
| webhook* | string | Discord/Slack/Telegram/ntfy webhook URL or any HTTPS JSON endpoint |
{
"type": "object",
"required": [
"key",
"chain",
"kind",
"address",
"webhook"
],
"properties": {
"key": {
"type": "string",
"description": "Your Ledgerbell API key (from create_api_key)"
},
"kind": {
"enum": [
"wallet",
"contract",
"event",
"safe_queue"
],
"type": "string"
},
"chain": {
"enum": [
"base",
"ethereum",
"arbitrum",
"optimism"
],
"type": "string"
},
"event": {
"type": "string"
},
"label": {
"type": "string"
},
"token": {
"type": "string"
},
"address": {
"type": "string",
"description": "0x address to watch"
},
"webhook": {
"type": "string",
"description": "Discord/Slack/Telegram/ntfy webhook URL or any HTTPS JSON endpoint"
}
}
}Adds 6 days of Pro to the given key (or creates a new Pro key if none is given): 30 watches, 1,000 alerts/day, Safe queued-transaction alerts, proxy-upgrade reports. Call again to extend. Price: $1 USDC per call via x402 (Base).
| Argument | Type | Description |
|---|---|---|
| key | string | Existing key to extend (optional) |
{
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Existing key to extend (optional)"
}
}
}Create a new free-plan API key. Save it: it is the only credential for your watches and cannot be recovered. Free.
No arguments.
{
"type": "object",
"properties": {}
}Stop and delete a watch. Free.
| Argument | Type | Description |
|---|---|---|
| id* | integer | |
| key* | string | Your Ledgerbell API key (from create_api_key) |
{
"type": "object",
"required": [
"key",
"id"
],
"properties": {
"id": {
"type": "integer"
},
"key": {
"type": "string",
"description": "Your Ledgerbell API key (from create_api_key)"
}
}
}Show plan (free/pro), limits, alerts today and all watches for a key. Free.
| Argument | Type | Description |
|---|---|---|
| key* | string | Your Ledgerbell API key (from create_api_key) |
{
"type": "object",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"description": "Your Ledgerbell API key (from create_api_key)"
}
}
}Send a test alert to a watch's webhook (5 per hour). Free.
| Argument | Type | Description |
|---|---|---|
| id* | integer | |
| key* | string | Your Ledgerbell API key (from create_api_key) |
{
"type": "object",
"required": [
"key",
"id"
],
"properties": {
"id": {
"type": "integer"
},
"key": {
"type": "string",
"description": "Your Ledgerbell API key (from create_api_key)"
}
}
}