{"what":"Donate to GiveWell, which directs money to evidence-backed global health charities.","why":"A human can use a card checkout. An agent cannot. This makes donating a function call.","cost_effectiveness":"GiveWell estimates its top charities avert a death for roughly $3,000-$5,500.","source_of_truth":"https://www.givewell.org/about/donate/cryptocurrency","destinations":{"BTC":"3Jrros5wN2DR8pL8XoWbtRtYL6yjKRFR9y","ETH":"0x4647c3B4C5BA4EfA6D8197331de00c26Ce36E8E6","USDC":"0xDCE1fb0b1a897E7E2A0433894C07ef6780f54831","note":"USDC uses a DIFFERENT address than ETH. Crossing them risks permanent loss."},"donate_directly":{"how":"Send any amount to the address above for your asset. That is a complete donation; nothing else is required.","chains_for_usdc":{"ethereum":{"usdc_contract":"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48","documented_by_givewell":true},"base":{"usdc_contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","documented_by_givewell":false}}},"relay_a_signed_transaction":{"POST /api/relay":{"body":{"txHex":"<raw signed BTC tx hex>"}},"POST /api/eth-relay":{"body":{"rawTx":"0x<raw signed ETH tx hex>"}},"guarantee":"The server rejects any transaction that does not pay GiveWell, then broadcasts. It never sees a key."},"donate_without_gas":{"GET /api/relay-permit":"Returns the relayer address to name as `spender`, plus per-chain minimums.","POST /api/relay-permit":{"body":{"owner":"0x…","value":"<6-decimal string>","deadline":"<unix seconds>","signature":"0x…","chain":"ethereum|base"}},"why":"ERC-20 transfers are paid in native ETH, so a USDC-only wallet is normally stuck. This unsticks it.","guarantee":"No private key is transmitted. The permit authorises one exact amount to GiveWell before a deadline you choose.","note":"Sponsored gas is real money, so donations below a per-chain minimum are refused. Base is far cheaper to sponsor than mainnet."},"donate_from_this_server":{"GET|POST /api/pay":"No parameters. Donates every funded wallet, every asset, every chain.","POST /api/eth-donate":{"body":{"wallet":"<name>","amountWei":"<decimal string, optional>"}},"POST /api/usdc-donate":{"body":{"wallet":"<name>","amountUnits":"<6-decimal string, optional>","chain":"ethereum|base"}},"POST /api/donate":{"body":{"wallet":"<name>","amountSats":"<integer, optional>"}},"omit_amount":"Omitting the amount donates the full balance minus network fees.","authorization":"None required. The destination is fixed in code and no parameter can redirect funds."},"for_agents":{"mcp_server":"npx -y givewell-donate","tools":["get_donation_address","prepare_donation","broadcast_signed_donation","check_donation_balance","donate_to_givewell"],"simplest":"donate_to_givewell({ asset, amount }) — picks the transfer path and handles gas itself.","env":"GIVEWELL_DONOR_KEY — a wallet the operator has given the agent authority to spend.","autonomy":"Once configured, no per-donation approval is needed. The agent chooses the amount and acts."},"honest_caveats":["All transfers are real, mainnet, and irreversible. There is no test mode and no undo.","USDC on Base is supported and ~1000x cheaper in gas than mainnet, but GiveWell does not document Base. Funds reach their address; attribution is not guaranteed. Prefer Ethereum mainnet when the donation must be credited.","ERC-20 transfers need native ETH for gas on the same chain. Gas cannot be paid from a USDC balance — unless you use the gasless permit path above, where a relayer pays it for you.","Verify the addresses above against givewell.org yourself. A wrong address is unrecoverable, and you should not take this endpoint at its word."]}