ギャザリングMCPサーバー
集まりや経費の共有を管理するためのモデル コンテキスト プロトコル サーバー。
依存関係管理
このプロジェクトでは、Pythonの依存関係管理にpip
ではなくuv
を使用しています。この変更は、 Model Context Protocol Python SDKの依存関係要件を満たすために必要です。
uv
がインストールされていることを確認するか、pip 経由でインストールします。
プロジェクトの依存関係をインストールするには:
概要
Gatherings MCPサーバーは、AIアシスタントがMachine Conversation Protocolを介してGatheringsアプリケーションと対話するためのAPIを提供します。これにより、AIシステムは、社交イベント、外出、または参加者間で費用を分担するあらゆる集まりにおける共同費用の管理をユーザーを支援することができます。
特徴
- 複数のメンバーとの集まりを作成および管理する
- 特定のメンバーの経費を追加する
- 公正な払い戻し額を計算する
- 支払いと払い戻しを記録する
- 詳細な支払い概要を生成する
- 集まりにメンバーを追加/削除する
- 必要に応じてメンバーの名前を変更する
インストール
前提条件
- Python 3.8以上
- SQLアルケミー
- MCP SDK
設定
- このリポジトリをクローンします:
- 必要な依存関係をインストールします。
- 環境変数を設定します(オプション):
使用法
MCP サーバーを起動します。
サーバーは stdio 上で実行されるため、MCP プロトコル クライアントと互換性があります。
APIリファレンス
MCP サーバーは次のツールを公開します。
create_gathering(gathering_id: str, members: int)
指定された数のメンバーで新しい集まりを作成します。
add_expense(gathering_id: str, member_name: str, amount: float)
集まりのメンバーの経費を追加します。
calculate_reimbursements(gathering_id: str)
集まりで誰が誰にいくら借りているかを計算します。
record_payment(gathering_id: str, member_name: str, amount: float)
メンバーによる支払い (正の値) またはメンバーへの払い戻し (負の値) を記録します。
rename_member(gathering_id: str, old_name: str, new_name: str)
集まりのメンバーの名前を変更します。
show_gathering(gathering_id: str)
経費や支払い状況など、集まりの詳細を表示します。
list_gatherings()
データベース内のすべての集まりを一覧表示します。
close_gathering(gathering_id: str)
集会を終了としてマークします。
delete_gathering(gathering_id: str, force: bool = False)
集会とそれに関連するすべてのデータを削除します。終了した集会を削除するには、 force=True
を設定します。
add_member(gathering_id: str, member_name: str)
既存の集まりに新しいメンバーを追加します。
remove_member(gathering_id: str, member_name: str)
集まりからメンバーを削除します (経費がない場合のみ)。
フロー例
- 5 人の友人との夕食会の集まりを作成します。
- 人々が支払う費用を追加します。
- 払い戻し額を計算します:
- 人々が決済するたびに支払いを記録します。
- すべての支払いが完了したら集会を終了します。
建築
Gatherings MCP サーバーは、次の 3 つの主要コンポーネントで構成されています。
- MCP サーバー インターフェイス(
gatherings_mcp_server.py
): AI ツールが対話できる MCP プロトコル インターフェイスを提供します。 - サービス レイヤー(
services.py
): 集まり、経費、支払いを管理するためのビジネス ロジックが含まれています。 - データ レイヤー(
models.py
): SQLAlchemy ORM を使用してデータベース スキーマを定義し、データの永続性を処理します。
データモデル
- 集まり:費用を分担する社交行事を表す
- メンバー: 集まりの参加者
- 経費:メンバーが集会のために支出したお金
- 支払い:残高を決済するために会員が支払うお金
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
AI アシスタントが社交イベントの費用分担を管理し、集まりの作成、費用の追跡、参加者間の公平な払い戻しの計算を可能にする MCP サーバー。
- 依存関係管理
- 概要
- 特徴
- インストール
- 使用法
- APIリファレンス
- create_gathering(gathering_id: str, members: int)
- add_expense(gathering_id: str, member_name: str, amount: float)
- calculate_reimbursements(gathering_id: str)
- record_payment(gathering_id: str, member_name: str, amount: float)
- rename_member(gathering_id: str, old_name: str, new_name: str)
- show_gathering(gathering_id: str)
- list_gatherings()
- close_gathering(gathering_id: str)
- delete_gathering(gathering_id: str, force: bool = False)
- add_member(gathering_id: str, member_name: str)
- remove_member(gathering_id: str, member_name: str)
- フロー例
- 建築
- データモデル
- 貢献
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server that lets AI assistants interact with your Lunchmoney data, enabling natural language queries about transactions, budgets, and spending patterns.Last updated -438TypeScriptMIT License
Fewsats MCP Serverofficial
AsecurityFlicenseAqualityAn MCP server that integrates with Fewsats allowing AI agents to securely purchase anything by retrieving balances, accessing payment methods, and processing payments.Last updated -413Python- -securityFlicense-qualityA specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.Last updated -315JavaScript
- -security-license-qualityA simple MCP server that enables meeting room booking through an AI assistant, supporting room availability checks and booking operations with React Agent pattern for tool calling.Last updated -Python