splitwise-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SPLITWISE_API_KEY | No | Your Splitwise API key for personal API key authentication. | |
| SPLITWISE_CONSUMER_KEY | No | Your Splitwise OAuth consumer key for OAuth2 authentication. | |
| SPLITWISE_CONSUMER_SECRET | No | Your Splitwise OAuth consumer secret for OAuth2 authentication. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Return the profile of the Splitwise account this server is authenticated as. |
| list_groupsA | List every Splitwise group the authenticated user belongs to. |
| get_groupA | Fetch a single group's detail, including its current members. Provide |
| list_friendsA | List every Splitwise friend of the authenticated user, with current balances. |
| list_expensesA | List expenses, optionally scoped to one group or one friend. Pass at most one of |
| get_expenseA | Fetch one expense's full detail, including its splits and comment thread. |
| create_expenseA | Create a new expense, split among a group or with a single friend. Exactly one of group_id/group_name or friend_id/friend_name must be
given. Every participant in |
| update_expenseA | Update an existing expense's description, amount, split, date, or category. Changing amount requires also supplying split, so the new total is divided unambiguously; there is no way to change amount alone without this tool guessing how to redistribute it. |
| delete_expenseA | Permanently delete an expense. |
| undelete_expenseB | Restore a previously deleted expense. |
| settle_upA | Record a payment from one user to another, settling part of their balance. Exactly one of from_user_id/from_user_name and one of to_user_id/ to_user_name must be given for each side, resolved against the settling group's members (if group_id/group_name given) or against the authenticated user plus their friends. Splitwise represents a cash payment as an expense with a |
| add_commentB | Post a comment on an expense. |
| delete_commentA | Permanently delete a comment. Splitwise has no endpoint to fetch a single comment by id, so unlike
|
| create_groupA | Create a new Splitwise group and optionally add its initial members. Members who cannot be added (e.g. a malformed invite) do not roll
back the group itself; the error lists which ones failed so they can
be retried with |
| delete_groupA | Permanently delete a Splitwise group. Identify the group with Calling this again on a group a prior call already deleted is a
no-op: looking the group up by |
| undelete_groupA | Restore a previously deleted Splitwise group. |
| manage_group_membersA | Add or remove a member of a Splitwise group. Identify the group with |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| categories | Every expense category Splitwise supports, including subcategories, for use as create_expense's category_id. |
| currencies | Every currency code Splitwise accepts for an expense's currency_code. |
TDQS
Scored across 17 tools
Each tool maps to a distinct resource-action pair, so there is no real overlap: expense CRUD, group lifecycle, member management, comments, settlements, and account info are cleanly separated. Even pairs like delete_expense/undelete_expense and delete_group/undelete_group are complementary opposites rather than ambiguous alternatives.
The naming mostly follows a clear verb_noun pattern: list_expenses, get_group, create_expense, update_expense, delete_comment, manage_group_members. Minor deviations like whoami and settle_up are readable and conventional, so the set remains predictable despite not being perfectly uniform.
At 17 tools, this is slightly above the typical 3-15 range, but each tool covers a genuine operation needed for Splitwise workflows. The count feels justified rather than bloated, since expense, group, comment, member, settlement, and account concerns all have dedicated actions.
The expense and group lifecycles are well covered with create, read, list, update, delete, and undelete operations, plus member management, comments, settlements, and friend/account views. Minor gaps exist, such as no update_group and no standalone comment listing, but get_expense exposes the comment thread and the missing operations are not critical dead ends.