GreenlandAI

by greenlandai.ai · ai.greenlandai/greenlandai

The physical world as queryable data: companies, deposits, infrastructure, projects and commodities.

OnlineRemote
Category
Productivity
Connection
Remote (HTTP)
Tools
50 reported
Status
Online

Connect it to your AI

Claude Code

claude mcp add --transport http greenlandai https://mcp.greenlandai.ai/mcp

Claude, ChatGPT, Cursor and other apps

Add it as a custom connector with this URL (Streamable HTTP):

https://mcp.greenlandai.ai/mcp

Cursor, VS Code and other apps (mcp.json)

{
  "mcpServers": {
    "greenlandai": {
      "url": "https://mcp.greenlandai.ai/mcp"
    }
  }
}

Tools it offers

50 tools, as the server itself reported during our check on Oct 31, 2026.

  • look_fromMap pins near a point (lat/lng + radius_km). `entity_type` alone filters to that type; with `id` it anchors the view at that entity. Each pin carries its `source_tier` provenance. Metered: see CHARGING in the server inst
  • signalsThe live signal cards: compiled, provenance-carrying observations (lead_lag, network, signature) with severity and the entities they name. Cards appear only while their type is armed; an answer with no cards costs nothin
  • relationshipsLabelled relationship edges (owns, operates, supplies …) around ONE entity, with tier and provenance: start from entity_type + entity_id (or a name in `entity`), walk `hops` deep, filter by relation_type. `as_of` answers
  • nearbyEntities near a location: lat + lng, radius_km, an optional entity_type, limit. Each carries `source_tier`. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.
  • map_viewportEverything inside a bounding box (min_lat, min_lng, max_lat, max_lng): the true count per type for the whole box plus a capped sample of pins. Agent keys only. Metered: see CHARGING in the server instructions; quote firs
  • look_atA satellite still of a place: the newest Sentinel-2 archive image on or before `as_of`, by lat/lng or entity_type + id. Returns the JPEG plus provenance (`observed_at` is the scene's date). A cloudy or missing scene is `
  • look_throughAn ordered stack of dated Sentinel-2 stills of one site from t0 to t1, one per window (max_frames, default 6), each with its own scene date. A window with no clear scene is an explicit empty frame, not charged. Agent key
  • entity_historyThe cheap index of one entity's dates: imagery scene dates (no images), our record's versions since record time began, and a short newest-first `what_changed` list, each item marked world time or our time. Agent keys. Me
  • entity_stateOne packet for one entity at a date (as_of): the entity as we held it then, the pins held by then, its relationships valid then, and the satellite still for that date. Charged for the parts delivered. Agent keys only. Me
  • entity_changeThe structured change at one site between two dates (t0, t1): per class (water, ice, canopy, pad, stockpile) the area changed, what optical and radar each saw, and a confidence. Read `height_class` first: only repeat_sur
  • job_statusAn entity_change job started with start=true: running, done (with the answer and how its reservation settled) or failed (released). Free. Only the paying wallet can read it.
  • site_reconstructionA dated, georeferenced 3D model of a site (entity_type + id, or lat + lng) with measurements: extent, elevation, slope, pits and heaps with volumes. The tier (lidar_2m or dem_30m) is decided before any charge. Slow (abou
  • place_indexWhat exists at a place, and when: dated stills, source quotes and measurements within radius_km of lat/lng or of an entity's site, newest first. Each row carries valid_on (world time) and recorded_at (our time). Filter b
  • companyOne company's record by id: the company, the deposits and infrastructure it operates, its relationships with tier and provenance, and `merged` when the id moved. Have only a name? Call `company_search` first. An unknown
  • company_searchFind companies by name, sector or country, to get the id that `company`, `relationships` and the entity tools take. Returns {count, total, companies[{id, name, sector, country, …}]}, one page by limit and offset. Metered
  • depositsSearch resource deposits by commodity, resource_type, country, status, owner_country, max_port_km or name. `commodity` matches through the commodity graph (a group match counts; `commodity_filter` says which). Returns {c
  • depositOne resource deposit by id: its record, `commodities[]` ({name, role, group}) and operators. Pair with `deposits(commodity=…)` to find ids. Metered: see CHARGING in the server instructions; quote first with `billing_quot
  • market_listingsBrowse the RAREEAI marketplace: kind="providers" (listings, filterable and sorted) or "oracles". Paged.
  • market_matchRead one marketplace match you are a party to: its escrow_terms, fee and timeout fields, dispute window and dispute state. For the settlement legs use `trade_settlement`.
  • market_quoteRead one marketplace REQUEST you own, by id: its terms, status and units matched, plus the generic `escrow_terms`. A trade's own fee and deadlines are on the match — read them with `market_match`.
  • joules_balanceYour own wallet balance, free. A GreenlandAI agent key (gai_/gqa_) reads its own wallet with no arguments; a JoulePAI or ENYAL credential passes `wallet_id`. The graph meter debits this same wallet.
  • billing_quoteThe exact price of a metered call for YOU, before you make it — free. `path` = the API path the tool hits (e.g. /api/v1/relationships, with hops). Fund `joules_all_in`, the true debit. The quote says when it is a maximum
  • receipts_meReceipts for your key: whether THIS key is opted in to a receipt with each paid graph answer, and how its owner turns them on. Free.
  • billing_attemptsYOUR OWN charge record, attempt by attempt (your own wallet, from your credential): each attempt's status (pending, completed, settled_zero, failed, refunded …), reserved vs settled joules, and the attempt_id to match a
  • verify_proofLook up one identifier (a chunk, proof, match or transfer id, or a BSV txid) in ENYAL's public verify lookup; its verdict fields come back unchanged. Only `chain_confirmed:true` is a verified anchor; `degraded:true` mean
  • ledger_verifyRecent public ledger anchors with their on-chain transaction ids and the exact credit supply at each anchor — public, no auth. Independently checkable.
  • transparency_latestThe latest hourly public transparency attestation: a Merkle root over every wallet balance, the verified total supply and the Bridge Ledger root, with the anchoring BSV txid ("pending" until broadcast; `last_anchored` na
  • balance_proofInclusion proof for YOUR wallet balance in the latest hourly transparency attestation: leaf hash, Merkle path, root, the anchoring BSV txid ("pending" until the batch is broadcast) and how to verify it. No arguments: the
  • bridge_proofInclusion proofs for YOUR Bridge Ledger rows (contribution and fee events): per-row leaf hash, Merkle path, bridge_root and the anchoring BSV txid ("pending" until the hourly batch is broadcast). No arguments: scoped to
  • market_request_rematchMatch one of YOUR open requests now. Machine speed escrows each match from your wallet at once; human speed waits for the provider's approval. A 409 when the request is no longer open.
  • market_request_rematch_withdrawWithdraw a request's automatic re-matching consent now (DELETE /api/v1/marketplace/request/{id}/rematch). Matches already escrowed stay as they are.
  • market_provideCreate or update a marketplace listing (verified account, marketplace:write). Typed body: wallet_id, frontier, resource_type, unit_type, price_joules_per_unit and optional capacity, limits, SLA and oracle opt-in. A first
  • market_requestPost a marketplace BUY request (verified account, marketplace:write): wallet_id, frontier, resource_type, unit_type, units_needed, max_price_per_unit and options. Escrow is debited on match. A physical trade must carry `
  • market_acceptAccept a delivery on a match (POST /match/{id}/accept) — releases escrow to the provider. You must be the buyer party; the backend enforces it.
  • wallet_transferA direct wallet-to-wallet transfer (wallet:transfer scope). An agent wallet may send only to a registered destination; limits are live config, not constants. Typed body: from_wallet_id, to_wallet_id or to_handle, amount
  • joules_deficitCan you afford the next call? Give a planned `cost`; returns {needed, have, shortfall, tool_to_call_next}. Free. Agent keys read their own wallet; a JoulePAI or ENYAL credential may pass `wallet_id`.
  • funding_prepareThe in-band funding step for a joule shortfall: your own USDC-on-Base deposit address and the live minimum, read from the running system. It moves no money; track the deposit with `funding_status`.
  • funding_statusYOUR OWN USDC-on-Base deposit state: credited, or held (below the minimum, above the maximum, or waiting for platform funding) — nothing is lost while held. From your credential, no arguments.
  • trade_settlementYOUR OWN trade's settlement, as buyer or seller: every leg (payout, fees, refunds) with its role, amount, ledger status and on-chain anchor state, plus the escrow contract's legs when there is one. A 404 means you were n
  • oracle_registerRegister as a RAREEAI oracle by staking joules (invite-only at launch; a wallet not yet invited is told how to apply). Body: wallet_id, specialisations (1–7 from a fixed list) and stake_amount. The stake is returned when

Questions

What is the GreenlandAI MCP server?

The physical world as queryable data: companies, deposits, infrastructure, projects and commodities. It is made by greenlandai.ai and listed in the official MCP Registry as ai.greenlandai/greenlandai. MCP (Model Context Protocol) is the open standard that lets AI apps like Claude, ChatGPT and Cursor use outside tools.

How do I add GreenlandAI to Claude?

In the Claude app or claude.ai, open Settings, then Connectors, choose "Add custom connector" and paste https://mcp.greenlandai.ai/mcp. In Claude Code, run: claude mcp add --transport http greenlandai https://mcp.greenlandai.ai/mcp

How do I add GreenlandAI to ChatGPT?

ChatGPT can use remote MCP servers as connectors. In ChatGPT settings, under Apps and Connectors, turn on developer mode if asked, create a new connector and paste https://mcp.greenlandai.ai/mcp.

How do I add GreenlandAI to Cursor?

Open Cursor settings, go to MCP, choose "Add new MCP server" (or edit ~/.cursor/mcp.json) and add: { "mcpServers": { "greenlandai": { "url": "https://mcp.greenlandai.ai/mcp" } } }

Does GreenlandAI work right now?

Yes. It responded when we last checked on 31 Oct 2026. We check remote MCP servers every day.

What can GreenlandAI do?

It gives your AI 50 tools, including look_from, signals, relationships, nearby, map_viewport. The full list is on this page.

Is this your server? Get the badge for your README
chen.media/mcp badge

Markdown (GitHub README)

[![Listed on chen.media/mcp](https://chen.media/mcp/badge/ai-greenlandai-greenlandai.svg)](https://chen.media/mcp/ai-greenlandai-greenlandai)

HTML (switches to dark mode on its own)

<a href="https://chen.media/mcp/ai-greenlandai-greenlandai"><picture><source media="(prefers-color-scheme: dark)" srcset="https://chen.media/mcp/badge/ai-greenlandai-greenlandai.svg?theme=dark"><img src="https://chen.media/mcp/badge/ai-greenlandai-greenlandai.svg" alt="Listed on chen.media/mcp" height="40"></picture></a>

More in Productivity

See all