ground-motion

Measured ground motion per US address (NASA InSAR). Self-register, $0.40/report, misses free.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
97%
Vollständigkeit des Schemas
84%
Qualität der Benennung
93%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (1)

  • LOWTool 'get_account' description lacks action verbin get_account

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~2,090Tokens (Tool-Definitionen)
~1.7 KBTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.63% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "ground-motion": {
      "url": "https://sibfly.com/mcp"
    }
  }
}

Remote-Endpunkte

https://sibfly.com/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (9)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢check_ground_motion(address, lat, lon, explain, dry_run, ...)

Measured ground motion (sinking/uplift) for a US address or lat/lon, in mm/year AND in/year, from NASA OPERA Sentinel-1 InSAR. Costs $0.40 from your SibFly credits; out-of-coverage / too-stale / too-low-confidence / fuzzy-geocode return FREE. Use the gate params to avoid paying for data you'd reject. dry_run=true is a FREE coverage+cost preview.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "US street address"
    },
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    },
    "explain": {
      "type": "boolean",
      "description": "add ground_brief: ~600 tokens of plain-English narration + FAQ (engine GL52 free tier / CL46 paying). Adds ~10s latency. Only set when a human will read the output; use ask_inspector for follow-up Q&A."
    },
    "dry_run": {
      "type": "boolean",
      "description": "FREE preview: coverage + would_cost + data age, no rate, no charge"
    },
    "max_age_days": {
      "type": "integer",
      "description": "if data older than this, return free instead of billing"
    },
    "min_confidence": {
      "type": "number",
      "description": "0-1; below this, return free instead of billing"
    },
    "since": {
      "type": "string",
      "description": "YYYY-MM-DD; if no new data since this date, return free"
    },
    "require_significant": {
      "type": "boolean",
      "description": "if the rate would be no_clear_trend (within its error bar), return FREE instead of billing — never pay for statistical noise"
    },
    "compact": {
      "type": "boolean",
      "description": "lean payload (fewer tokens)"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ok",
        "no_data",
        "no_coverage",
        "stale_data",
        "low_confidence",
        "low_geocode_precision",
        "no_new_data"
      ]
    },
    "velocity_vertical_mm_yr": {
      "type": [
        "number",
        "null"
      ]
    },
    "velocity_vertical_in_yr": {
      "type": [
        "number",
        "null"
      ]
    },
    "velocity_uncertainty_mm_yr": {
      "type": [
        "number",
        "null"
      ]
    },
    "assessment_code": {
      "type": [
        "string",
        "null"
      ],
      "enum": [
        "rapid_subsidence",
        "notable_subsidence",
        "stable",
        "mild_uplift",
        "strong_uplift",
        "no_clear_trend",
        null
      ]
    },
    "confidence": {
      "type": [
        "number",
        "null"
      ]
    },
    "data_age_days": {
      "type": [
        "integer",
        "null"
      ]
    },
    "near_threshold": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "cost_usd": {
      "type": "number"
    },
    "credits_remaining_usd": {
      "type": [
        "number",
        "null"
      ]
    },
    "ground_brief": {
      "type": [
        "string",
        "null"
      ],
      "description": "only when explain=true"
    },
    "engine": {
      "type": [
        "string",
        "null"
      ],
      "description": "narration engine: GL52 (free tier) or CL46 (paying)"
    }
  }
}
🟢check_portfolio(addresses, max_spend_usd)

Batch ground-motion for many US addresses in one call. Only covered addresses are billed ($0.40 each); misses and duplicate cells are free. If credits run out mid-batch the response status is 'insufficient_credits' and unbilled items are marked — top up (buy_credits) and retry them.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "addresses": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "up to 1000 US addresses (must be an ARRAY, not one string)"
    },
    "max_spend_usd": {
      "type": "number",
      "description": "hard budget cap: billing stops at this total; over-budget items come back skipped_for_budget"
    }
  },
  "required": [
    "addresses"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string"
    },
    "summary": {
      "type": "object"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "credits_remaining_usd": {
      "type": [
        "number",
        "null"
      ]
    }
  }
}
🟢get_coverage(address, lat, lon, addresses)

