Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.skimguard/skimguard

REMOTE · MCP.SKIMGUARD.IO · SCANNED AUG 13

Ask whether a location has recent credit-card-skimmer detections, from a consumer sensor network.

Available components

+4 this week 77 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security80
Transport & Reachability100
Schema Quality & AI Usability85
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2127 tokens (~118/item across 18 items; 17 tools + 1 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 Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage94
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 83% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

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.

remote · mcp.skimguard.io

# add to Claude Code
claude mcp add --transport http io-skimguard-skimguard https://mcp.skimguard.io/mcp
# ~/.codex/config.toml
[mcp_servers.io-skimguard-skimguard]
url = "https://mcp.skimguard.io/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "io-skimguard-skimguard": {
      "type": "remote",
      "url": "https://mcp.skimguard.io/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add io-skimguard-skimguard --url https://mcp.skimguard.io/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  io-skimguard-skimguard:
    url: "https://mcp.skimguard.io/mcp"
// mcp.json
{
  "mcpServers": {
    "io-skimguard-skimguard": {
      "type": "http",
      "url": "https://mcp.skimguard.io/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

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.

  • 13 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Aug 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 9 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 7 Aug 26 +1
    • Stability: unverified → 0.03 functional
  • 6 Aug 26 73

    First indexed and scored.

Diagnostics

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 13 Aug 2026 · Probed https://mcp.skimguard.io/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=b2b.safesignals.io CN=WR3,O=Google Trust Services,C=US 22 Jul 2026 20 Oct 2026 RSA 2048 SHA256-RSA fe6b49e7f5ae066e0a7337a899af2b8f
SANs: b2b.safesignals.io, dashboard.safesignals.io, data-licensing.safesignals.io, map.safesignals.io, ops.safesignals.io, skimguard.safesignals.io, skimguard.io, agentapi.skimguard.io, auth.skimguard.io, b2b.skimguard.io, cloverapi.skimguard.io, data.skimguard.io and 9 more
CN=WR3,O=Google Trust Services,C=US (CA) CN=GTS Root R1,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 RSA 2048 SHA256-RSA 7ff005a91568d63abc22861684aa4b5a
CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 19 Jun 2020 28 Jan 2028 RSA 4096 SHA256-RSA 77bd0d6cdb36f91aea210fc4f058d30d
CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 1 Sept 1998 28 Jan 2028 RSA 2048 SHA1-RSA 40000000001154b5ac394
DNSSEC insecure

Validation of mcp.skimguard.io. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
io. present 57355 8 Verified
skimguard.io. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=31556926
x-content-type-options nosniff
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://mcp.skimguard.io/mcp Verified 200
http (plaintext) http://mcp.skimguard.io/mcp HTTPS enforced 301 https://mcp.skimguard.io/mcp
MCP tools · 17 exposed · ~2,107 tokens

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.

Tool Tokens
skimguard_about ~49

Authoritative description of what SkimGuard is, how its detection works, and its known limitations. Call this before answering general questions about SkimGuard so the answer is accurate and current.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_coverage_stats ~84

Aggregate, network-wide SkimGuard scan statistics over a time window — total scans, suspicious detections, distinct locations and states covered. No identifying data.

NameTypeReqDescription
daysintegerLookback window in days (1-365, default 30)
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_device_prevalence ~99

Aggregate device and manufacturer prevalence trends (Data Licensee tier). REQUIRES the SkimGuard Data Licensee tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_find_nearby_activity ~143

Find locations near a latitude/longitude that SkimGuard users have scanned recently, with suspicious-detection counts. Use for "any skimmers reported near me?". Only publicly visible locations are returned; private residences are excluded.

NameTypeReqDescription
daysintegerLookback window in days (1-365, default 30)
latitudenumberyes
limitinteger
longitudenumberyes
radius_metersintegerSearch radius in meters (50-50000, default 2000)
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_get_location_status ~237

Look up SkimGuard card-skimmer scan status for a location by its Google Place ID. Returns how recently the location was scanned, how many scans it has, and whether any suspicious Bluetooth devices were detected. Use this to answer "is this gas station / ATM / store safe to use my card at?". Returns "not publicly tracked" for locations with no public scan data (including private residences, which are deliberately excluded). Side effect: if the Place ID is one SkimGuard has never seen, it is added to SkimGuard's own public location registry so the next nearby scan can attach to it. That writes to SkimGuard data only — never anything you or the user own — so this tool is read-only from the caller's perspective.

NameTypeReqDescription
daysintegerLookback window in days (1-365, default 30)
placeIdstringyesGoogle Place ID, e.g. ChIJN1t_tDeuEmsRUsoyG83frY4
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_inspection_stats ~117

Aggregate PCI POI device-inspection compliance trends — pass/fail, tamper-incident, and tamper-check failure rates (Data Licensee tier). REQUIRES the SkimGuard Data Licensee tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_location_devices ~93

Bluetooth devices seen at one of YOUR business locations. REQUIRES the SkimGuard Business tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_lookup_bluetooth_manufacturer ~99

Resolve a Bluetooth SIG company identifier to a manufacturer name and SkimGuard risk rating. Accepts decimal (76) or hex (0x004C). Useful for explaining what a device seen in a scan actually is.

NameTypeReqDescription
company_codestringyesBT SIG company identifier, decimal or 0x-hex
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_my_earnings ~98

YOUR commission totals and payout status as a SkimGuard reseller. REQUIRES the SkimGuard Partner tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_my_locations ~100

Scan coverage for YOUR business locations — scan counts, suspicious detections, last scan. REQUIRES the SkimGuard Business tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_my_merchants ~94

Scan activity for merchants attributed to YOUR reseller account. REQUIRES the SkimGuard Partner tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_my_scanner_health ~96

Whether YOUR SkimGuard scanners are online and reporting. REQUIRES the SkimGuard Business tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_my_stale_locations ~96

Which of YOUR business locations are overdue for a scan. REQUIRES the SkimGuard Business tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_regional_risk ~100

Aggregate skimmer risk by US state (Data Licensee tier). REQUIRES the SkimGuard Data Licensee tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

skimguard_route_risk ~275

Given a series of route points, report locations along that stretch of road with recent suspicious activity or stale scan coverage. IMPORTANT: this checks the road AHEAD, not a whole trip — at most 20 km of the supplied route is examined, and the response says how much was actually checked (examinedMeters / truncated). For accurate results pass real route geometry from a directions provider; passing only a start and end point checks a straight line between them, which will not follow the actual road. TO COVER A LONGER TRIP: split the route geometry into consecutive 20 km segments and call this tool once per segment, then combine the results — that is the supported way to check a full drive. A 500 km trip is about 25 calls, which fits inside the anonymous rate limit. Do NOT report a route as clear unless you have covered all of it this way; say which portion you checked.

NameTypeReqDescription
corridor_metersintegerHow far either side of the route to look (10-200 m)
lookahead_metersintegerHow far along the route to look (max 20 km)
polylinearrayyesOrdered route points, start first
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_search_locations ~219

Find a location by NAME or address (e.g. "Shell on Riverside, Austin TX", "Chase ATM near Union Square") and get its SkimGuard card-skimmer scan status. Use this when you know what a place is called but do not have its Google Place ID — it resolves the name first, then reports scan status for each match. Pass latitude/longitude when you know roughly where the user is; it sharply improves matching for common brand names. Locations with no scan data are reported as unknown, never as unsafe.

NameTypeReqDescription
daysintegerLookback window in days (1-365, default 30)
latitudenumberOptional bias — the user's approximate latitude
limitinteger
longitudenumberOptional bias — the user's approximate longitude
querystringyesPlace name and ideally a city, e.g. "Shell gas station Riverside Austin TX"
response_formatstringResponse format: 'markdown' (default) or 'json'

No output schema declared.

No examples provided.

skimguard_training_stats ~108

Aggregate PCI staff-training coverage trends — completion, pass rate, delivery mix, and expiry (Data Licensee tier). REQUIRES the SkimGuard Data Licensee tier. You are not signed in to an account with it. Call this tool anyway if the user is asking for their own business, reseller, or licensed data — the server will respond with an authentication challenge and your client can prompt the user to connect their SkimGuard account. Do not fabricate an answer instead.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.