lapsewatch について
lapsewatchは、小規模事業者向けに注文CSVを分析し、離反リスクのある顧客とリスク額を推定するMCPサーバー兼ローカルCLIです。顧客ごとの購入間隔を基準に判定します。
主な機能
- 01離反リスク顧客と離反済み顧客の検出
- 02年間リスク額の推定
- 03リピート率と顧客集中度の集計
- 04注文CSVの読み込みと検査
活用シーン
- 01再購入を促す顧客の優先順位付け
- 02顧客維持率とリピート状況の確認
MCP 対応
離反顧客の確認とCSVの列・行数の検査を行う読み取り専用ツールを提供します。結果には、MCPクライアントに渡される顧客名やメールアドレスが含まれる場合があります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | string | はい | 注文 CSV のパス |
| as_of | string | いいえ | 測定基準日。形式は YYYY-MM-DD。デフォルトは最新の注文日です |
| limit | null|integer | いいえ | 返す顧客数の上限。優先度の高い順で、デフォルトは 100 です。0 の場合は概要のみを返します |
| columns | object | いいえ | 検出に失敗した場合に、フィールドごとに列名を指定します(date、customer、amount) |
| date_format | string | いいえ | dmy または mdy。ツールが日付を曖昧と報告した場合にのみ必要です。 |
詳細
lapsewatch:購入をやめた顧客を見つける
注文 CSV から顧客維持率と解約を分析し、リスクのある顧客、失った顧客、危険にさらされている年間売上を確認できます。EC ストア、サービス業、小規模な B2B 企業向けです。
顧客を見つけるより、維持するほうが通常は費用がかかりません。しかし、常連客がいつの間にか注文をやめても、誰も気づかないものです。lapsewatch は顧客ごとの購入パターンと比較するため、毎月注文する顧客は年に 2 回注文する顧客より早く検出されます。MCP サーバーと単体の Go バイナリで、アカウントも API キーも不要で、ネットワークアクセスもありません。
エージェントに尋ねられること
- 「購入をやめた顧客は誰ですか?」
- 「売上を取り戻すために、まず誰に連絡すべきですか?」
- 「年間売上のうち、どのくらいが危険にさらされていますか?」
- 「リピート顧客率はどのくらいですか? また、上位顧客への依存度はどのくらいですか?」
インストール
MCP サーバーと、Claude に使いどきを知らせるスキルを追加する Claude Code プラグインとしてインストールできます。npx でサーバーを実行するため、Node が必要です。
claude plugin marketplace add GillMacedo/lapsewatch
claude plugin install lapsewatch@lapsewatch-marketplace
その他の MCP クライアントの場合:
{
"mcpServers": {
"lapsewatch": {
"command": "npx",
"args": ["-y", "lapsewatch", "serve"]
}
}
}
または、Go 1.27 以降でバイナリをビルドします。
go install github.com/GillMacedo/lapsewatch@latest
使い方
何もインストールせずに、npx lapsewatch check orders.csv を実行できます。この例では、examples/ にある架空のファイルを使用しています。
$ go run . check examples/orders.csv
2026-09-27 時点:顧客 8 人、75.0% が複数回購入、売上 14598.00、上位 10% が売上の 49.3% を占める
リスクあり:優先して連絡する顧客(2 人)
[email protected] 最終注文から 197 日、通常は 60 日ごとに注文 年間価値 5475.00
[email protected] 最終注文から 92 日、通常は 30 日ごとに注文 年間価値 3771.67
離脱(1 人)
[email protected] 最終注文から 297 日、通常は 20 日ごとに注文 年間価値 1368.75
1 回のみ(1 人)
[email protected] 唯一の注文から 397 日 購入額 60.00
アクティブ 3 人、新規 1 人。
スキップされた行 68:有効な日付、顧客、または金額がありません
2 人の顧客から、年間 9246.67 がリスクにさらされています。
特定の日付を基準にするには --as-of 2026-12-31 を、表示する顧客を増やすには --top 50 を、機械可読形式の出力には --json を追加します。
判定方法
| ステータス | 条件 |
|---|---|
| アクティブ | 通常の注文間隔の 2 倍以内に注文がある |
| リスクあり | 通常の注文間隔の 2 倍を超え、最終注文から 30 日以上経過している |
| 離脱 | 通常の注文間隔の 4 倍を超え、最終注文から 30 日以上経過している |
| 新規 | 過去 90 日以内に注文が 1 回 |
| 1 回のみ | 注文が 1 回で、90 日より前 |
通常の注文間隔は、顧客の注文間の日数の中央値です。年間価値は、平均注文額に 365 を掛けて、その間隔で割った値であり、推定値です。同じ日の行は 1 回の注文として数え、返金は注文として数えずに合計額から差し引かれます。
MCP ツール
| ツール | 機能 |
|---|---|
customers_check_lapsed | 優先度別の顧客と概要を返します。大きなファイルでは件数を制限できます |
customers_inspect_csv | 行の内容を表示せずに、検出した列と行数を表示します |
どちらも読み取り専用で、誰かに連絡する機能はありません。customers_check_lapsed は顧客名またはメールアドレスを MCP クライアントに返すため、使用する AI モデルに渡されます。CLI ではすべての処理が手元のマシンで完結します。
FAQ
休眠顧客を見つけるにはどうすればよいですか? 注文を CSV としてエクスポートし、npx lapsewatch check orders.csv を実行します。
Shopify、WooCommerce、Stripe のエクスポートに対応していますか? CSV を読み込み、Email、Total、Created at などの一般的な列名を認識します。また、--columns date=When,customer=Who,amount=Sum を使って、ほかの列名を指定できます。これらのプラットフォームには接続せず、各プラットフォームの実際のエクスポートデータでのテストもまだ行っていません。
名前とメールアドレスのどちらを使うべきですか? メールアドレスが最適です。異なる値ごとに別の顧客として扱うためです。
制限事項
- 調査対象を見つけることはできますが、顧客が離れた理由まではわかりません。一度きりのニーズや季節性のある購入者が、離脱したように見えることがあります。
- 顧客が異なる名前やメールアドレスで登録されている場合、別々の顧客として数えられます。まずリストを整理するには、samecontact が役立ちます。
- 通貨の換算には対応していません。
- 読み込めるのは CSV のみで、ファイルサイズの上限は 50 MB です。
- これらのリストを使って顧客にメールを送信する場合は、お住まいの地域のマーケティングおよびプライバシーに関する規則に従ってください。
- これまでのテストには、実際のエクスポートデータではなく、架空のデータを使用しています。お手元のデータで問題が発生した場合は、データではなく列ヘッダーを添えて issue を作成してください。
貢献
人の方も、AI エージェントと作業する方も、貢献を歓迎します。CONTRIBUTING.md をご覧ください。初めての方におすすめの issue:
- さらに多くのプラットフォームや言語の列名を追加する
- CSV に顧客呼び戻しリストを書き出す
--outを追加する - 季節性のある購入者を検出する機能を追加する
- コホート別の継続率テーブルを追加する
- プラグインアイコンを追加する
プルリクエストの流れ
- PR を作成します。 リポジトリをフォークし、ブランチで作業して、変更を 1 つに絞ってください。ユーザーにとって何が変わるのかを示すタイトルを付けてください。タイトルは変更履歴の項目になるためです。
feat:は Added の下に、fix:は Fixed の下に記載されます。 - 自動チェック。 コードの変更にはテストが必要で、
make testが成功しなければなりません。30 行を超える変更には、リンクされた未解決の issue(Closes #<number>)が必要です。また、PR の変更行数は最大 800 行です。不足がある場合は、修正点をコメントでお知らせします。 - レビュー。 Claude が各 PR を自動的にレビューします。コードの PR にはセキュリティレビューも行われ、サンドボックスでテストされます。その後、レビューによって PR がマージされるか、変更が求められます。CI、エージェント設定、npm または Python の依存関係、ベンダーコード、ビルドファイルを変更する PR は、この方法ではマージできません。その場合はコメントでお知らせします。セキュリティレビューで承認されなかった変更も同様です。
- リリース。 ユーザーがインストールするものに変更を加えるマージは、約 2 時間以内に新しいバージョンとしてリリースされ、GitHub Release が作成されます。プロジェクトに npm パッケージがある場合は、それもリリースされます。ドキュメントと CI の変更は次回のリリースまで保留されます。
AI に関する開示
このプロジェクトは主に Claude Code で生成され、メンテナーによるレビューを受けています。
自己紹介
私は Giulliano Macedo です。GoTech Solutions で開発者向けツールを作っています。最新情報をチェックしたり、お気軽にご連絡ください。
- GitHub:GillMacedo
- LinkedIn:giulliano
- X:@giumacedo
lapsewatch が顧客の呼び戻しに役立ったなら、スターを付けていただけると、ほかの方にも見つけてもらいやすくなります。
MIT ライセンスです。
Giulliano Macedo(GoTech Solutions)が開発 · LinkedIn · X
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。