{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "tool": {
    "category": "payment-platforms",
    "endpoint": "https://jittee.com/mcp/splitbill",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/jittee-splitbill.json",
    "kind": "mcp",
    "listed": "indexed",
    "liveUrl": "https://www.anchorterminal.com/api/v1/live/jittee-splitbill.json",
    "markdownUrl": "https://www.anchorterminal.com/tools/jittee-splitbill.md",
    "mcpTools": {
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 1757,
        "counts": {
          "error": 0,
          "note": 0,
          "warn": 0
        },
        "findings": []
      },
      "checkedAt": "2026-10-04T22:23:07Z",
      "count": 3,
      "note": "answered without the initialize handshake",
      "schemaTokens": 1757,
      "status": "ok",
      "tools": [
        {
          "name": "create_split",
          "title": "Create a split bill",
          "description": "Create a payment page for a shared bill and return the manage URL plus the share URLs. The PayNow recipient is already saved with this connection — never ask the user for it. All you need is a total (total) or the receipt lines (items), plus the head count (people). Children can pay half: \"4 adults and 3 kids\" is people=7 with children=3. By default the user is treated as having paid up front: they count towards the head count but get no payment link (pass i_paid=false to turn that off). Paste a share URL into the group chat and everyone sees their own amount and a PayNow QR code.",
          "inputSchema": {
            "properties": {
              "children": {
                "description": "How many of people are children. A child pays half of what an adult pays. \"4 adults and 3 kids\" is people=7, children=3. When names are given, the LAST ones on the list are taken to be the children.",
                "type": "number"
              },
              "custom": {
                "description": "Charge one person a different amount (e.g. someone who did not drink). The rest is re-split automatically.",
                "items": {
                  "properties": {
                    "amount": {
                      "type": "number"
                    },
                    "index": {
                      "description": "Position when there is no name (counting from 1; 1 is the user).",
                      "type": "number"
                    },
                    "name": {
                      "description": "A name passed in names.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "amount"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "i_paid": {
                "description": "Did the user pay up front? (default: true) They count towards the head count but are not billed.",
                "type": "boolean"
              },
              "items": {
                "description": "Receipt lines. Their sum becomes the total. Payers can see them.",
                "items": {
                  "properties": {
                    "amount": {
                      "type": "number"
                    },
                    "label": {
                      "description": "What the line is for (e.g. Food).",
                      "type": "string"
                    }
                  },
                  "required": [
                    "amount"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "my_name": {
                "description": "What to call the user in the list (default: Me).",
                "type": "string"
              },
              "names": {
                "description": "Names of the others (only the ones you know). Empty slots get filled in by the payers themselves.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "note": {
                "description": "A short note shown to the payers.",
                "type": "string"
              },
              "people": {
                "description": "How many people share the bill, INCLUDING the user who paid up front.",
                "type": "number"
              },
              "rounding": {
                "description": "Rounding. ceil-all = round everyone up to whole dollars and let the user absorb the difference; one-extra = split exactly and let one person carry the remainder.",
                "enum": [
                  "ceil-all",
                  "one-extra"
                ],
                "type": "string"
              },
              "title": {
                "description": "What the bill was for (e.g. Friday dinner). Defaults to the date and time.",
                "type": "string"
              },
              "total": {
                "description": "The total. If items are given, their sum wins.",
                "type": "number"
              }
            },
            "required": [],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "manage_url": {
                "description": "Manage URL. FOR THE ORGANISER ONLY — it can change the split.",
                "type": "string"
              },
              "next_step": {
                "description": "What to do next.",
                "type": "string"
              },
              "paynow": {
                "description": "Who collects the money (saved with this connection).",
                "properties": {
                  "name": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "target": {
                    "type": "string"
                  }
                },
                "required": [
                  "target"
                ],
                "type": "object"
              },
              "people": {
                "description": "How many share the bill, including whoever paid up front.",
                "type": "number"
              },
              "share_urls": {
                "description": "Share URLs — one per amount.",
                "items": {
                  "properties": {
                    "amount": {
                      "type": "number"
                    },
                    "people": {
                      "description": "How many people owe this amount.",
                      "type": "number"
                    },
                    "url": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "amount",
                    "people",
                    "url"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "status_url": {
                "description": "Read-only URL. Safe to share.",
                "type": [
                  "string",
                  "null"
                ]
              },
              "summary": {
                "description": "A one-line summary to read out (how much each, how many people).",
                "type": "string"
              },
              "total": {
                "description": "The total.",
                "type": "number"
              },
              "warnings": {
                "description": "Anything worth mentioning about rounding or head count.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              }
            },
            "required": [
              "summary",
              "total",
              "people",
              "manage_url",
              "share_urls",
              "paynow",
              "next_step"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": false,
            "readOnlyHint": false,
            "title": "Create a split bill"
          }
        },
        {
          "name": "list_splits",
          "title": "List the splits made with this connection",
          "description": "Return the splits created with this connection, newest first, with how much has been collected, how many people are still to pay, and the read-only URL. Use this to find a split again when the organiser has lost the link.",
          "inputSchema": {
            "properties": {
              "limit": {
                "description": "How many to return (default 10, max 50).",
                "type": "number"
              }
            },
            "required": [],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "note": {
                "type": "string"
              },
              "splits": {
                "description": "Newest first.",
                "items": {
                  "properties": {
                    "collected": {
                      "description": "How much has come in, counting what was fronted.",
                      "type": "number"
                    },
                    "created_at": {
                      "description": "When it was created (ISO 8601).",
                      "type": "string"
                    },
                    "disabled": {
                      "description": "Whether the split has been stopped.",
                      "type": "boolean"
                    },
                    "paid_people": {
                      "description": "How many have paid.",
                      "type": "number"
                    },
                    "people": {
                      "type": "number"
                    },
                    "status_url": {
                      "description": "Read-only URL.",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "title": {
                      "type": "string"
                    },
                    "total": {
                      "type": "number"
                    }
                  },
                  "required": [
                    "title",
                    "total",
                    "collected",
                    "paid_people",
                    "people"
                  ],
                  "type": "object"
                },
                "type": "array"
              }
            },
            "required": [
              "splits"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "List the splits made with this connection"
          }
        },
        {
          "name": "get_split",
          "title": "Check how a split is going",
          "description": "Return one split in full: who owes what, whether they have paid, the notes they left, and the share URLs.",
          "inputSchema": {
            "properties": {
              "admin_token": {
                "description": "The t= value from the manage URL, or the whole manage URL.",
                "type": "string"
              }
            },
            "required": [
              "admin_token"
            ],
            "type": "object"
          },
          "outputSchema": {
            "properties": {
              "collected": {
                "description": "How much has come in.",
                "type": "number"
              },
              "members": {
                "items": {
                  "properties": {
                    "adults": {
                      "description": "Adults in this household (default 1).",
                      "type": "number"
                    },
                    "amount": {
                      "type": "number"
                    },
                    "children": {
                      "description": "Children in this household. A child pays half an adult.",
                      "type": "number"
                    },
                    "comment": {
                      "description": "A note left by the payer.",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "name": {
                      "type": "string"
                    },
                    "state": {
                      "description": "One of: paid up front (not billed) / paid / unpaid.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "name",
                    "amount",
                    "state"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "paynow": {
                "properties": {
                  "name": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "target": {
                    "type": "string"
                  }
                },
                "required": [
                  "target"
                ],
                "type": "object"
              },
              "people": {
                "type": "number"
              },
              "share_urls": {
                "items": {
                  "properties": {
                    "amount": {
                      "type": "number"
                    },
                    "url": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "amount",
                    "url"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "status_url": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "title": {
                "type": "string"
              },
              "total": {
                "type": "number"
              }
            },
            "required": [
              "title",
              "total",
              "collected",
              "people",
              "members",
              "share_urls",
              "paynow"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": true,
            "openWorldHint": false,
            "readOnlyHint": true,
            "title": "Check how a split is going"
          }
        }
      ]
    },
    "name": "splitbill",
    "note": "Indexed from the official MCP registry: facts and our own checks, not reviewed, so no score, grade or rank.",
    "packages": [
      {
        "registryType": "npm",
        "identifier": "splitbill-mcp",
        "version": "1.0.7",
        "transport": "stdio"
      }
    ],
    "pageJsonUrl": "https://www.anchorterminal.com/tools/jittee-splitbill.json",
    "popularity": {
      "githubStars": 0,
      "npmWeekly": 90
    },
    "registryName": "com.jittee/splitbill",
    "remotes": [
      {
        "type": "streamable-http",
        "url": "https://jittee.com/mcp/splitbill"
      }
    ],
    "repository": "https://github.com/JojoYay/splitbill-mcp",
    "reviewed": false,
    "slug": "jittee-splitbill",
    "source": "the official MCP registry",
    "sourceUrl": "https://registry.modelcontextprotocol.io/v0.1/servers?search=com.jittee/splitbill",
    "summary": "Split bills and collect payments through PayNow (Singapore) from your AI. MCP server for SplitBill.",
    "updatedAt": "2026-09-18T10:06:57Z",
    "url": "https://www.anchorterminal.com/tools/jittee-splitbill",
    "vendor": "jittee.com",
    "vendorUrl": "https://jittee.com",
    "version": "1.0.7",
    "websiteUrl": "",
    "where": "both",
    "why": [
      "vendor"
    ]
  }
}
