splitwise-mcp 3.1.1 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@
7
7
  },
8
8
  "metadata": {
9
9
  "description": "MCP server for Splitwise — natural-language expense and group management via the Splitwise API",
10
- "version": "3.1.1"
10
+ "version": "3.2.0"
11
11
  },
12
12
  "plugins": [
13
13
  {
@@ -15,7 +15,7 @@
15
15
  "displayName": "Splitwise",
16
16
  "source": "./",
17
17
  "description": "MCP server for Splitwise — manage expenses, groups, and friends via natural language",
18
- "version": "3.1.1",
18
+ "version": "3.2.0",
19
19
  "author": {
20
20
  "name": "Chris Hall"
21
21
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "splitwise-mcp",
3
3
  "displayName": "Splitwise",
4
- "version": "3.1.1",
4
+ "version": "3.2.0",
5
5
  "description": "MCP server for Splitwise — natural-language expense and group management via the Splitwise API",
6
6
  "author": {
7
7
  "name": "Chris Hall",
package/README.md CHANGED
@@ -115,6 +115,16 @@ Add to Claude Desktop config:
115
115
  | `SPLITWISE_API_KEY` | Yes | API key from [splitwise.com/apps/register](https://secure.splitwise.com/apps/register) |
116
116
  | `SPLITWISE_OUTPUT_DIR` | No | Where `sw_get_receipt` writes downloaded receipts. Defaults to the current working directory. |
117
117
 
118
+ ## Confirmations
119
+
120
+ Every Splitwise write (creating, editing or deleting expenses, groups, friends, comments, or your profile) notifies other people, so it asks you to confirm first. A client that can show a confirmation prompt (Claude Code) shows one. On a client that cannot (claude.ai, Claude Desktop), the first call changes nothing and returns a preview of exactly what will be sent plus a `confirmToken`; only a repeat call with that token goes through, and the token is refused if anything in the request changed in between.
121
+
122
+ | variable | default | |
123
+ |---|---|---|
124
+ | `MCP_CONFIRM_MODE` | `ask-user` | What a write does on a client that cannot show a confirmation prompt (claude.ai, Claude Desktop). `ask-user`: two steps — the first call does nothing and returns a preview plus a token, and the model must get your approval in chat before calling again with it. `auto`: the same two steps, but the model may use the token after reviewing the preview itself. `refuse`: writes are refused on such clients. A client that can show prompts (Claude Code) always gets the real prompt. An unrecognised value is treated as `refuse`. |
125
+ | `MCP_CONFIRM_TTL_SECONDS` | `600` | How long a token stays valid. |
126
+ | `MCP_CONFIRM_SECRET` | random per process | Signing key; set it only if tokens must survive a server restart. |
127
+
118
128
  ## Available tools
119
129
 
120
130
  26 tools across 6 domains. All tools are prefixed `sw_`.
@@ -126,7 +136,7 @@ Add to Claude Desktop config:
126
136
  | `sw_get_current_user` | Get the authenticated user's profile |
127
137
  | `sw_healthcheck` | Verify the API key and Splitwise reachability; says which of the two failed |
128
138
  | `sw_get_user` | Get another user's profile by ID |
129
- | `sw_update_user` | Update the current user's profile fields |
139
+ | `sw_update_user` | Update the current user's name, locale or default currency (login email and password are not changeable here) |
130
140
 
131
141
  ### Groups
132
142
 
@@ -209,6 +219,7 @@ src/
209
219
  expenses.ts expense CRUD
210
220
  receipts.ts authenticated receipt download + PDF text extraction
211
221
  utilities.ts notifications, categories, currencies, comments
222
+ _confirm.ts confirmation gate shared by every write
212
223
  ```
213
224
 
214
225
  ## License