whooing-mcp
MCP server for Whooing (후잉) personal finance — read-only queries for spending, transactions, balance sheets, and accounts.
Setup
1. Get API Credentials
- Go to Whooing App Settings
- Note your
app_id,token, andsignature - Find your
section_idfrom the API or URL
2. Install
git clone https://github.com/jmjeong/whooing-mcp.git
cd whooing-mcp
npm install
npm run build
3. Configure Environment
export WHOOING_APP_ID=3
export WHOOING_TOKEN=your_token
export WHOOING_SIGNATURE=your_signature
export WHOOING_SECTION_ID=your_section_id
Or create a .env file (see .env.example).
Usage
stdio mode (Claude Code, Claude Desktop)
node dist/cli.js
HTTP mode (daemon)
node dist/cli.js --http --port 8182
Claude Code config (~/.mcp.json)
{
"mcpServers": {
"whooing": {
"command": "node",
"args": ["/path/to/whooing-mcp/dist/cli.js"],
"env": {
"WHOOING_APP_ID": "3",
"WHOOING_TOKEN": "...",
"WHOOING_SIGNATURE": "...",
"WHOOING_SECTION_ID": "..."
}
}
}
}
Claude Desktop config
{
"mcpServers": {
"whooing": {
"command": "node",
"args": ["/path/to/whooing-mcp/dist/cli.js"],
"env": {
"WHOOING_APP_ID": "3",
"WHOOING_TOKEN": "...",
"WHOOING_SIGNATURE": "...",
"WHOOING_SECTION_ID": "..."
}
}
}
}
Tools
| Tool | Description | Parameters |
|---|---|---|
whooing_pl | Profit & loss (spending/income by category) | start_date?, end_date?, section_id? |
whooing_entries | Transaction list with account names | start_date?, end_date?, limit?, section_id? |
whooing_balance | Balance sheet (assets, liabilities, capital) | start_date?, end_date?, section_id? |
whooing_accounts | Full account list | section_id? |
whooing_sections | List all sections (가계부) | (none) |
- Dates use
YYYYMMDDformat. Default: current month (1st to today). section_iddefaults toWHOOING_SECTION_IDenv var.- All tools are read-only.
Running as a daemon (macOS launchd)
Create ~/Library/LaunchAgents/com.whooing.mcp.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key><string>com.whooing.mcp</string>
<key>ProgramArguments</key>
<array>
<string>/opt/homebrew/bin/node</string>
<string>/path/to/whooing-mcp/dist/cli.js</string>
<string>--http</string>
<string>--port</string>
<string>8182</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>WHOOING_APP_ID</key><string>3</string>
<key>WHOOING_TOKEN</key><string>YOUR_TOKEN</string>
<key>WHOOING_SIGNATURE</key><string>YOUR_SIGNATURE</string>
<key>WHOOING_SECTION_ID</key><string>YOUR_SECTION_ID</string>
</dict>
<key>KeepAlive</key><true/>
<key>RunAtLoad</key><true/>
<key>StandardOutPath</key><string>/tmp/whooing-mcp.log</string>
<key>StandardErrorPath</key><string>/tmp/whooing-mcp.err</string>
</dict>
</plist>
chmod 600 ~/Library/LaunchAgents/com.whooing.mcp.plist
launchctl load ~/Library/LaunchAgents/com.whooing.mcp.plist
License
MIT