MCP server
Xupersplit speaks Model Context Protocol. Point your AI assistant at one URL and it can set up a split, add what everyone paid, and tell you who owes whom — then hand you a link to share with the group. No account, no API key, nothing to install.
Endpoint
https://split.xuper.fun/api/mcpStreamable HTTP, stateless, unauthenticated. There is no rate-limit key to request and no dashboard to sign up for.
Claude
On the web or in the desktop app, open Customize → Connectors, click + → Add custom connector, and paste the endpoint. Leave the OAuth fields empty — there’s nothing to authenticate against.
https://split.xuper.fun/api/mcpWorks on every plan, though the free plan allows a single custom connector. Claude connects from Anthropic’s cloud rather than your device, which is fine here: this endpoint is on the public internet with nothing to allowlist. See Anthropic’s guide if the menu has moved.
ChatGPT
Turn on developer mode first — it lives in settings under the apps/connectors advanced options, and until it’s on there’s no way to add a custom connector at all. Then add a connector and paste the endpoint. When it asks how to authenticate, choose no authentication.
https://split.xuper.fun/api/mcpOpenAI has moved these settings around more than once, so follow their own instructions for the current menu path and which plans include it.
Claude Code and other clients
From a terminal:
claude mcp add --transport http xupersplit https://split.xuper.fun/api/mcpAny client that reads an MCP config file:
{
"mcpServers": {
"xupersplit": { "url": "https://split.xuper.fun/api/mcp" }
}
}Older clients that only speak stdio can bridge with mcp-remote:
{
"mcpServers": {
"xupersplit": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://split.xuper.fun/api/mcp"]
}
}
}Tools
Refer to people by name — the tools resolve names to participants, and amounts are plain decimals in the split’s currency.
create_split- Start a split and get its secret link back
get_split- Participants, expenses, balances and who should pay whom
add_expense- Record what someone paid — equally, by weight or exact amounts
record_payment- Log a payback between two people
update_entry- Change an existing expense or payment
delete_entry- Remove an expense or payment
add_participant- Add someone to an existing split
rename_participant- Change a participant’s name
remove_participant- Remove someone who isn’t on any expense
set_payment_methods- Swish, IBAN, Revolut, Lightning, USDC and the rest
update_split- Rename the split or set its currency
Receipts and shared items
A split is made of expenses, not receipt lines — so a bill where people shared some things and not others is several expenses, one per group of items the same people shared. Your assistant reads the receipt and does that division; hand it a photo and say who had what.
add_expense wine 480, split_between: [Alice, Bob, Chen]
add_expense Alice's main 245, split_between: [Alice]
add_expense taxi 300, shares: [{Alice, weight: 2}, {Bob, weight: 1}]split_between divides equally between the people you name. shares takes either a weight each — 2 for a couple — or an exact amount each, which has to add up to the total. It won’t accept a set of amounts that doesn’t, so an agent can’t quietly lose a krona, and cents that don’t divide evenly are settled by largest remainder rather than dropped.
The link is the key
A split lives at an unguessable URL, and holding that URL is what grants access — for people and agents alike. Share it with the group and nobody else. Splits created over MCP are the simple, accountless kind; a secure split (made by a signed-in user, with identity-bound participants) can’t be created or edited here, because this server deliberately has no sign-in. See the privacy policy for what’s stored and for how long, and the terms for what an agent connected here is and isn’t responsible for.
Self-hosting
The endpoint ships with the app, so a self-hosted Xupersplit gets its own MCP server at /api/mcp. The source is on GitHub under the MIT licence.
Prefer clicking? Create a split in the browser.