io.github.dgtalquantumleap-ai/vigil-fraud-alert
NPM · VIGIL-FRAUD-ALERT-MCP · SCANNED AUG 3
Proximity-based card fraud detection with AI risk scoring.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security78
- No malware found by supply-chain analysis.Pass
- CVE check failed: a known medium-severity CVE affects esbuild 0.20.2, a direct dependency. A fixed version is available. View diagnostics → Fail
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (149 of 151), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency19
- Repository check failed: the declared repository URL returned HTTP 404. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 111 days ago).Pass
- Security-disclosure policy not yet verified: we couldn't inspect the source repository.Unverified
Schema Quality & AI Usability69
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1987 tokens (~152/item across 13 items; 13 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage95
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 85% of tool parameters carry a description.Partial
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · vigil-fraud-alert-mcp
claude mcp add dgtalquantumleap-ai-vigil-fraud-alert -- npx -y vigil-fraud-alert-mcp
codex mcp add dgtalquantumleap-ai-vigil-fraud-alert -- npx -y vigil-fraud-alert-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"dgtalquantumleap-ai-vigil-fraud-alert": {
"type": "local",
"command": [
"npx",
"-y",
"vigil-fraud-alert-mcp"
],
"enabled": true
}
}
} openclaw mcp add dgtalquantumleap-ai-vigil-fraud-alert --command npx --arg -y --arg vigil-fraud-alert-mcp
mcp_servers:
dgtalquantumleap-ai-vigil-fraud-alert:
command: "npx"
args: ["-y", "vigil-fraud-alert-mcp"] {
"mcpServers": {
"dgtalquantumleap-ai-vigil-fraud-alert": {
"command": "npx",
"args": [
"-y",
"vigil-fraud-alert-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Aug 26 +4
- Stability: unverified → 0.27 ▲ functional
- 2 Aug 26 +42
- GHSA-67mh-4wv8-2f99 affects this package: medium ▼ security
- Known CVEs: unverified → fail ▼ security
- Provenance: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Malware scan: unverified → pass ▲ security
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- MCP protocol: unverified → pass ▲ functional
- Maintenance: unverified → pass ▲ functional
- Dependency health: unverified → partial ▲ functional
- License: unverified → pass ▲ functional
- Schema quality: unverified → excellent ▲ functional
- Licence: MIT functional
- 1 Aug 26 −14
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 31 Jul 26 +9
- Provenance: unverified → fail ▼ security
- Malware scan: pass → unverified ▼ security
- Install scripts: unverified → pass ▲ security
- Dependency health: partial → unverified ▼ functional
- Maintenance: unverified → pass ▲ functional
- License: unverified → pass ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Licence: MIT functional
- 29 Jul 26 −18
- Tool coverage: 100 → unverified ▼ functional
- Dependency health: unverified → partial ▲ functional
- First check of Schema quality: unverified functional
- 27 Jul 26 37
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Vulnerabilities 1 finding
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-67mh-4wv8-2f99 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:N/A:N | yes |
Dependencies 149 packages
149 packages in the resolved dependency tree · 147 deprecated · 36 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
vigil_add_travel_plan Add Travel Plan ~121
Add a travel plan to a card. In travel mode, any transaction in a matching destination_country within [start_date, end_date] is approved without GPS check. Multiple overlapping plans are supported (e.g. US + MX for a road trip).
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Vigil card ID |
| destination_country | string | yes | ISO 3166-1 alpha-2 destination country code |
| end_date | string | yes | Travel end date YYYY-MM-DD |
| start_date | string | yes | Travel start date YYYY-MM-DD |
No output schema declared.
No examples provided.
vigil_analyze_transaction AI Transaction Analysis ~247
Run Claude Haiku analysis on a transaction or pending authorization. Returns: risk_score 0–100 integer (100 = certain fraud) risk_factors Array of plain-English factors (location mismatch, late hour, etc.) recommended_action "block" | "confirm" | "allow" alert_message Ready-to-send SMS copy (160 chars, ends with YES=confirm NO=block) explanation 1–2 sentence plain-English reasoning Use this AFTER vigil_authorize to enrich the decision with AI context, or call it independently before authorizing to pre-score a transaction. Falls back to rules-based scoring if Anthropic API is unreachable.
| Name | Type | Req | Description |
|---|---|---|---|
| amount_cents | integer | — | — |
| card_id | string | — | Card ID — used to attach recent history context |
| currency | string | — | — |
| merchant_city | string | — | — |
| merchant_country | string | — | — |
| merchant_lat | number | — | — |
| merchant_lng | number | — | — |
| merchant_mcc | string | — | — |
| merchant_name | string | — | — |
| transaction_id | string | — | Existing transaction ID — populates all fields automatically |
No output schema declared.
No examples provided.
vigil_authorize Authorize Card Transaction ~432
Core fraud detection entry point. Runs a transaction through Vigil's proximity engine and returns an approve/decline decision. Decision priority: 1. Inactive card → CARD_INACTIVE (decline) 2. LOCKDOWN mode → LOCKDOWN (decline) 3. TRAVEL + plan match → TRAVEL_MATCH (approve) 4. No GPS on file → NO_GPS_ON_FILE (decline) 5. Spoofed/rooted → SPOOFED_DEVICE (decline) 6. GPS 5–15 min old → GPS_STALE_SOFT (decline) 7. GPS >15 min old → GPS_STALE_HARD (decline) 8. Within radius → IN_RADIUS (approve) 9. Outside radius → OUTSIDE_RADIUS (decline) Auto-creates a FraudAlert for OUTSIDE_RADIUS, SPOOFED_DEVICE, and LOCKDOWN declines. Returns transaction_id and optionally alert_id.
| Name | Type | Req | Description |
|---|---|---|---|
| amount_cents | integer | yes | Transaction amount in smallest currency unit (e.g. 4250 = $42.50) |
| card_id | string | yes | Vigil internal card ID (e.g. card_01) |
| currency | string | yes | ISO 4217 currency code (e.g. usd, cad, gbp) |
| merchant_city | string | yes | Merchant city |
| merchant_country | string | yes | ISO 3166-1 alpha-2 country code (e.g. CA, US, GB) |
| merchant_lat | number | — | Merchant latitude — provide if issuer includes it (skips geocoding) |
| merchant_lng | number | — | Merchant longitude — provide if issuer includes it (skips geocoding) |
| merchant_mcc | string | yes | 4-digit Merchant Category Code |
| merchant_name | string | yes | Merchant display name |
| merchant_network_id | string | yes | Merchant network identifier for geocode caching |
| timestamp | string | — | ISO 8601 transaction timestamp — defaults to now |
No output schema declared.
No examples provided.
vigil_block_transaction Block Card — Emergency Lockdown ~205
Immediately lock a card (set mode=lockdown) and escalate any open alerts. Use when: - User confirmed fraud via "Was this you? NO" response - AI analysis returns recommended_action="block" - Analyst manually confirms suspicious activity What this does: 1. Sets card.mode = 'lockdown' (all future transactions declined instantly) 2. Escalates all open alerts for this card to status='investigating' 3. Returns summary of actions taken NOTE: Final blocking authority rests with the user or analyst — this tool executes the block but should only be called after confirmation. Stripe/Lithic card cancellation must be called separately in production.
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Card ID to block |
| reason | string | yes | Plain-English reason for blocking (logged to all open alerts) |
| transaction_id | string | — | Transaction ID that triggered the block (optional, for audit trail) |
No output schema declared.
No examples provided.
vigil_confirm_transaction Confirm Transaction ~104
Record user response to "Was this you?" push notification. confirmed="yes" — user made this transaction (marks a blocked txn as false positive) confirmed="no" — user did NOT make this transaction (escalates alert to investigating) This data feeds directly into risk score calculation and fraud analytics.
| Name | Type | Req | Description |
|---|---|---|---|
| confirmed | string | yes | "yes" = user made this transaction; "no" = fraud |
| transaction_id | string | yes | Transaction ID to confirm |
No output schema declared.
No examples provided.
vigil_generate_report Generate AML Compliance Report ~154
Generate a professional AML/fraud compliance report for a card using Claude Sonnet. Produces a structured report with: - Executive Summary - Incident Timeline (all declined transactions in period) - Risk Assessment with score breakdown - Recommended Actions - Compliance Notes (for bank/regulator submission) Use for: - Monthly fraud review submission to Stripe/Lithic - AML regulatory filing - Internal fraud review Returns report_id, summary (200 chars), and full_report (full text).
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Card to report on |
| period_end | string | yes | Report end date YYYY-MM-DD |
| period_start | string | yes | Report start date YYYY-MM-DD |
No output schema declared.
No examples provided.
vigil_get_card Get Card Details ~52
Get a card's current config: mode, radius, home location, travel plans. Also returns gps_age_minutes so you can assess GPS freshness before authorizing.
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Vigil card ID |
No output schema declared.
No examples provided.
vigil_get_risk_profile Get Risk Profile ~95
Get the risk profile for a card. Recalculates live from transaction history. risk_score 0.0–1.0 weighted: 40% block rate | 20% false-positive rate | 30% outside-radius count | 10% lockdown usage anomaly_reason: plain-English explanation set by the async AI analyser (Claude Haiku).
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Vigil card ID |
No output schema declared.
No examples provided.
vigil_list_alerts List Fraud Alerts ~118
List fraud alerts. Filter by card_id, status, or severity. Auto-created for OUTSIDE_RADIUS, SPOOFED_DEVICE, and LOCKDOWN declines. Severity: critical (SPOOFED/LOCKDOWN), high (distance >5000km), medium (distance ≤5000km). Statuses: open → investigating → resolved | false_positive
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | — | Filter by card ID — omit for all |
| severity | string | — | Filter by severity level |
| status | string | — | Filter by alert status |
No output schema declared.
No examples provided.
vigil_list_transactions List Transactions ~96
List transaction decisions. Filter by card_id and/or approval outcome. Returns full records: merchant, amount, reason_code, distance_km, GPS coords, processing_ms. Ordered most-recent first. Max 100 per call.
| Name | Type | Req | Description |
|---|---|---|---|
| approved | boolean | — | Filter by approval outcome |
| card_id | string | — | Filter by card ID — omit for all cards |
| limit | integer | — | Max results (default 20) |
No output schema declared.
No examples provided.
vigil_update_alert Update Fraud Alert ~107
Advance a fraud alert through the investigation workflow and append notes. Typical flow: open → investigating (analyst picks it up) investigating → resolved (confirmed fraud, card actioned) investigating → false_positive (user confirmed it was them) Notes are appended with a timestamp — not replaced.
| Name | Type | Req | Description |
|---|---|---|---|
| alert_id | string | yes | Alert ID to update |
| notes | string | — | Investigator notes to append (timestamped) |
| status | string | yes | New alert status |
No output schema declared.
No examples provided.
vigil_update_card_mode Update Card Mode ~83
Switch card operating mode: home | travel | lockdown. home — proximity-based auth against GPS + configured radius travel — country-match auth using active travel plans; falls back to proximity lockdown — all transactions declined, no exceptions, instant effect
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | string | yes | Vigil card ID |
| mode | string | yes | New card mode |
No output schema declared.
No examples provided.
vigil_update_gps Update GPS Snapshot ~173
Push a fresh GPS snapshot for a card. Called by the mobile app on significant-change events (>100m move) and every 60s while foregrounded. GPS freshness is critical to authorization: >5 min old → GPS_STALE_SOFT decline >15 min old → GPS_STALE_HARD decline Set is_mock_location=true or is_jailbroken=true to test spoofing detection.
| Name | Type | Req | Description |
|---|---|---|---|
| accuracy_meters | number | — | GPS accuracy radius in metres |
| card_id | string | yes | Vigil card ID |
| is_jailbroken | boolean | — | Jailbroken (iOS) or rooted (Android) device |
| is_mock_location | boolean | — | Mock location provider detected on device |
| lat | number | yes | Latitude |
| lng | number | yes | Longitude |
No output schema declared.
No examples provided.