{"name":"com.geiant/mcp-perception","slug":"geiant-mcp-perception","title":null,"description":"Geospatial AI MCP server — satellite imagery, embeddings, weather, GNS governance","url":"https://mcp.market/server/geiant-mcp-perception","rating":null,"grade":"B","score":76,"certified":false,"status":"active","category":"maps","tags":["maps"],"presence":{"score":20,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-05T07:05:00.000Z","license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T03:50:47.808Z","last_ok_at":"2026-11-04T03:50:47.808Z","latency_ms":289},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/GNS-Foundation/geiant","website":null,"version":"0.3.3","remotes":[{"type":"streamable-http","url":"https://packagesmcp-perception-production.up.railway.app/mcp"}],"packages":[],"tools":[{"name":"gns_get_compliance_report","description":"Returns a full EU AI Act compliance report for a GNS agent, including trust score, chain verification, Merkle epoch proofs, delegation certificate, and regulatory status.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"agentHandle":{"type":"string","description":"GNS handle of the agent (e.g. energy@italy-geiant)"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"gns_get_trust_score","description":"Get the current TierGate trust tier and score for an agent. Tiers: provisioned (0%) → observed (25%) → trusted (60%) → certified (85%) → sovereign (99%). Omit agent_pk to query the server's own agent.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"agent_pk":{"type":"string","description":"Ed25519 public key (64 hex chars). Omit for own agent."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"gns_roll_epoch","description":"Roll all pending breadcrumbs into a new sealed epoch with a Merkle root. Returns { epoch_index, merkle_root, block_count, epoch_hash }. Call this at the end of a session to produce a tamper-evident compliance snapshot.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"gns_verify_chain","description":"Verify the cryptographic integrity of an agent's breadcrumb chain. Returns { is_valid, block_count, issues[] } plus epoch Merkle roots. A valid chain proves no audit records have been tampered with.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"agent_pk":{"type":"string","description":"Ed25519 public key (64 hex chars). Omit for own agent."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"perception_classify","description":"Run Prithvi-EO-2.0-300M-TL-Sen1Floods11 flood classification on a Sentinel-2 tile previously fetched by perception_fetch_tile. Sends the 6-band chip to a RunPod endpoint and returns: dominant_class, flood_pixel_pct, confidence, class_counts, and the full perception_chain. The perception chain is written to Spatial Memory and a signed audit breadcrumb is dropped to the agent trail.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"tile_id":{"type":"string","description":"tile_id from perception_fetch_tile result (must be in session cache)."},"task":{"type":"string","enum":["flood","landcover","burnscar","anomaly"],"description":"Classification task. Currently only \"flood\" is supported."},"h3_cell":{"type":"string","description":"Override H3 cell. Defaults to the cell from the original fetch."},"write_to_spatial_memory":{"type":"boolean","description":"Write perception chain to geiant_geometry_state. Default: true."}},"required":["tile_id","task"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"perception_embed","description":"[Sub-phase 4.2 — NOT YET IMPLEMENTED] Will generate Clay v1.5 embeddings.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"tile_id":{"type":"string","description":"tile_id from perception_fetch_tile result"}},"required":["tile_id"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"perception_fetch_tile","description":"Fetch the least-cloudy Sentinel-2 L2A tile covering a given H3 cell from Microsoft Planetary Computer. Returns signed COG band URLs for all 6 Prithvi/Clay spectral bands (B02 Blue, B03 Green, B04 Red, B8A NIR, B11 SWIR1, B12 SWIR2), plus tile metadata. The tile is cached in memory for subsequent perception_classify or perception_embed calls.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"h3_cell":{"type":"string","description":"H3 cell ID at any resolution."},"timestamp":{"type":"string","description":"ISO 8601 datetime. Search back from this point. Defaults to now."},"max_cloud_cover":{"type":"number","minimum":0,"maximum":100,"description":"Max cloud cover %. Default: 20."},"days_back":{"type":"number","minimum":1,"maximum":365,"description":"Days to search back. Default: 30."}},"required":["h3_cell"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"perception_weather","description":"Query atmospheric conditions for an H3 cell at a given timestamp from Open-Meteo ERA5. Returns wind, precipitation, temperature. Writes to Spatial Memory and drops a signed audit breadcrumb.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"h3_cell":{"type":"string","description":"H3 cell ID at any resolution."},"timestamp":{"type":"string","description":"ISO 8601 datetime for weather lookup. Defaults to now."},"write_to_spatial_memory":{"type":"boolean","description":"Write weather context to geiant_geometry_state. Default: true."}},"required":["h3_cell"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":76,"grade":"B","scanned_at":"2026-09-27T22:35:31.646Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T22:35:31.654Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 289ms"]},"poisoning":{"score":15,"max":15,"notes":["8 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 23 days ago"]},"identity":{"score":4,"max":10,"notes":["namespace and repository owner differ"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://packagesmcp-perception-production.up.railway.app/mcp","reachable":true,"authRequired":false,"latencyMs":289,"serverInfo":{"name":"geiant-perception","version":"0.3.0"}}],"packages":[],"repo":{"found":true,"owner":"GNS-Foundation","repo":"geiant","archived":false,"pushedAt":"2026-09-05T07:05:00Z","stars":0,"forks":0,"openIssues":3,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/259821998?v=4","ownerCreatedAt":"2026-02-06T08:50:04Z"},"icon":{"url":"https://geiant.com/geiant-favicon-180.png","source":"site","width":180,"height":180},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":null,"lastPushAt":"2026-09-05T07:05:00.000Z","score":20}}}},"grade_history":[],"reviews":[]}