Wallet
A key of your own on Base: an address to hold USDC, what it holds, and paying for a tool on another server with it
Calling it
This is your own data, so a call has to say who you are. Make a token at /token and send it as a header.
curl -H "Authorization: Bearer $MU_TOKEN" \ https://mu-mcp.yvangodard.me/api/v1/wallet/list
Methods
GET /api/v1/wallet/addressYour own address on Base, to receive USDC. Created the first time you ask. Funds sent on any other chain land at the same address there and cannot be reached from here
curl \ -H "Authorization: Bearer $MU_TOKEN" \ "https://mu-mcp.yvangodard.me/api/v1/wallet/address"
GET /api/v1/wallet/balanceWhat your wallet holds in USDC on Base. Says so plainly when the chain could not be reached, because that is not the same as holding nothing
curl \ -H "Authorization: Bearer $MU_TOKEN" \ "https://mu-mcp.yvangodard.me/api/v1/wallet/balance"
GET /api/v1/wallet/listWhich priced servers this wallet is allowed to pay, by name. Pass one of these names to wallet_pay
curl \ -H "Authorization: Bearer $MU_TOKEN" \ "https://mu-mcp.yvangodard.me/api/v1/wallet/list"
POST /api/v1/wallet/payCall a tool on one of those servers and pay for it from your wallet if it asks. Nothing is spent when the tool is free. Every payment is capped per call and per day, so a server cannot name any price it likes
| Argument | Type | Description |
|---|---|---|
server | string | Which server to call, by the name wallet_list gives. Defaults to this instance |
tool * | string | The tool to call on that server, e.g. web_search |
args | object | Arguments for that tool |
curl -X POST \
-H "Authorization: Bearer $MU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"tool":"tool"}' \
https://mu-mcp.yvangodard.me/api/v1/wallet/payThe same methods are tools over MCP, and every service on this instance is in one reference. Same method, same answer, same price.


