MCP Money
Used as the runtime environment for the MCP server, providing fast JavaScript execution for the wallet implementation
Enables deposits via Lightning invoices and payment of Lightning invoices through the wallet interface
Allows installation and execution of the MCP server through npm commands and package management
Integrates with Square's Goose AI assistant through configuration in Goose's config.yaml file
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Money what's my current balance across all mints?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Money

An MCP (Model Context Protocol) money implementation for Nostr using NDK (Nostr Development Kit) with Cashu ecash functionality.
Features
Cashu Wallet Integration: Full support for Cashu ecash mints and tokens
Lightning Network: Deposit via Lightning invoices and pay Lightning invoices
Nostr Zaps: Send zaps to users using npub or NIP-05 identifiers
Multi-mint Support: Manage multiple Cashu mints simultaneously
Persistent Storage: Wallet state saved to local file with mint info caching
MCP Server: Expose wallet functionality through Model Context Protocol
CLI Interface: Direct command-line usage for all wallet operations
Related MCP server: Monei MCP Server
Installation
npm install mcp-moneyUsage
MCP Server Mode (Default)
Run without arguments to start the MCP server:
npx mcp-moneyCLI Mode
Use specific commands for direct wallet operations:
# Get total balance
npx mcp-money get_balance
# Get balance per mint
npx mcp-money get_mint_balances
# Create deposit invoice
npx mcp-money deposit 1000 https://testnut.cashu.space
# Pay lightning invoice
npx mcp-money pay lnbc1...
# Send a zap
npx mcp-money zap npub1... 100 "Great post!"
# Add a new mint
npx mcp-money add_mint https://mint.example.comAuthentication
The wallet supports multiple ways to provide your Nostr private key:
Command line:
--nsec nsec1...Environment variable:
NSEC=nsec1...Config file: Automatically saved to
.wallet.jsonAuto-generate: Creates new key if none provided
MCP Tools
When running as an MCP server, the following tools are available:
get_balance: Get the total wallet balanceget_mint_balances: Get balance breakdown per mintdeposit: Create a deposit invoice for specified amount and mintpay: Pay a Lightning invoicezap: Send a zap to a useradd_mint: Add a mint to the wallet
Integration with AI Assistants
Claude Code Integration
To use this wallet with Claude Code, add it to your project's MCP configuration:
{
"mcpServers": {
"mcp-money": {
"command": "npx",
"args": ["mcp-money"]
}
}
}Or install globally and reference the binary directly:
npm install -g mcp-money{
"mcpServers": {
"mcp-money": {
"command": "mcp-money"
}
}
}Goose Integration
To use this wallet with Goose, add it to your ~/.config/goose/config.yaml:
If you have an nsec you want to use, you can set it by passing it as --nsec nsec1....
extensions:
money:
args:
- -y
- mcp-money
bundled: null
cmd: npx
description: Money for agents
enabled: true
env_keys: []
envs: {}
name: money
timeout: 300
type: stdioAfter adding the configuration, restart your AI assistant to begin using the wallet tools.
Configuration
The wallet automatically creates a .wallet.json file to store:
Private key (nsec)
Public key (npub)
Configured relays
Configured mints
Cached mint information
Architecture
Built on top of:
NDK: Nostr Development Kit for Nostr protocol interactions
NDK Wallet: Cashu wallet implementation
Nostr Tools: Low-level Nostr utilities
Bun: Fast JavaScript runtime and package manager
Security
Private keys are stored locally in
.wallet.jsonMint information is cached for performance
All Nostr communications use standard NIP protocols
Lightning payments require explicit confirmation
License
MIT
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
Support
For issues and questions, please open an issue on the GitHub repository.
Available Tools
6 toolsadd_mintC
Add a mint to the wallet
Inputs: mintUrl (required).
depositA
Create a deposit invoice (bolt11) for the specified amount and mint. Returns the invoice immediately for payment. If no mint is specified, all mints will be tried concurrently and the first successful response will be used.
Inputs: amount (required), mintUrl.
get_balanceB
Get the total wallet balance
Inputs: no named parameters.
get_mint_balancesB
Get balance breakdown per mint
Inputs: no named parameters.
payC
Pay a Lightning invoice
Inputs: bolt11 (required).
zapC
Send a zap to a user
Inputs: recipient (required), amount (required), comment.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Most tools have distinct purposes, with 'deposit' for creating invoices, 'pay' for paying invoices, and 'zap' for sending zaps. However, 'get_balance' and 'get_mint_balances' could be slightly confusing as both relate to balance retrieval, though their descriptions clarify one is total and the other per-mint.
All tool names follow a consistent verb_noun pattern (e.g., add_mint, deposit, get_balance, get_mint_balances, pay, zap), with clear and readable conventions throughout the set.
With 6 tools, the server is well-scoped for a wallet and Lightning payment system, covering key operations like mint management, deposits, payments, and balance queries without being overly sparse or bloated.
The tool set covers core wallet and Lightning operations, including mint management, deposits, payments, and balance checks. A minor gap exists in lacking explicit tools for invoice status checks or transaction history, but agents can likely work around this for basic workflows.
Maintenance
Related MCP Connectors
MCP server for the Z1N Protocol - on-chain identity for AI agents on Polygon
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
MCP server for AI agents to discover campaigns by humans and donate USDC directly on Base.
MCP server for AI dialogue using various LLM models via AceDataCloud
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server that enables AI agents to make autonomous Bitcoin Lightning Network payments using the L402 protocol. Agents can pay for API access, purchase resources, and complete transactions without human intervention — invoice comes in, sats go out, done.179MIT
- AlicenseAqualityDmaintenanceMCP server for the Monei API that gives AI agents access to wallets, transfers, crypto sends, swaps, offramp, and bill payments through natural language.2411 npmMIT
- AlicenseAqualityDmaintenanceMCP server that gives AI agents Lightning payments, L402 API access, trust verification, and service discovery.1115 npmMIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to send and receive Bitcoin over the Lightning Network using NWC or LND backends.MIT