Loading…
Wallet infrastructure for Ai agents. EVM + Solana. x402 payments. No KYC.
io.github.hifriendbot/agentwallet is an MCP server entry in ChatHome Skills, sourced from Official MCP Registry and scored 76/100. As a Model Context Protocol server, it exposes tools that MCP-compatible LLM clients such as Claude, Cursor, and Copilot can call directly, extending an agent's reach beyond its built-in capabilities. ChatHome Skills discovered this entry through its daily ingest of official registries and GitHub discovery queries, and re-verifies repository facts, freshness signals, and install metadata on every run. The quality score weighs official-registry presence, a working install command, license clarity, GitHub star trajectory, and repository freshness — the full formula is on the Sources page. The install command above is ready to copy. Review the last-pushed date and repository status before adding io.github.hifriendbot/agentwallet to a production agent workflow; the snapshot facts below are point-in-time values from the most recent ingest.
npx -y agentwallet-mcp@1.14.8Review the upstream source before running this command.
{
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"isLatest": true,
"updatedAt": "2026-10-26T18:06:47.79933Z",
"publishedAt": "2026-10-26T18:06:47.79933Z",
"statusChangedAt": "2026-10-26T18:06:47.79933Z"
}
},
"server": {
"name": "io.github.hifriendbot/agentwallet",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"version": "1.14.8",
"packages": [
{
"version": "1.14.8",
"transport": {
"type": "stdio"
},
"identifier": "agentwallet-mcp",
"registryType": "npm",
"environmentVariables": [
{
"name": "AGENTWALLET_USER",
"format": "string",
"description": "Hosted mode: your hifriendbot.com username"
},
{
"name": "AGENTWALLET_PASS",
"format": "string",
"isSecret": true,
"description": "Hosted mode: an AgentWallet application password from hifriendbot.com/wallet/"
},
{
"name": "AGENTWALLET_API_URL",
"format": "string",
"description": "Hosted mode: the API base (default https://hifriendbot.com/wp-json/agentwallet/v1); must be https, or http on localhost"
},
{
"name": "AGENTWALLET_WALLET_ID",
"format": "string",
"description": "Hosted mode: wallet id that pays hosted billing 402s automatically (POST /wallets, /sign, /send only); unset means never"
},
{
"name": "AGENTWALLET_DASHBOARD_URL",
"format": "string",
"description": "Hosted mode: dashboard link shown in tool text"
},
{
"name": "AGENTWALLET_PRIVATE_KEY",
"format": "string",
"isSecret": true,
"description": "Local (self-custody) mode: 0x-prefixed EVM private key; signing then happens in this process"
},
{
"name": "AGENTWALLET_KEYFILE",
"format": "string",
"description": "Local mode: path of a file holding the EVM private key (instead of AGENTWALLET_PRIVATE_KEY; not both)"
},
{
"name": "AGENTWALLET_SOLANA_KEY",
"format": "string",
"isSecret": true,
"description": "Local mode for Solana: secret key as a JSON array, base58 or base64"
},
{
"name": "AGENTWALLET_SOLANA_KEYFILE",
"format": "string",
"description": "Local mode for Solana: path of a key file (instead of AGENTWALLET_SOLANA_KEY; not both)"
},
{
"name": "AGENTWALLET_RPC_URL",
"format": "string",
"description": "Local mode: one EVM RPC for every chain"
},
{
"name": "AGENTWALLET_RPC_<chainId>",
"format": "string",
"description": "Local mode: EVM RPC per chain, e.g. AGENTWALLET_RPC_8453; eth_chainId is checked"
},
{
"name": "AGENTWALLET_SOLANA_RPC",
"format": "string",
"description": "Local mode: one Solana RPC for every cluster"
},
{
"name": "AGENTWALLET_SOLANA_RPC_<chainId>",
"format": "string",
"description": "Local mode: Solana RPC per cluster (900 mainnet, 901 devnet, 902 testnet); the genesis hash is checked"
},
{
"name": "AGENTWALLET_CHAIN_ID",
"format": "string",
"description": "Local mode: default EVM chain when a call names none (default 8453)"
},
{
"name": "AGENTWALLET_MAX_TX_NATIVE",
"format": "string",
"description": "Local mode: per-transaction ceiling in native units"
},
{
"name": "AGENTWALLET_MAX_TX_TOKEN",
"format": "string",
"description": "Local mode: per-transaction ceiling for ERC-20 and SPL transfers and approvals, in token units"
},
{
"name": "AGENTWALLET_MAX_TX_SOL",
"format": "string",
"description": "Local mode: per-transaction ceiling in SOL (also charged for a recipient token account the send creates)"
},
{
"name": "AGENTWALLET_ALLOW_UNKNOWN_TOKEN_CALLS",
"format": "string",
"description": "Local mode: 1 lets calldata the token cap cannot price reach a token contract (refused by default)"
},
{
"name": "AGENTWALLET_ALLOW_UNLIMITED_APPROVAL",
"format": "string",
"description": "1 lets an unlimited ERC-20 allowance or an NFT operator grant through while no spend policy is set (refused by default, and always refused under a policy)"
},
{
"name": "AGENTWALLET_TOKEN_DECIMALS",
"format": "string",
"description": "Pin decimals for tokens outside the registry, e.g. 8453:0x<token>=6,<mint>=9; used for amounts and caps instead of the RPC answer"
},
{
"name": "AGENTWALLET_MAX_AUTOPAY",
"format": "string",
"description": "Per-payment x402 ceiling in stablecoin units (default 1); the agent cannot raise it"
},
{
"name": "AGENTWALLET_MAX_AUTOPAY_PER_HOUR",
"format": "string",
"description": "Hosted mode: how many internal 402 auto-payments an hour (default 20; 0 disables)"
},
{
"name": "AGENTWALLET_AUTOPAY_ASSETS",
"format": "string",
"description": "Assets pay_x402 may pay in beyond registry stablecoins, e.g. 8453:native,0x<token>"
},
{
"name": "AGENTWALLET_X402_MAX_TIMEOUT",
"format": "string",
"description": "Longest x402 authorization window in seconds (default 3600; 60 to 31536000)"
},
{
"name": "AGENTWALLET_APPROVALS",
"format": "string",
"description": "Hosted mode: 0 disables emailing the wallet owner for an over-cap payment"
},
{
"name": "AGENTWALLET_PERMIT2_AUTO_APPROVE",
"format": "string",
"description": "Hosted mode: 1 approves exactly an upto payment maximum to Permit2 for registry stablecoins"
},
{
"name": "AGENTWALLET_TOKEN_RISK",
"format": "string",
"description": "0 skips the GoPlus lookup approve_token performs"
},
{
"name": "AGENTWALLET_LEGACY_PAYWALL_ORIGINS",
"format": "string",
"description": "Comma-separated https origins whose legacy-shaped 402 may be paid by an on-chain transfer proved by hash (the API host always may)"
},
{
"name": "AGENTWALLET_MAX_FEE_NATIVE",
"format": "string",
"description": "Local mode: the most a transaction may burn in fees (gas x max fee per gas), in native units; default 0.01"
},
{
"name": "AGENTWALLET_POLICY",
"format": "string",
"description": "Path of a spend policy JSON file: rolling dollar and native budgets, host, recipient, chain, asset and tool lists, and a human-approval threshold, enforced from a hash-chained ledger"
},
{
"name": "AGENTWALLET_LEDGER",
"format": "string",
"description": "Path of the append-only ledger the policy is enforced from (default: agentwallet-ledger.jsonl beside the policy file)"
},
{
"name": "AGENTWALLET_WEBHOOK_URL",
"format": "string",
"description": "https URL (or http on localhost) that receives every ledger line as it is written"
},
{
"name": "AGENTWALLET_WEBHOOK_SECRET",
"format": "string",
"isSecret": true,
"description": "HMAC-SHA256 key for the X-AgentWallet-Signature header on webhook posts"
},
{
"name": "AGENTWALLET_KEYFILE_PASSPHRASE",
"format": "string",
"isSecret": true,
"description": "Passphrase that opens an encrypted keyfile (made with `agentwallet-mcp encrypt-keyfile`)"
},
{
"name": "AGENTWALLET_KEYFILE_PASSPHRASE_FILE",
"format": "string",
"description": "Path of a file holding the keyfile passphrase (instead of AGENTWALLET_KEYFILE_PASSPHRASE; not both)"
}
]
}
],
"repository": {
"url": "https://github.com/hifriendbot/agentwallet-mcp",
"source": "github"
},
"description": "Wallet infrastructure for Ai agents. EVM + Solana. x402 payments. No KYC."
}
}