SatelliteQuotes

Measure property from satellite imagery, price 24 trades, and install contractor quote widgets.

Should I use this

Quality & Safety

B
Description quality
94%
Schema completeness
76%
Naming quality
94%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'get_install_snippet' description contains placeholder textin get_install_snippet
  • INFOTool description contains placeholder or incomplete textin get_install_snippet

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~830Tokens (tool definitions)
~766 BTypical response size
Moderate attention impact (0.65% 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": {
    "satellitequotes": {
      "url": "https://www.satellitequotes.com/api/mcp"
    }
  }
}

Remote endpoints

https://www.satellitequotes.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_platforms

The website builders and CMSs there are step-by-step install instructions for, with how long each takes. Call this first when you do not know what the contractor's site is built with.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_install_snippet(platform, token, mode, service)

The exact script tag to paste, plus ordered steps for the given platform. Pass the contractor's own token if you have it; otherwise the snippet comes back with a placeholder and instructions for finding the real one.

Input Schema

{
  "type": "object",
  "properties": {
    "platform": {
      "type": "string",
      "description": "Platform id or name, e.g. wordpress, squarespace, wix, webflow, shopify, godaddy, html, google-tag-manager. Omit for the generic snippet."
    },
    "token": {
      "type": "string",
      "description": "The contractor's public token, beginning pk_live_."
    },
    "mode": {
      "type": "string",
      "enum": [
        "inline",
        "modal"
      ],
      "description": "inline embeds the tool in the page; modal opens it from a button."
    },
    "service": {
      "type": "string",
      "description": "Trade the widget should quote. Currently only: roofing. For other trades, use estimate_cost for a ballpark instead."
    }
  },
  "additionalProperties": false
}
⚪verify_installation(url)

Fetches a public page and reports whether the embed tag is present, whether the token resolves to a real account, whether the widget is actually serving, and what to fix. Use this after the contractor says they have pasted the tag.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The public page URL to check."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
🟢get_pricing

Live plan prices, trial length, what happens to the card during the trial, and how cancellation works. Read this rather than quoting a price from memory.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_trades(search)

Every trade the product can price from aerial measurement, with what each is measured from - roof surface, ground area, wall area or perimeter - and the national cost range per unit. Use this to answer whether a given business can be quoted this way.

Input Schema

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "description": "Optional trade name or synonym, e.g. \"fence\", \"blacktop\", \"synthetic grass\"."
    }
  },
  "additionalProperties": false
}
⚪estimate_cost(trade, measurement, pitch_rise)

Turns a measurement into a national cost range for a trade. For roof trades, pass the building footprint and the pitch - the roof surface multiplier is applied for you. Returns the range, the per-unit rates, what drives the price, and the limits of the estimate.

Input Schema

{
  "type": "object",
  "properties": {
    "trade": {
      "type": "string",
      "description": "Trade id or name, e.g. roofing, fencing, artificial-turf."
    },
    "measurement": {
      "type": "number",
      "description": "Square feet, or linear feet for perimeter trades such as fencing and gutters."
    },
    "pitch_rise": {
      "type": "number",
      "description": "Roof rise per 12 inches of run, e.g. 6 for a 6/12 roof. Roof trades only. Defaults to 6."
    }
  },
  "required": [
    "trade",
    "measurement"
  ],
  "additionalProperties": false
}
⚪lead_playbook(trade)

What actually moves the needle on inbound leads for a specific contracting trade — roofing, paving, landscaping, gutters, siding, decks, pools, turf or solar — with the numbers behind each step.

Input Schema

{
  "type": "object",
  "properties": {
    "trade": {
      "type": "string",
      "description": "One of: roofing, paving, landscaping, gutters, siding, decks, pools, turf, solar, general. Defaults to a general contracting playbook."
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools