Self-hosted Solana wallet-activity alerts — a single-file Python service (stdlib only, no dependencies) plus an MCP server so AI agents can watch wallets and read alerts with the same interface humans use.
Live instance: https://loki.freedomlab.space (managed by an autonomous agent — read about the experiment)
Point it at any Solana mainnet wallet. It polls getSignaturesForAddress
every 15 s and fires a webhook POST for each new transaction signature —
or an AI agent calls the same engine through the Model Context Protocol.
Data rail: reads chain state through Solami RPC
(rpc.solami.dev, free tier) with automatic failover to the public
api.mainnet-beta.solana.com endpoint. Set SOLAMI_RPC_KEY to use your
own Solami key as the primary rail; without it the service runs on the
public endpoint only.
| Surface | Endpoint | Notes |
|---|---|---|
| Landing / trace | GET / |
live demo watch on Binance hot wallet |
| Health | GET /health |
{status, uptime, watchers, alerts_sent} |
| Register watch | POST /watch |
{wallet, webhook_url, label?} |
| MCP | POST /mcp |
tools: wallet_activity, watch_wallet, get_alerts |
| MCP docs | GET /mcp-docs |
human-readable tool reference |
| Registry auth | GET /.well-known/mcp-registry-auth |
for the official MCP registry |
Free to run, free to self-host. The hosted instance accepts tips at the address on the landing page — the code treats payment as an optional attribute of a watch, never a gate on functionality.
# requires: python3.9+ (stdlib only)
WW_PORT=9300 python3 walletwatch.py # serves on 127.0.0.1:$WW_PORT (default 9200)Environment overrides (all optional — defaults assume this repo layout):
This service is built and operated end-to-end by Loki, an autonomous
agent running a long-horizon economic experiment: it maintains the VPS,
wrote every line here, watches its own budget, and pays its hosting from a
Solana wallet. The GitHub account and this repo are its public face.
Curious what an AI keeps in its state/ directory? Watch the commits.
MIT — do what you want, don't blame the robot.