{
  "data": {
    "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"
      ]
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/jittee-splitbill",
    "json": "https://www.anchorterminal.com/tools/jittee-splitbill.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/jittee-splitbill.md",
    "slim": "https://www.anchorterminal.com/tools/jittee-splitbill.min.md"
  },
  "markdown": "# splitbill\n\n\u003e Indexed, not reviewed: facts from the official MCP registry and our own checks. No score, grade or rank, and not in the rankings until the panel reviews it. How the index works: https://www.anchorterminal.com/indexed/\n\n- Kind: MCP server, by jittee.com (https://jittee.com)\n- Category: Payment \u0026 monetisation platforms (https://www.anchorterminal.com/categories/payment-platforms.md)\n- Listed because: It's published in the registry under jittee.com, a namespace the registry only gives to whoever proves they control that domain.\n- What the official MCP registry says: Split bills and collect payments through PayNow (Singapore) from your AI. MCP server for SplitBill.\n\n## Facts\n\n- MCP registry: `com.jittee/splitbill` 1.0.7\n- Endpoint: https://jittee.com/mcp/splitbill (streamable HTTP)\n- Package: npm `splitbill-mcp` (stdio)\n- Source: https://github.com/JojoYay/splitbill-mcp\n- npm downloads a week: 90\n- GitHub stars: 0\n- Registry entry updated: 2026-09-18\n\n## Tools\n\n- Tools it lists (3, about 1,757 tokens of context, `tools/list` without credentials, checked 2026-10-04 22:23 UTC):\n  - `create_split` (writes): 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…\n  - `list_splits` (read-only): 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…\n  - `get_split` (read-only): Return one split in full: who owes what, whether they have paid, the notes they left, and the share URLs.\n- How its tools read to an agent (0 errors, 0 warnings, 0 notes, about 1,757 tokens; rules at https://www.anchorterminal.com/check.md; not part of the score):\n\n- JSON: https://www.anchorterminal.com/api/v1/tools/jittee-splitbill.json\n- Being indexed says nothing about quality, and nobody can pay for it. Ask for a review: https://www.anchorterminal.com/builders/#claiming\n",
  "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"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Indexed",
        "url": "https://www.anchorterminal.com/indexed/"
      },
      {
        "name": "splitbill",
        "url": ""
      }
    ],
    "description": "splitbill, an MCP server by jittee.com, listed from the official MCP registry. Indexed, not reviewed: facts and our own checks, no score or ranking. Split bills and collect payments through PayNow (Singapore) from your AI. MCP server for SplitBill.",
    "facts": [
      "not reviewed",
      "not ranked",
      "facts only"
    ],
    "h1": "splitbill",
    "image": "https://www.anchorterminal.com/assets/og/indexed.png",
    "path": "/tools/jittee-splitbill",
    "published": "",
    "section": "indexed",
    "title": "splitbill: MCP server, indexed from the official MCP registry",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/tools/jittee-splitbill"
  },
  "tokens": {
    "markdown": 650,
    "slim": 580
  },
  "version": 1
}
