Skip to main content
Glama
sarathfrancis90

splitwise-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SPLITWISE_API_KEYNoYour Splitwise API key for personal API key authentication.
SPLITWISE_CONSUMER_KEYNoYour Splitwise OAuth consumer key for OAuth2 authentication.
SPLITWISE_CONSUMER_SECRETNoYour 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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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 group_id for an exact lookup, or group_name to resolve one by a case-insensitive substring match against the caller's group names.

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 group_id/group_name or friend_id/friend_name; with none of them set, this returns expenses across the whole account. Results are paginated with limit/offset -- check has_more on the returned page rather than assuming the listing is complete.

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 split must be resolvable, by id or by name, against that group's members (for a group expense) or against the authenticated user plus their friends (for a friend expense).

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 payment flag so its UI shows a distinct "paid" icon rather than a shared cost; SplitwiseClient.create_expense does not expose that flag, so this records the settlement as an ordinary expense where from_user_id owes nothing and paid the full amount while to_user_id owes the full amount and paid nothing. The balance effect is identical to a true payment, but Splitwise's UI will display it like a regular expense.

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 delete_expense this cannot preview the comment's content beforehand -- the preview and the confirmation gate below are id-only until the delete call itself returns the comment Splitwise removed. Calling this again on a comment a prior call already deleted is a no-op: the delete request itself comes back not-found, and that is treated as already deleted rather than a hard failure.

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 manage_group_members.

delete_groupA

Permanently delete a Splitwise group.

Identify the group with group_id or group_name. Without confirm=true, this previews the group and its members and asks for confirmation before deleting. Use undelete_group to restore it.

Calling this again on a group a prior call already deleted is a no-op: looking the group up by group_id comes back not-found, and that is treated as already deleted rather than a hard failure. A group_name that no longer matches anything is not given that benefit of the doubt, since there is no way to tell "deleted" apart from "never existed" or "misspelled" by name alone.

undelete_groupA

Restore a previously deleted Splitwise group.

manage_group_membersA

Add or remove a member of a Splitwise group.

Identify the group with group_id or group_name, and the member with user_id, or email (optionally with first_name/last_name for a new invite when adding, or to disambiguate when removing). Adding executes immediately. Removing is destructive and, without confirm=true, previews who will be removed and asks for confirmation first.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
categoriesEvery expense category Splitwise supports, including subcategories, for use as create_expense's category_id.
currenciesEvery currency code Splitwise accepts for an expense's currency_code.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sarathfrancis90/splitwise-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server