Splid MCP について
Splid MCPは、Splidのグループの支出や残高をMCPクライアントに公開し、AIツールで共同支出を管理するグループ向けです。最近の記録やメンバーの確認、支出の作成に対応します。
主な機能
- 01接続状態の確認
- 02グループとメンバーの表示
- 03支出記録の作成
- 04最近の記録の一覧表示
- 05グループ残高の概要表示
活用シーン
- 01Splidグループへの接続確認
- 02メンバーの確認と照合
- 03グループの共同支出の記録
- 04最近の支出と残高の確認
MCP 対応
MCP サーバーとして、Streamable HTTP経由でSplidグループの照会や支出管理ツールを提供します。Inspectorでの確認用にローカルstdioにも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Splid MCP サーバー
リバースエンジニアリングされた splid-js クライアントを利用し、ツール経由で Splid(splid.app)を公開する Model Context Protocol(MCP)サーバーです。
- 言語/ランタイム:Node.js(ESM)+ TypeScript
- トランスポート:Streamable HTTP(およびローカルインスペクター用の stdio)
- ライセンス:MIT
クイックスタート
- インストール
npm install
- 環境変数を設定
プロジェクトのルートに .env を作成します:
CODE=YOUR_SPLID_INVITE_CODE
PORT=8000
- ビルドして実行
npm run build
npm run dev
- ローカルで確認
npm run inspect
次に、「Streamable HTTP」を使用して http://localhost:8000/mcp に接続します。
ツール
すべてのツールでは、CODE のデフォルト値を上書きするグループセレクターをオプションで指定できます:
groupId?: stringgroupCode?: string(招待コード)groupName?: string(予約済み。未対応)
いずれも指定されていない場合、サーバーは CODE のデフォルトグループを使用します。
health
- 目的:接続の確認
- 出力:
{ ok: true }
whoami
- 目的:現在選択されているグループとそのメンバーを表示
- 入力:なし
- 出力:グループ情報とメンバーを含む JSON
createExpense
- 目的:新しい支出項目を作成
- 入力:
title: stringamount: number > 0currencyCode?: string(省略時はグループのデフォルト値)payers: { userId?: string; name?: string; amount: number > 0 }[](1人以上)profiteers: { userId?: string; name?: string; share: number in (0,1] }[](1人以上)- グループセレクターのフィールド(任意)
- ルール:
- 名前は大文字と小文字を区別せず、メンバーの GlobalId に解決されます。不明な名前の場合は、明確なエラーが返されます。
- すべての
shareの合計は 1(±1e-6)である必要があります。
- 例(名前):
{
"title": "Dinner",
"amount": 12.5,
"payers": [{ "name": "Alice", "amount": 12.5 }],
"profiteers": [{ "name": "Bob", "share": 0.6 }, { "name": "Alice", "share": 0.4 }]
}
- 例(userIds):
{
"title": "Dinner",
"amount": 12.5,
"payers": [{ "userId": "<GlobalId>", "amount": 12.5 }],
"profiteers": [{ "userId": "<GlobalId>", "share": 1 }]
}
listEntries
- 目的:グループ内の最近の項目を一覧表示
- 入力:
limit?: number(1..100、デフォルトは 20)- グループセレクターのフィールド(任意)
- 出力:項目の配列
getGroupSummary
- 目的:グループの残高/概要を表示
- 入力:
- グループセレクターのフィールド(任意)
- 出力:概要オブジェクト(Splid で計算された残高)
Streamable HTTP
- URL:
http://localhost:8000/mcp - 認証ヘッダーは不要です。テストには MCP Inspector を使用してください。
トラブルシューティング
- 「Bad Request: Server not initialized」:更新して再接続してください。最初の POST は
initializeである必要があります。 - share エラーを伴う 400:share が (0,1] の範囲内で、合計が 1 になることを確認してください。
- 不明な名前:
whoamiの出力でメンバーの正確な名前を確認してください。
設定
- 環境変数:
CODE:デフォルトグループの Splid 招待/参加コードPORT(任意):デフォルトは 8000
謝辞
- Splid JS クライアント:https://github.com/LinusBolls/splid-js
- MCP サーバーテンプレート/ドキュメント:https://github.com/InteractionCo/mcp-server-template
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。