MCP 服务器

money4k-split-bill

io.github.grulex/money4k-split-bill
生产力 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Creates and updates shared bills and records users’ selections for individual bill items.

create_bill
Create Bill
Creates a new bill.
输入模式
{'type': 'object', 'required': ['title', 'info', 'total_price', 'items'], 'properties': {'info': {'type': 'string', 'description': 'Additional bill information'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'quantity', 'unit_price', 'total_price'], 'properties': {'id': {'type': 'string', 'description': 'Item ID for update; empty for new item'}, 'name': {'type': 'string', 'description': 'Item name'}, 'quantity': {'type': 'string', 'description': 'Item quantity as numeric string'}, 'unit_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item unit price. VAT and Taxes should be included', 'additionalProperties': False}, 'total_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item total price. VAT and Taxes should be included', 'additionalProperties': False}}, 'additionalProperties': False}, 'description': 'Bill items'}, 'title': {'type': 'string', 'description': 'Bill title'}, 'total_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Bill total price, VAT and Taxes are included in this price', 'additionalProperties': False}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['id', 'owner_id', 'share_url', 'title', 'info', 'items', 'created_at', 'updated_at'], 'properties': {'id': {'type': 'string', 'description': 'Bill ID'}, 'info': {'type': 'string', 'description': 'Additional bill information'}, 'items': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'name', 'quantity', 'price', 'selections', 'selected_sum', 'remaining'], 'properties': {'id': {'type': 'string', 'description': 'Item ID'}, 'name': {'type': 'string', 'description': 'Item name'}, 'price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item price', 'additionalProperties': False}, 'quantity': {'type': 'string', 'description': 'Item quantity as numeric string'}, 'remaining': {'type': 'string', 'description': 'Remaining quantity as numeric string'}, 'selections': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['user_id', 'user_name', 'quantity', 'updated_at'], 'properties': {'user_id': {'type': 'string', 'description': 'User ID'}, 'quantity': {'type': 'string', 'description': 'Selected quantity as numeric string'}, 'user_name': {'type': 'string', 'description': 'User display name'}, 'updated_at': {'type': 'string', 'description': 'Selection update time in RFC3339 UTC'}}, 'additionalProperties': False}, 'description': 'Item selections by users'}, 'selected_sum': {'type': 'string', 'description': 'Already selected quantity as numeric string'}}, 'additionalProperties': False}, 'description': 'Bill items with selections'}, 'title': {'type': 'string', 'description': 'Bill title'}, 'owner_id': {'type': 'string', 'description': 'Bill owner user ID'}, 'share_url': {'type': 'string', 'description': 'Bill share URL'}, 'created_at': {'type': 'string', 'description': 'Creation time in RFC3339 UTC'}, 'updated_at': {'type': 'string', 'description': 'Update time in RFC3339 UTC'}}, 'additionalProperties': False}
set_bill_selections_batch
Set Bill Selections Batch
Saves current user selections for all bill items in one request.
幂等
输入模式
{'type': 'object', 'required': ['bill_id', 'selections'], 'properties': {'bill_id': {'type': 'string', 'description': 'Bill ID to update selections for'}, 'selections': {'type': 'array', 'items': {'type': 'object', 'required': ['item_id', 'quantity'], 'properties': {'item_id': {'type': 'string', 'description': 'Bill item ID'}, 'quantity': {'type': 'string', 'description': 'Selected quantity as numeric string'}}, 'additionalProperties': False}, 'description': 'Selections by item'}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['id', 'owner_id', 'share_url', 'title', 'info', 'items', 'created_at', 'updated_at'], 'properties': {'id': {'type': 'string', 'description': 'Bill ID'}, 'info': {'type': 'string', 'description': 'Additional bill information'}, 'items': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'name', 'quantity', 'price', 'selections', 'selected_sum', 'remaining'], 'properties': {'id': {'type': 'string', 'description': 'Item ID'}, 'name': {'type': 'string', 'description': 'Item name'}, 'price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item price', 'additionalProperties': False}, 'quantity': {'type': 'string', 'description': 'Item quantity as numeric string'}, 'remaining': {'type': 'string', 'description': 'Remaining quantity as numeric string'}, 'selections': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['user_id', 'user_name', 'quantity', 'updated_at'], 'properties': {'user_id': {'type': 'string', 'description': 'User ID'}, 'quantity': {'type': 'string', 'description': 'Selected quantity as numeric string'}, 'user_name': {'type': 'string', 'description': 'User display name'}, 'updated_at': {'type': 'string', 'description': 'Selection update time in RFC3339 UTC'}}, 'additionalProperties': False}, 'description': 'Item selections by users'}, 'selected_sum': {'type': 'string', 'description': 'Already selected quantity as numeric string'}}, 'additionalProperties': False}, 'description': 'Bill items with selections'}, 'title': {'type': 'string', 'description': 'Bill title'}, 'owner_id': {'type': 'string', 'description': 'Bill owner user ID'}, 'share_url': {'type': 'string', 'description': 'Bill share URL'}, 'created_at': {'type': 'string', 'description': 'Creation time in RFC3339 UTC'}, 'updated_at': {'type': 'string', 'description': 'Update time in RFC3339 UTC'}}, 'additionalProperties': False}
update_bill
Update Bill
Updates an existing bill.
幂等
输入模式
{'type': 'object', 'required': ['bill_id', 'title', 'info', 'total_price', 'items'], 'properties': {'info': {'type': 'string', 'description': 'Additional bill information'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'quantity', 'unit_price', 'total_price'], 'properties': {'id': {'type': 'string', 'description': 'Item ID for update; empty for new item'}, 'name': {'type': 'string', 'description': 'Item name'}, 'quantity': {'type': 'string', 'description': 'Item quantity as numeric string'}, 'unit_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item unit price. VAT and Taxes should be included', 'additionalProperties': False}, 'total_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item total price. VAT and Taxes should be included', 'additionalProperties': False}}, 'additionalProperties': False}, 'description': 'Bill items'}, 'title': {'type': 'string', 'description': 'Bill title'}, 'bill_id': {'type': 'string', 'description': 'Bill ID to update'}, 'total_price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Bill total price, VAT and Taxes are included in this price', 'additionalProperties': False}}, 'additionalProperties': False}
输出模式
{'type': 'object', 'required': ['id', 'owner_id', 'share_url', 'title', 'info', 'items', 'created_at', 'updated_at'], 'properties': {'id': {'type': 'string', 'description': 'Bill ID'}, 'info': {'type': 'string', 'description': 'Additional bill information'}, 'items': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['id', 'name', 'quantity', 'price', 'selections', 'selected_sum', 'remaining'], 'properties': {'id': {'type': 'string', 'description': 'Item ID'}, 'name': {'type': 'string', 'description': 'Item name'}, 'price': {'type': 'object', 'required': ['number', 'currency_code'], 'properties': {'number': {'type': 'string', 'description': 'Price numeric value as string, for example 12.50'}, 'currency_code': {'type': 'string', 'description': 'ISO 4217 currency code, for example USD, EUR, RUB'}}, 'description': 'Item price', 'additionalProperties': False}, 'quantity': {'type': 'string', 'description': 'Item quantity as numeric string'}, 'remaining': {'type': 'string', 'description': 'Remaining quantity as numeric string'}, 'selections': {'type': ['null', 'array'], 'items': {'type': 'object', 'required': ['user_id', 'user_name', 'quantity', 'updated_at'], 'properties': {'user_id': {'type': 'string', 'description': 'User ID'}, 'quantity': {'type': 'string', 'description': 'Selected quantity as numeric string'}, 'user_name': {'type': 'string', 'description': 'User display name'}, 'updated_at': {'type': 'string', 'description': 'Selection update time in RFC3339 UTC'}}, 'additionalProperties': False}, 'description': 'Item selections by users'}, 'selected_sum': {'type': 'string', 'description': 'Already selected quantity as numeric string'}}, 'additionalProperties': False}, 'description': 'Bill items with selections'}, 'title': {'type': 'string', 'description': 'Bill title'}, 'owner_id': {'type': 'string', 'description': 'Bill owner user ID'}, 'share_url': {'type': 'string', 'description': 'Bill share URL'}, 'created_at': {'type': 'string', 'description': 'Creation time in RFC3339 UTC'}, 'updated_at': {'type': 'string', 'description': 'Update time in RFC3339 UTC'}}, 'additionalProperties': False}
已添加
update_bill
2026年9月17日 12:42
已添加
set_bill_selections_batch
2026年9月17日 12:42
已添加
create_bill
2026年9月17日 12:42