mcp-sift について
mcp-sift は、グローバルな ML ベースの不正検知プラットフォーム Sift 向けの MCP サーバーです。決済、アカウント、コンテンツ、プロモーションの不正利用を対象に、イベント送信、リスクスコア取得、決定の適用を行います。fraud カテゴリでは ClearSale、Konduto に続く 3 番目のサーバーです。
主な機能
- 01カスタムイベントを含むイベント送信
- 02ユーザースコアの取得と再スコアリング
- 03ユーザーのラベル付けと解除
- 04Decisions API v3 による決定の適用と照会
- 05ワークフロー実行ステータスの取得
活用シーン
- 01サインアップ、ログイン、注文時に不正シグナルを送信
- 02高額決済の前にリスクスコアを取得
- 03手動審査の結果を決定として Sift に反映
MCP 対応
本プロジェクトは MCP サーバーであり、Sift の Events、Score、Decisions API を呼び出す 20 個のツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @codespar/mcp-siftSIFT_API_KEYシークレットSift API key. Used in the Events API request body ($api_key) and as the HTTP Basic auth username (empty password) for Score + Decisions APIs.SIFT_ACCOUNT_IDSift Account ID. Required for all Decisions API v3 endpoints (path segment /v3/accounts/{account_id}/...).SIFT_BASE_URLSift API base URL. Defaults to https://api.sift.com.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
20掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| type | string | はい | $ プレフィックス付きの Sift イベントタイプ(例:$create_order、$transaction、$login、$create_account、$update_account、$chargeback、$order_status、$link_session_to_user)。全一覧は developers.sift.com を参照してください。 |
| fields | object | はい | イベントペイロードのフィールド。$ プレフィックス付きの Sift 予約フィールド($user_id、$session_id、$order_id、$amount、$currency_code、$payment_methods、$billing_address、$shipping_address、$items など)と、任意の加盟店カスタムフィールドを含めます。$api_key は自動的に挿入されます。 |
| abuse_types | string | いいえ | スコアリングする不正利用タイプのカンマ区切りリスト(payment_abuse,account_abuse,content_abuse,promotion_abuse,legacy)。return_score=true の場合にのみ使用されます。 |
| return_score | boolean | いいえ | true の場合、レスポンスでスコアを返します(同期スコアリング)。 |
| force_workflow_run | boolean | いいえ | true の場合、関連するシグナルに変化がなくてもワークフローを再実行します。 |
| return_workflow_status | boolean | いいえ | true の場合、このイベントによってトリガーされたワークフロー実行のステータスを返します。 |
詳細
@codespar/mcp-sift
Sift 用の MCP サーバーです。グローバル企業向けの機械学習ベースの不正検知サービスです。
CodeSpar の fraud カテゴリにおける3つ目のエントリーで、@codespar/mcp-clearsale と @codespar/mcp-konduto に続くものです。Sift は、ブラジル発の2つの不正対策サーバーに対する、グローバル/エンタープライズ向けの選択肢です。
位置付け
| ClearSale | Konduto | Sift | |
|---|---|---|---|
| 地域 | ブラジル | ブラジル | グローバル(米国本社、約30か国) |
| 設立 | 2001年 | 2014年 | 2011年 |
| 強み | チャージバック履歴データベース | 行動ベースのデバイスインテリジェンス | 複数の不正タイプに対応する機械学習+ワークフローによる判定 |
| 形態 | スコア+手動レビュー | API ファースト、対象範囲を限定 | イベントストリームを入力し、スコア+判定を出力 |
| 対象範囲 | 注文の不正 | 注文の不正 | 決済、アカウント、コンテンツ、プロモーションの不正利用 |
また、グローバルな KYC/本人確認サービスである @codespar/mcp-jumio とは異なります。不正スコアリングとは異なるレイヤーのサービスです。
Sift の API 形式
Sift は連携して動作する3つの API を中心に構築されています。
- Events API(
/v205/events)— アカウント作成、ログイン、注文、チャージバックなど、注目すべきあらゆるシグナルを$で始まるイベントとして POST します。 - Score API(
/v205/users/{user_id}/score)— ユーザーの最新の機械学習スコアを GET するか、再スコアリングを強制するために POST します。スコアは、不正利用タイプ(payment_abuse、account_abuse、content_abuse、promotion_abuse)ごとに[0, 1]の範囲の浮動小数点数です。 - Decisions API v3(
/v3/accounts/{account_id}/...)— Sift コンソールのワークフローによって、スコアが Decision(block_user_payment_abuse、approve_order_payment_abuseなど)に変換されます。Decision を直接適用したり、ユーザーや注文に対する現在の Decision を読み取ったり、ワークフロー実行のステータスを取得したりできます。
ツール(20)
| ツール | 目的 |
|---|---|
send_event | 不正シグナルを Sift の Events API に送信します(POST /v205/events)。 |
get_user_score | ユーザーの最新の Sift スコアを取得します(GET /v205/users/{user_id}/score)。 |
rescore_user | Sift にユーザーのスコアを直ちに再計算させます(POST /v205/users/{user_id}/score)。 |
label_user | レガシー Labels API を使用して、ユーザーを不正または不正ではないとラベル付けします(POST /v205/users/{user_id}/labels)。 |
unlabel_user | ユーザーに付けられた既存のラベルをすべて削除します(DELETE /v205/users/{user_id}/labels)。 |
apply_decision_to_user | ワークフローの Decision をユーザーに適用します(POST /v3/accounts/{account_id}/users/{user_id}/decisions)。 |
apply_decision_to_order | ワークフローの Decision を特定の注文に適用します(POST /v3/accounts/{account_id}/users/{user_id}/orders/{order... |
get_user_decisions | 現在ユーザーに適用されている Decision を取得します(GET /v3/accounts/{account_id}/users/{user_id}/decisions)。 |
get_order_decisions | 現在注文に適用されている Decision を取得します(GET /v3/accounts/{account_id}/orders/{order_id}/decisions)。 |
get_workflow_run | Sift Workflow の実行状況を取得します(GET /v3/accounts/{account_id}/workflows/runs/{run_id})。 |
send_chargeback | $chargeback イベントを Sift の Events API に送信します(POST /v205/events)。 |
send_login | $login イベントを Sift の Events API に送信します(POST /v205/events)。 |
send_logout | $logout イベントを Sift の Events API に送信します(POST /v205/events)。 |
send_content_status | $content_status イベントを Sift の Events API に送信します(POST /v205/events)。 |
link_session_to_user | $link_session_to_user イベントを Sift の Events API に送信します(POST /v205/events)。 |
send_custom_event | カスタム(マーチャント定義)イベントを Sift の Events API に送信します(POST /v205/events)。 |
apply_decision_to_session | ワークフローの Decision をセッションに適用します(POST /v3/accounts/{account_id}/users/{user_id}/sessions/{session_id... |
apply_decision_to_content | ワークフローの Decision をコンテンツアイテムに適用します(POST /v3/accounts/{account_id}/users/{user_id}/content/{conten... |
get_session_decisions | 現在セッションに適用されている Decision を取得します(GET /v3/accounts/{account_id}/users/{user_id}/sessions/... |
get_content_decisions | 現在コンテンツアイテムに適用されている Decision を取得します(GET /v3/accounts/{account_id}/users/{user_id}/cont... |
インストール
npm install @codespar/mcp-sift@alpha
環境
SIFT_API_KEY="..." # required, secret
SIFT_ACCOUNT_ID="..." # required for all Decisions API v3 calls
SIFT_BASE_URL="..." # optional; defaults to https://api.sift.com
認証
- Events API —
$api_keyは JSON ボディに挿入されます。サーバーが自動的に処理します。 - Score API + Decisions API v3 — HTTP Basic 認証を使用します。API キーをユーザー名として指定し、パスワードは空にします。サーバーが Base64 エンコードを処理します。
SIFT_API_KEY にキーをそのまま渡してください。
一般的なフロー
- アプリに計測機能を組み込みます。サインアップ、ログイン、プロフィール更新、注文、チャージバックのたびに、適切な
$typeを指定してsend_eventを呼び出します。 - 重要な処理(チェックアウト、出金)では、
return_score: trueを指定してsend_eventを呼び出し、その場で判定を取得します。 - または、ワークフローの実行完了後に
get_user_score/get_order_decisionsを非同期でポーリングします。 - 手動レビューの結果を反映するには、Sift コンソールで設定した Decision ID と
source: "MANUAL_REVIEW"を指定して、apply_decision_to_userまたはapply_decision_to_orderを呼び出します。 - チャージバックが確定したら、
$chargebackイベントを送信し、さらに Block Decision を指定したapply_decision_to_user、またはis_bad: true, abuse_type: "payment_abuse"を指定したlabel_userのいずれかを呼び出します。新規の連携では Decision を推奨します。Labels は後方互換性のために維持されています。
アルファ版の注記
0.1.0-alpha.1 としてリリースしました。すべてのエンドポイントパスは、Sift の公式 Ruby SDK (SiftScience/sift-ruby) を基に検証済みです:rest_api_path、user_score_api_path、users_label_api_path、user_decisions_api_path、order_decisions_api_path、workflow_status_path、および Decision の ApplyTo パスビルダー。
当初の概要との範囲の違い:
- リリース済み・検証済み: send_event、get_user_score、rescore_user、label_user、unlabel_user、apply_decision_to_user、apply_decision_to_order、get_user_decisions、get_order_decisions、get_workflow_run。
- 削除 — パブリック SDK にありません:
get_session_score(/v205/sessions/{session_id}/score)— Ruby SDK に同等のヘルパーはありません。Sift では、セッションレベルのスコアリングは専用のスコアエンドポイントではなく、セッションレベルの Decisions と Workflow の実行を通じて行われます。list_workflow_runs(GET /v3/accounts/{account_id}/workflows/runs)— パブリック SDK に実装されているのはGET /{run_id}のみです。実際には、Sift は一覧エンドポイントではなく、イベントのレスポンスで run_ids を返します。get_psychology_score— パブリック SDK にこのようなエンドポイントはありません。
developers.sift.com のリファレンスページではディープリンク URL が制限されているため(複数のパスで 403)、公式 SDK を信頼できる情報源として使用しました。Sift の管理コンソールにある Decisions/Score API のリファレンス全体を確認し、顧客が削除したエンドポイントの存在を確認(または否定)した後、0.1.0 に昇格してください。
実行
# stdio (default — for Claude Desktop, Cursor, etc)
npx @codespar/mcp-sift
# HTTP (for server-to-server testing)
MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-sift
カテゴリー
fraud — ClearSale と Konduto に続く 3 番目のエントリーです。海外展開するブラジルの加盟店では、Sift(グローバルな決済/アカウントの不正利用対策)を、ClearSale または Konduto(ブラジル固有のチャージバック履歴/デバイスインテリジェンス)と組み合わせるのが一般的です。
エンタープライズ
エージェントによる支払いにガバナンス、予算上限、監査証跡が必要ですか? CodeSpar Enterprise は、これらの MCP サーバーにポリシーエンジン、決済ルーティング、コンプライアンステンプレートを追加します。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。