Recipient requirements differ by currency and country, and getting them wrong is the usual reason a transfer fails. Pulling the requirements first and validating the draft against them turns that into a check rather than a rejected payment. Note what this reaches: `send_money` moves real money once you point it at the live API, so leave the sandbox flag on until you mean it.
A Python gateway to the Wise API covering the recipient lifecycle. Profile selection and authentication are handled for you, so a call names a currency and an amount rather than a profile id. It runs over stdio or HTTP and ships as a Docker image.
- `list_recipients` returns everyone on the account, filtered by `profile_type` (personal or business) and optionally by currency
- `get_recipient_requirements` asks Wise what a given source-to-target currency pair actually requires, and validates draft account details against that answer
- `create_recipient` creates the recipient once the details pass, taking accountHolderName, currency, type such as iban or sort_code, and the currency-specific details
- `send_money` sends an amount to a recipient id, with an optional payment reference and source of funds
A Wise API token from your account's integrations page, set as `WISE_API_TOKEN`. `WISE_IS_SANDBOX` selects the Wise Sandbox API and `MODE` picks http or stdio. The Python package is `wise-mcp`, version 0.1.0, needing Python 3.12 or higher and uv; a Dockerfile is included and the repository ships `.mcp.json` templates for both transports.
One command plus a key — docker build -t mcp-wise ., then supply credentials
