sw_create_expense
Create a Splitwise expense with equal or custom per-person splits. Confirm the preview before the expense is added to a group.
Instructions
Create a Splitwise expense. Use split_equally:true to split evenly among group members, or provide a users array for custom per-person splits (paid_share and owed_share as decimal strings like "25.00"). cost must be a decimal string. Asks the user to confirm first: a confirmation prompt where the client supports one; otherwise the first call returns a preview and a confirmToken, and only a repeat call with that token proceeds (see MCP_CONFIRM_MODE).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cost | Yes | Total cost as decimal string, e.g. "25.00" | |
| date | No | ISO 8601 datetime | |
| users | No | Custom split (mutually exclusive with split_equally). Full list of participants required. | |
| details | No | Notes | |
| group_id | Yes | Group to add expense to (use 0 for no group) | |
| category_id | No | Category id from sw_get_categories | |
| description | Yes | Short description of the expense | |
| confirmToken | No | ONLY for the two-step confirmation fallback (a client without MCP elicitation). The confirmToken from this same tool's phase-1 "confirmation-required" response, passed back ONLY after the user has seen that preview and explicitly approved it in chat — never on the first call, never invented, never reused. Call again with the same arguments. Ignored when the client supports elicitation. | |
| currency_code | No | Currency code, e.g. "USD". Defaults to group/user default. | |
| split_equally | No | Split equally among group members (mutually exclusive with users) |