GroundTruth — subsurface scan QA & trade estimating

Two independent AI models read a GPR, locate or pipe scan and flag the do-not-core call.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
77%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~511Tokens (tool definitions)
~950 BTypical response size
Minimal attention impact (0.40% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "groundtruth": {
      "url": "https://gtfi.ai/mcp"
    }
  }
}

Remote endpoints

https://gtfi.ai/mcpstreamable-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡read_scan(image_url, discipline, field_note)

Get an independent AI second opinion on a subsurface scan before anyone cores or digs. Send a public image URL of a GPR scan, a marked-up concrete slab photo, a utility-locate markup, a concrete radiograph, or a CCTV pipe frame. TWO different AI models read it independently — the second is prompted to refute the first — and you get back every located target with its hazard class (do-not-core / rebar / verify / clear), plus a QA flag when the two reads disagree. Advisory only: a certified technician must review and sign off before any cutting.

Input Schema

{
  "type": "object",
  "properties": {
    "image_url": {
      "type": "string",
      "description": "Public https URL to a JPEG or PNG of the scan or the marked-up surface. Max 8 MB."
    },
    "discipline": {
      "type": "string",
      "description": "One of: gpr (concrete scanning), locate (utility locating), pipe (CCTV sewer), xray (concrete radiograph), milestone (FL SB 4-D condo concrete). Defaults to gpr."
    },
    "field_note": {
      "type": "string",
      "description": "Optional: what the technician said on site. Used as context for names and depths only — it can never clear a hazard the image shows."
    }
  },
  "required": [
    "image_url"
  ]
}
🟡draft_estimate(job_description, trade)

Turn a plain-English description of a trade job into a professional itemized bid — real materials by size, fittings, consumables and labor on its own line, at realistic US market prices. Built for one-truck electrical, plumbing, HVAC and general-contracting shops. This is GruntPay: the contractor normally speaks this into their phone. Returns the line items plus a link to brand it and send it to the customer.

Input Schema

{
  "type": "object",
  "properties": {
    "job_description": {
      "type": "string",
      "description": "What the contractor did or will do, in plain words. e.g. \"Replaced the panel, 85 feet of conduit, 8 can lights, 16 hours.\""
    },
    "trade": {
      "type": "string",
      "description": "electrical, plumbing, hvac, or general. Defaults to general."
    }
  },
  "required": [
    "job_description"
  ]
}
🟢get_pricing

Current GroundTruth and GruntPay plans and prices. Free to call — use it before answering any cost question rather than guessing.

Input Schema

{
  "type": "object",
  "properties": {}
}

Recommended Prompts

retrieve_data
Get details about [item] from GroundTruth — subsurface scan QA & trade estimating
Expected tools: read_scan
fetch_info
Fetch [information type] using GroundTruth — subsurface scan QA & trade estimating
Expected tools: read_scan

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools
verifiedversion not recorded3 tools