Watchdog
Who can change a Solana program or EVM contract, dependency advisories, scans. Paid per call (x402).
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
watchdog-mcpclaude mcp add watchdog -e 'WATCHDOG_SOLANA_PRIVATE_KEY=<your watchdog_solana_private_key>' -e 'WATCHDOG_EVM_PRIVATE_KEY=<your watchdog_evm_private_key>' -e 'WATCHDOG_BUDGET_USD=5' -e 'WATCHDOG_MAX_PER_CALL_USD=1' -- npx -y watchdog-mcp@0.1.0
{
"mcpServers": {
"watchdog": {
"command": "npx",
"args": [
"-y",
"watchdog-mcp@0.1.0"
],
"env": {
"WATCHDOG_SOLANA_PRIVATE_KEY": "<your watchdog_solana_private_key>",
"WATCHDOG_EVM_PRIVATE_KEY": "<your watchdog_evm_private_key>",
"WATCHDOG_BUDGET_USD": "5",
"WATCHDOG_MAX_PER_CALL_USD": "1"
}
}
}
}
Variables d'environnement
WATCHDOG_SOLANA_PRIVATE_KEYsecret Base58 key of a dedicated Solana wallet holding a little USDC, to pay Solana Watchdog calls. Optional.WATCHDOG_EVM_PRIVATE_KEYsecret Hex key of a dedicated Base wallet holding a little USDC, to pay EVM Watchdog calls. Optional.WATCHDOG_BUDGET_USDMaximum total spend per server process, in USD. Default 5.WATCHDOG_MAX_PER_CALL_USDMaximum single payment, in USD. Default 1.
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
watchdog-mcp
An MCP server for Solana Watchdog and EVM Watchdog. It gives an agent the security checks it needs at the moment it decides: before signing for a program, before approving a contract, before adding a dependency. Each paid call costs cents in USDC and is paid automatically over x402, from a wallet you provide, within limits you set.
Results are checks, not audits.
Tools
| Tool | Use it | Price |
|---|---|---|
solana_program_authority | before signing for a Solana program: who can replace its code (single key, Squads multisig with threshold and time lock, DAO, immutable), last deploy, verified build, security.txt | $0.05 (Solana) |
evm_contract_control | before approving or depositing on Base / Robinhood Chain: proxy kind, live implementation, who controls upgrades and ownership (key, Safe, timelock), Sourcify verification | $0.05 (Base) |
dependency_advisories | before adding a dependency: advisories for a Cargo.lock, package-lock.json or yarn.lock on disk, or a package list | $0.01 |
scan_repo | before a release: a full scan of a public GitHub repo (Rust/Anchor or Solidity) | $0.50 |
get_scan_report | status and report of a scan | free |
watch_create | to be alerted for 30 days when a program, contract or lockfile changes, by signed webhook | $0.90 |
watch_status | events of a watch, or cancel it | free |
watchdog_wallet | which wallets are set, caps, what was spent | free |
An address that holds no program or contract is not charged. A dependency check is settled only once its answer exists.
Install
Claude Code:
claude mcp add watchdog \
-e WATCHDOG_SOLANA_PRIVATE_KEY=<base58 key of a Solana wallet holding a little USDC> \
-e WATCHDOG_EVM_PRIVATE_KEY=<hex key of a Base wallet holding a little USDC> \
-- npx -y watchdog-mcp
Claude Desktop, Cursor and other clients (mcpServers JSON):
{
"mcpServers": {
"watchdog": {
"command": "npx",
"args": ["-y", "watchdog-mcp"],
"env": {
"WATCHDOG_SOLANA_PRIVATE_KEY": "…",
"WATCHDOG_EVM_PRIVATE_KEY": "…",
"WATCHDOG_BUDGET_USD": "5"
}
}
}
}
From a clone of this repository, scripts/add-to-claude-code.sh does the Claude Code step for you: it reads the Solana key from the clipboard, checks it without printing it, and registers the server.
Both keys are optional. Without a key for a chain, its tools return the price and how to pay instead of an answer.
Use a dedicated wallet that holds only what you are willing to spend on checks. No SOL or ETH is needed: the x402 facilitator pays the network fee.
Configuration
| Variable | Default | |
|---|---|---|
WATCHDOG_SOLANA_PRIVATE_KEY | none | Solana wallet, base58 (as Phantom exports it) |
WATCHDOG_EVM_PRIVATE_KEY | none | Base wallet, hex |
WATCHDOG_MAX_PER_CALL_USD | 1 | refuse any single payment above this |
WATCHDOG_BUDGET_USD | 5 | refuse payments beyond this total, per server process |
WATCHDOG_SOLANA_RPC_URL | public mainnet | RPC used to build Solana payments |
What protects your wallet
Every payment is screened before anything is signed:
- it must go to the Watchdog merchant wallet of that service, in USDC, on the expected network. A server that asked to be paid elsewhere would be refused;
- it must fit under the per-call cap and the remaining session budget;
- scan and watch access tokens are only ever sent back to the Watchdog that issued them.
Keys never appear in tool output or errors, including when a key is malformed or of the wrong chain.
License
MIT
Questions fréquentes
Qu'est-ce que Watchdog ?
Who can change a Solana program or EVM contract, dependency advisories, scans. Paid per call (x402).
Comment installer Watchdog ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add watchdog -e 'WATCHDOG_SOLANA_PRIVATE_KEY=<your watchdog_solana_private_key>' -e 'WATCHDOG_EVM_PRIVATE_KEY=<your watchdog_evm_private_key>' -e 'WATCHDOG_BUDGET_USD=5' -e 'WATCHDOG_MAX_PER_CALL_USD=1' -- npx -y watchdog-mcp@0.1.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Watchdog ?
Oui. Il attend WATCHDOG_SOLANA_PRIVATE_KEY, WATCHDOG_EVM_PRIVATE_KEY, à renseigner dans sa configuration.
Watchdog est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient Watchdog ?
Il est publié par OxToF. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.