Sift MCP server
MCP server for Sift — global ML fraud detection: real-time risk scoring, decisions, event ingestion
271 stars
Reviews
Write oneNobody has reviewed Sift yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Sift tools (20, 11 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
apply_decision_to_contentApply a workflow Decision to a content item (POST /v3/accounts/{account_id}/users/{user_id}/content/{content_id}/decisions). Content-level decisions target one piece of user-generated content — typical for content_abuse abuse type (e.g. take-down a listing flagged as scam). Requires SIFT_ACCOUNT_ID.
apply_decision_to_orderwrite actionApply a workflow Decision to a specific order (POST /v3/accounts/{account_id}/users/{user_id}/orders/{order_id}/decisions). Order-level decisions target a single transaction rather than the whole user (e.g. 'approve_order_payment_abuse' on a manually-reviewed high-value order). Requires SIFT_ACCOUNT_ID.
apply_decision_to_sessionApply a workflow Decision to a session (POST /v3/accounts/{account_id}/users/{user_id}/sessions/{session_id}/decisions). Session-level decisions target a specific authenticated session — typical for account_abuse abuse type (e.g. force-logout a session that was hijacked). Requires SIFT_ACCOUNT_ID.
apply_decision_to_userApply a workflow Decision to a user (POST /v3/accounts/{account_id}/users/{user_id}/decisions). Decisions are the modern replacement for Labels — they both classify the entity for Sift's ML and trigger any configured side effects (e.g. a Block decision on a $payment_abuse user will cause that user's future $transaction events to be blocked). Requires SIFT_ACCOUNT_ID.
get_content_decisionsFetch the decisions currently applied to a content item (GET /v3/accounts/{account_id}/users/{user_id}/content/{content_id}/decisions). Requires SIFT_ACCOUNT_ID.
get_order_decisionswrite actionFetch the decisions currently applied to an order (GET /v3/accounts/{account_id}/orders/{order_id}/decisions). Note: the order-level GET path does NOT include user_id, unlike the order-level apply path. Requires SIFT_ACCOUNT_ID.
get_session_decisionsFetch the decisions currently applied to a session (GET /v3/accounts/{account_id}/users/{user_id}/sessions/{session_id}/decisions). Requires SIFT_ACCOUNT_ID.
get_user_decisionsFetch the decisions currently applied to a user (GET /v3/accounts/{account_id}/users/{user_id}/decisions). Returns the active decision per abuse type. Requires SIFT_ACCOUNT_ID.
get_user_scoreFetch the latest Sift score(s) for a user (GET /v205/users/{user_id}/score). Does NOT trigger a rescore — it returns whatever score was last computed. The score is a float in [0, 1]; higher means more fraud-like. Optionally filter by abuse_types.
get_workflow_runwrite actionFetch the status of a Sift Workflow run (GET /v3/accounts/{account_id}/workflows/runs/{run_id}). The run_id is returned in the response to events sent with return_workflow_status=true. The run status tells you which route of the workflow was taken and which decisions were applied. Requires SIFT_ACCOUNT_ID.
label_userLabel a user as fraud or not-fraud via the legacy Labels API (POST /v205/users/{user_id}/labels). Labels are the classic supervised-learning feedback channel for Sift's ML model. Note: most new integrations use the Decisions API (apply_decision_to_user) instead — labels are kept for backward compatibility. Still supported for ongoing model feedback.
link_session_to_userwrite actionSend a $link_session_to_user event to Sift's Events API (POST /v205/events). Use when a user signs in or up after pre-login activity — links the anonymous session's signals back to the now-known user, retroactively scoring earlier events.
rescore_userForce Sift to recompute a user's score right now (POST /v205/users/{user_id}/score). Use when you have externally-observed signal that should invalidate the last score (e.g. a manual decision) but have not sent a new event.
send_chargebackwrite actionSend a $chargeback event to Sift's Events API (POST /v205/events). Convenience wrapper around send_event for the most common ML-feedback signal: a confirmed chargeback. Sift uses chargeback events as a strong negative-label signal for the payment_abuse model. Optionally request a synchronous score with return_score=true.
send_content_statuswrite actionSend a $content_status event to Sift's Events API (POST /v205/events). Used to update the moderation status of user-generated content (listings, posts, messages, profiles) — feeds Sift's content_abuse model.
send_custom_eventwrite actionSend a custom (merchant-defined) event to Sift's Events API (POST /v205/events). Use for events not covered by Sift's reserved $-prefixed catalog. Custom event names should NOT start with '$' — Sift treats anything without the $ prefix as merchant-defined. Useful for domain-specific signals (e.g. 'kyc_check_passed', 'phone_verified').
send_eventwrite actionSend a fraud signal to Sift's Events API (POST /v205/events). The `type` parameter selects the event kind ($create_order, $transaction, $login, $create_account, $update_account, $chargeback, $order_status, etc). Additional fields ($user_id, $session_id, $order_id, custom fields) are passed via `fields` and merged into the body. Use `return_score=true` to get a synchronous score in the response.
send_loginwrite actionSend a $login event to Sift's Events API (POST /v205/events). Convenience wrapper for tracking login attempts — both successful and failed attempts feed Sift's account_abuse model.
send_logoutwrite actionSend a $logout event to Sift's Events API (POST /v205/events). Convenience wrapper for tracking session terminations.
unlabel_userwrite actionRemove any existing label on a user (DELETE /v205/users/{user_id}/labels). Optionally scope by abuse_type.
Public scan report
scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it
- Code scan6 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 29 days ago15/15
- Maintainer identityregistry namespace matches repository owner7/10
How Sift compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 82/100
- higher than 63% of 48,255 servers
- Tools
- 20
- the typical server has 7
- Tools that change things
- 55%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 271
- more than 95% of 28,688 servers
What its tools let an agent do: 6 read · 4 change · 6 send or post · 4 run or deploy
Install Sift in Claude Code, Cursor or VS Code
Runs npx -y @codespar/mcp-sift on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp-sift -- npx -y @codespar/mcp-sift
What the publisher says
From the Sift repository's README, as published. We do not edit it. Read it on GitHub
MCP Dev LATAM 🌎 Every commerce API your AI agent needs to run a business in Latin America. Brazil 🇧🇷 · Mexico 🇲🇽 · Argentina 🇦🇷 · Colombia 🇨🇴 · Chile 🇨🇱 · Peru 🇵🇪 · plus 4 agentic payment protocols. MCP servers for LATAM commerce · live in the official MCP Registry · MIT License Machine-readable catalog: codespar.dev/api/servers Catalog · Quick Start · Agentic Protocols · All Servers · Contribute
The Problem
AI agents can write code, analyze data, and chat. But they can't operate a business — collect payments, issue invoices, ship products, or notify customers. Especially not in Latin America, where every service has its own API, auth pattern, and quirks (mTLS for BACEN Pix v2, JWT-RSA for STP-SPEI, AFIP web services, contract-gated developer portals, and on).
Meanwhile, four agentic payment protocols are shipping in parallel — checkout protocols (Stripe ACP, Google UCP), authorization layers (AP2), and micropayment rails (x402) — and none of them compose cleanly with each other or with the regional rails businesses actually run on.
MCP Dev LATAM bridges both gaps. Traditional LATAM services + the new agentic payment protocols, all accessible through a single MCP interface.
The Solution
Each MCP server in this repo wraps a real provider — payments, fiscal, logistics, messaging, banking, ERP, identity, fraud, crypto, and the agentic protocols — so your agent can operate a complete business workflow.
🛒 Customer places order
→ 💳 Agent charges via Pix (Asaas / Mercado Pago / Zoop)
→ 📄 Agent issues NFe (Nuvem Fiscal / Focus NFe / NFe.io)
→ 📦 Agent generates shipping label (Melhor Envio / Skydropx)
→ 📱 Agent sends tracking via WhatsApp (Z-API / WhatsApp Cloud)
→ 📊 Agent records in ERP (Omie / Bling / Tiny)
→ 🏦 Agent reconciles balance (Stark Bank / Itaú / BTG)Six systems. Zero human intervention. One agent.
Agentic Payment Protocols
Four servers for the emerging agentic payment stack:
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Sift: common questions
- Is Sift MCP server safe?
- Mostly: it is graded B (82/100). Read the Sift safety report
- How do I install Sift?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Sift need an API key?
- Yes. The registry entry asks for
SIFT_API_KEY. - Is Sift maintained?
- The last commit was 67 days ago (2026-08-29). The latest release is v0.2.0-alpha.3.
- What can I use instead of Sift?
- Servers from other publishers that do the same job: UniFi Protect MCP server.
- How does Sift compare with other MCP servers?
- safety score 82/100 (higher than 63% of 48,255 servers); tools 20 (the typical server has 7); tools that change things 55% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Sift
Same job from other publishers: the closest match first, then the best rated.
- UniFi Protect MCPManage UniFi Protect cameras, events, recordings, and smart detections via MCP.not reviewedEstablishedB