protogrid

Search / io.skimguard/skimguard

skimguard

R0· no sign-in

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

v2.0.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality91strong
Trust80of 100
Uptime, 30 days100%
Latency p50573 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "skimguard": {
      "type": "http",
      "url": "https://mcp.skimguard.io/mcp"
    }
  }
}
claude mcp add --transport http skimguard https://mcp.skimguard.io/mcp
[mcp_servers.skimguard]
url = "https://mcp.skimguard.io/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "skimguard": {
      "type": "remote",
      "url": "https://mcp.skimguard.io/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "skimguard": {
      "type": "http",
      "url": "https://mcp.skimguard.io/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=skimguard&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLnNraW1ndWFyZC5pby9tY3AifQ%3D%3D"
}
{
  "servers": {
    "skimguard": {
      "type": "http",
      "url": "https://mcp.skimguard.io/mcp"
    }
  }
}
{
  "mcpServers": {
    "skimguard": {
      "httpUrl": "https://mcp.skimguard.io/mcp"
    }
  }
}
extensions:
  "skimguard":
    enabled: true
    name: "skimguard"
    type: streamable_http
    uri: "https://mcp.skimguard.io/mcp"
    timeout: 300

Quality 91 / 100strong

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations17 of 17 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 3,441 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

17 tools, about 3,441 tokens to load them all · tool set 36622fabc7b0 · checked 2026-10-20 17:34 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 80 / 100

no-repository
provenance55
liveness100
freshness85
hygiene80

+dns-namespace +website +reachable +uptime-100% ~updated-76d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.skimguard.io/mcp streamable-httpnoneyes100%573 ms2025-11-252026-10-20

Tools (17)

skimguard_aboutread-onlyAuthoritative 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.
skimguard_coverage_statsread-onlyAggregate, network-wide SkimGuard scan statistics over a time window — total scans, suspicious detections, distinct locations and states covered. No identifying data.
skimguard_device_prevalenceread-onlyAggregate 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.
skimguard_find_nearby_activityread-onlyFind 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.
skimguard_get_location_statusread-onlyLook 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.
skimguard_inspection_statsread-onlyAggregate 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.
skimguard_location_devicesread-onlyBluetooth 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.
skimguard_lookup_bluetooth_manufacturerread-onlyResolve 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.
skimguard_my_earningsread-onlyYOUR 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.
skimguard_my_locationsread-onlyScan 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.
skimguard_my_merchantsread-onlyScan 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.
skimguard_my_scanner_healthread-onlyWhether 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.
skimguard_my_stale_locationsread-onlyWhich 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.
skimguard_regional_riskread-onlyAggregate 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.
skimguard_route_riskread-onlyGiven 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.
skimguard_search_locationsread-onlyFind 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.
skimguard_training_statsread-onlyAggregate 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.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "io.skimguard/skimguard",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.skimguard.io/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "2.0.0",
  "websiteUrl": "https://skimguard.io",
  "description": "Ask whether a location has recent credit-card-skimmer detections, from a consumer sensor network."
}