Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,549Letters: 14Defects: 1,324counted 4 min ago
teppi

Server definition

Hash
sha256:00181a94bc7884c1d674b13ac25c2ca7063cff848d20cf9c7bc1a4aa4448b27f
What it is
What a remote MCP server returned when asked what it offers: 9 tools

The blob, as servednamed by its sha256

{ "instructions": "Ground subsidence/uplift for US addresses (negative mm/yr = sinking). Decision tree: 0) no API key? register_agent (FREE) issues one instantly — save it and use it as the Bearer token; 1) get_coverage (FREE) or check_ground_motion with dry_run=true (FREE) to confirm coverage + cost; 2) check_ground_motion to buy the $0.40 report; route logic on assessment_code (rapid_subsidence/notable_subsidence/stable/mild_uplift/strong_uplift/no_clear_trend). Use max_age_days/min_confidence/since/require_significant to avoid paying for data you'd reject — those return FREE (require_significant=true skips paying when the rate would be no_clear_trend statistical noise; dry_run also returns likely_significant so you can predict answer quality before spending). check_portfolio for many addresses (supports max_spend_usd budget cap); get_coverage accepts addresses[] to size a whole job free; get_account for balance; get_usage for the billing ledger; out of credits? buy_credits returns a payment link (card or BTC). Misses are always free. Defaults: explain=false, compact=false.", "tools": [ { "description": "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.", "inputSchema": { "properties": { "address": { "description": "the address of a report already purchased on this account", "type": "string" }, "question": { "description": "your question about the report", "type": "string" } }, "required": [ "question", "address" ], "type": "object" }, "name": "ask_inspector", "outputSchema": { "properties": { "reply": { "type": "string" } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": { "amount_usd": { "description": "1 to 10000 (USD)", "type": "number" }, "method": { "description": "default stripe (card)", "enum": [ "stripe", "crypto" ], "type": "string" } }, "required": [ "amount_usd" ], "type": "object" }, "name": "buy_credits", "outputSchema": { "properties": { "amount_usd": { "type": "number" }, "checkout_url": { "type": [ "string", "null" ] }, "invoice_url": { "type": [ "string", "null" ] }, "method": { "type": "string" }, "status": { "type": "string" }, "txn_id": { "type": [ "string", "null" ] } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": { "address": { "description": "US street address", "type": "string" }, "compact": { "description": "lean payload (fewer tokens)", "type": "boolean" }, "dry_run": { "description": "FREE preview: coverage + would_cost + data age, no rate, no charge", "type": "boolean" }, "explain": { "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.", "type": "boolean" }, "lat": { "type": "number" }, "lon": { "type": "number" }, "max_age_days": { "description": "if data older than this, return free instead of billing", "type": "integer" }, "min_confidence": { "description": "0-1; below this, return free instead of billing", "type": "number" }, "require_significant": { "description": "if the rate would be no_clear_trend (within its error bar), return FREE instead of billing — never pay for statistical noise", "type": "boolean" }, "since": { "description": "YYYY-MM-DD; if no new data since this date, return free", "type": "string" } }, "type": "object" }, "name": "check_ground_motion", "outputSchema": { "properties": { "assessment_code": { "enum": [ "rapid_subsidence", "notable_subsidence", "stable", "mild_uplift", "strong_uplift", "no_clear_trend", null ], "type": [ "string", "null" ] }, "confidence": { "type": [ "number", "null" ] }, "cost_usd": { "type": "number" }, "credits_remaining_usd": { "type": [ "number", "null" ] }, "data_age_days": { "type": [ "integer", "null" ] }, "engine": { "description": "narration engine: GL52 (free tier) or CL46 (paying)", "type": [ "string", "null" ] }, "ground_brief": { "description": "only when explain=true", "type": [ "string", "null" ] }, "near_threshold": { "type": [ "boolean", "null" ] }, "status": { "enum": [ "ok", "no_data", "no_coverage", "stale_data", "low_confidence", "low_geocode_precision", "no_new_data" ], "type": "string" }, "velocity_uncertainty_mm_yr": { "type": [ "number", "null" ] }, "velocity_vertical_in_yr": { "type": [ "number", "null" ] }, "velocity_vertical_mm_yr": { "type": [ "number", "null" ] } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": { "addresses": { "description": "up to 1000 US addresses (must be an ARRAY, not one string)", "items": { "type": "string" }, "type": "array" }, "max_spend_usd": { "description": "hard budget cap: billing stops at this total; over-budget items come back skipped_for_budget", "type": "number" } }, "required": [ "addresses" ], "type": "object" }, "name": "check_portfolio", "outputSchema": { "properties": { "credits_remaining_usd": { "type": [ "number", "null" ] }, "results": { "items": { "type": "object" }, "type": "array" }, "status": { "type": "string" }, "summary": { "type": "object" } }, "type": "object" } }, { "description": "FREE: your SibFly credit balance, price per report, reports remaining, and top-up URL.", "inputSchema": { "properties": {}, "type": "object" }, "name": "get_account", "outputSchema": { "properties": { "credits_usd": { "type": "number" }, "price_per_report_usd": { "type": "number" }, "reports_remaining_est": { "type": "integer" }, "top_up_url": { "type": "string" } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": { "address": { "type": "string" }, "addresses": { "description": "batch mode: size a whole job in one free call", "items": { "type": "string" }, "type": "array" }, "lat": { "type": "number" }, "lon": { "type": "number" } }, "type": "object" }, "name": "get_coverage", "outputSchema": { "properties": { "covered": { "type": "boolean" }, "data_age_days": { "type": [ "integer", "null" ] }, "frame": { "type": [ "string", "null" ] }, "results": { "type": [ "array", "null" ] }, "summary": { "type": [ "object", "null" ] }, "would_cost_usd": { "type": [ "number", "null" ] } }, "type": "object" } }, { "description": "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.", "inputSchema": { "properties": { "address": { "type": "string" }, "dry_run": { "description": "FREE preview: coverage + n_points + would_cost, no series, no charge", "type": "boolean" }, "from_date": { "type": "string" }, "lat": { "type": "number" }, "lon": { "type": "number" }, "max_age_days": { "description": "if data older than this, return free instead of billing", "type": "integer" }, "to_date": { "type": "string" } }, "type": "object" }, "name": "get_motion_history", "outputSchema": { "properties": { "cost_usd": { "type": "number" }, "credits_remaining_usd": { "type": [ "number", "null" ] }, "cum_mm": { "type": "array" }, "dates": { "type": "array" }, "delta": { "type": [ "object", "null" ] }, "status": { "type": "string" } }, "type": "object" } }, { "description": "FREE: your recent billed calls (line-item ledger with request_id, endpoint, address, cost) so you can reconcile spend against reports.", "inputSchema": { "properties": { "limit": { "description": "max rows, default 100, max 1000", "type": "integer" } }, "type": "object" }, "name": "get_usage", "outputSchema": { "properties": { "count": { "type": "integer" }, "items": { "items": { "type": "object" }, "type": "array" }, "spent_today_usd": { "type": "number" } }, "type": "object" } }, { "description": "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).", "inputSchema": { "properties": { "email": { "description": "a durable email address (disposable domains rejected)", "type": "string" }, "password": { "description": "optional; auto-generated and returned if omitted", "type": "string" } }, "required": [ "email" ], "type": "object" }, "name": "register_agent", "outputSchema": { "properties": { "api_key": { "type": "string" }, "credits_usd": { "type": "number" }, "password": { "type": "string" }, "price_per_report_usd": { "type": "number" }, "reports_remaining": { "type": "integer" } }, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:00181a94bc7884c1d674b13ac25c2ca7063cff848d20cf9c7bc1a4aa4448b27f | sha256sum