FREE pre-flight: is a US address/point covered, how stale is the data (data_age_days), and what a report would cost. Accepts ONE address/lat+lon, OR addresses[] (up to 1000, needs your Bearer key) to size a whole job before spending. Call this before spending.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string"
    },
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    },
    "addresses": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "batch mode: size a whole job in one free call"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "covered": {
      "type": "boolean"
    },
    "frame": {
      "type": [
        "string",
        "null"
      ]
    },
    "data_age_days": {
      "type": [
        "integer",
        "null"
      ]
    },
    "would_cost_usd": {
      "type": [
        "number",
        "null"
      ]
    },
    "summary": {
      "type": [
        "object",
        "null"
      ]
    },
    "results": {
      "type": [
        "array",
        "null"
      ]
    }
  }
}
🟢get_motion_history(address, lat, lon, from_date, to_date, ...)

Multi-year cumulative motion history for an address. Pass from_date and to_date (YYYY-MM-DD) to get the movement between two dates. Costs $0.40 (misses free). dry_run=true is a FREE preview (points + dates + cost, no data); max_age_days returns free instead of billing for stale data.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string"
    },
    "lat": {
      "type": "number"
    },
    "lon": {
      "type": "number"
    },
    "from_date": {
      "type": "string"
    },
    "to_date": {
      "type": "string"
    },
    "dry_run": {
      "type": "boolean",
      "description": "FREE preview: coverage + n_points + would_cost, no series, no charge"
    },
    "max_age_days": {
      "type": "integer",
      "description": "if data older than this, return free instead of billing"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string"
    },
    "dates": {
      "type": "array"
    },
    "cum_mm": {
      "type": "array"
    },
    "delta": {
      "type": [
        "object",
        "null"
      ]
    },
    "cost_usd": {
      "type": "number"
    },
    "credits_remaining_usd": {
      "type": [
        "number",
        "null"
      ]
    }
  }
}
🟢get_account

FREE: your SibFly credit balance, price per report, reports remaining, and top-up URL.

Eingabe-Schema

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

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "credits_usd": {
      "type": "number"
    },
    "price_per_report_usd": {
      "type": "number"
    },
    "reports_remaining_est": {
      "type": "integer"
    },
    "top_up_url": {
      "type": "string"
    }
  }
}
🟡register_agent(email, password)

FREE: create a new SibFly account and get an API key + free starter credits in ONE call — no human, no captcha, no card. Use this when you have no API key. SAVE the returned api_key and pass it as the Bearer token on later calls (MCP clients: set it as the Authorization header).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "description": "a durable email address (disposable domains rejected)"
    },
    "password": {
      "type": "string",
      "description": "optional; auto-generated and returned if omitted"
    }
  },
  "required": [
    "email"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "api_key": {
      "type": "string"
    },
    "credits_usd": {
      "type": "number"
    },
    "price_per_report_usd": {
      "type": "number"
    },
    "reports_remaining": {
      "type": "integer"
    },
    "password": {
      "type": "string"
    }
  }
}
🟢buy_credits(amount_usd, method)

Get a machine-usable payment link to top up credits (requires your Bearer API key). method 'stripe' returns a card checkout_url; 'crypto' returns a BTC invoice_url + txn_id. Open/relay the URL to complete payment; credits land automatically afterwards — confirm with get_account.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "amount_usd": {
      "type": "number",
      "description": "1 to 10000 (USD)"
    },
    "method": {
      "type": "string",
      "enum": [
        "stripe",
        "crypto"
      ],
      "description": "default stripe (card)"
    }
  },
  "required": [
    "amount_usd"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "method": {
      "type": "string"
    },
    "checkout_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "invoice_url": {
      "type": [
        "string",
        "null"
      ]
    },
    "txn_id": {
      "type": [
        "string",
        "null"
      ]
    },
    "amount_usd": {
      "type": "number"
    },
    "status": {
      "type": "string"
    }
  }
}
🟢ask_inspector(question, address)

FREE follow-up Q&A with the SibFly Inspector about a report you ALREADY BOUGHT (buy via check_ground_motion first). Ask what the numbers mean for foundations, staleness, seasonal swings, etc. It answers only from the report's numbers (never invents), and won't give buy/walk-away advice. Per-account message allowance applies.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "question": {
      "type": "string",
      "description": "your question about the report"
    },
    "address": {
      "type": "string",
      "description": "the address of a report already purchased on this account"
    }
  },
  "required": [
    "question",
    "address"
  ]
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "reply": {
      "type": "string"
    }
  }
}
🟢get_usage(limit)

FREE: your recent billed calls (line-item ledger with request_id, endpoint, address, cost) so you can reconcile spend against reports.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "description": "max rows, default 100, max 1000"
    }
  }
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "spent_today_usd": {
      "type": "number"
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object"
      }
    }
  }
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet9 Tools
verifiziertVersion nicht aufgezeichnet9 Tools