Skip to main content
Glama

scanverdict

Would you core that slab on one AI's say-so? scanverdict is a local stdio bridge to the hosted GroundTruth MCP service, which gives subsurface scanning crews a second set of eyes: two different AI models read a GPR, locate, pipe, or X-ray scan independently — the first interprets, the second is prompted to refute it — plus a voice-first bid builder for the trades and a pricing lookup.

Safety first: a read_scan result is advisory only. It is never a clearance to cut, core, or dig, and a certified technician must review and sign off before any coring or excavation. Disagreement between the two reads only ever raises a hazard's severity; it never quietly clears one.

The hosted endpoint is https://gtfi.ai/mcp (no authentication). This package runs locally as a stdio MCP server and forwards each tool call to that endpoint as JSON-RPC. Point it elsewhere with the GROUNDTRUTH_MCP_URL environment variable.

Documented upstream limits: read_scan runs two vision models per call and is limited to 2 per caller per day (with a global daily ceiling); draft_estimate allows 5 per hour and 20 per day per caller. Nothing is charged through the API.

CLI

npx @reneturcios/scanverdict read-scan https://example.com/scan.jpg --discipline gpr --field-note "NW corner"
npx @reneturcios/scanverdict draft-estimate "Replaced the panel, 85 feet of conduit, 8 can lights, 16 hours" --trade electrical
npx @reneturcios/scanverdict pricing
npx @reneturcios/scanverdict --version

Output is the upstream result as JSON. Exit codes: 0 on success, 1 on a runtime error (including an upstream failure), 2 on a usage error.

Related MCP server: greennode-agentbase-mcp

MCP server

npx -y @reneturcios/scanverdict mcp

MCP client config:

{
  "mcpServers": {
    "scanverdict": {
      "command": "npx",
      "args": ["-y", "@reneturcios/scanverdict", "mcp"]
    }
  }
}

Tools

  • read_scan — Two different AI models read a subsurface scan independently: the first interprets, the second is prompted to refute it. Advisory only; a certified technician must review and sign off before any coring or excavation.

    • image_url (string, required) — public https link to a JPEG or PNG, max 8 MB

    • discipline (string, optional) — one of gpr, locate, pipe, xray, milestone; default gpr

    • field_note (string, optional) — what the tech said on site; context only, it can never clear a hazard the image shows

  • draft_estimate — Turns a plain-English trade job into an itemized bid at realistic US market prices.

    • job_description (string, required) — the job in plain English

    • trade (string, optional) — one of electrical, plumbing, hvac, general

  • get_pricing — Current plans for both products. Free and unlimited. Takes no arguments.

Docker

docker run -i ghcr.io/cloudcorprecords/scanverdict
docker run --rm ghcr.io/cloudcorprecords/scanverdict pricing

Development

npm install
npm run build   # tsc -> dist/
npm test        # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev     # run the CLI from source

License

MIT — Copyright (c) 2026 Rene Turcios

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    A local STDIO MCP server that bridges MCP clients to the Codex CLI by sending instructions to a configured workspace, exposing task run, status, and result tools with a read-only sandbox and no remote transport.
    131
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A local stdio MCP server that exposes the public Atraxis guild-commerce API to coding agents such as Codex and Claude Code, letting them browse the public contract without a token and, once ATRAXIS_API_TOKEN is supplied, read guild warehouse, currency, balance, and activity data. Write operations stay hidden unless explicitly enabled with --allow-writes, and transfers always require a caller-supplied idempotency key.
    MIT