GreenlandAI

ai.greenlandaiPublished by greenlandai.aiOfficial publisherv0.8.0Updated Oct 31, 2026

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

VerifiedStreamable HTTPWeb executableLocation & LifestyleFinanceBusiness & Commerce

Overview

AI-generated overview

Remote MCP endpoint over the GreenlandAI world graph, map imagery, RAREEAI marketplace and wallet ledger, letting an assistant query companies, deposits and…

What you can do
  • Search and read companies, resource deposits and their operators, with paged results and id lookups
  • Explore the world graph: labelled relationship edges around an entity, past-dated views, and entity history or state packets
  • Query the map: pins near a point, bounding-box viewports, and dated Sentinel-2 satellite stills or time stacks of a site
  • Measure sites: structured land-cover change between two dates, 3D site reconstructions with volumes, and place indexes
  • Use the RAREEAI marketplace: browse listings and oracles, post or match requests, accept deliveries, and read settlements
  • Manage the wallet: balance, price quotes, charge records, funding address and status, transfers, and public…
When to use it
Useful when an assistant needs sourced answers about physical assets, mining and energy sites, or supply relationships, or wants satellite imagery and site measurements of a location. Also relevant for agents that trade resources or need to check wallet balances and on-chain proofs.
Requirements
A remote streamable HTTP endpoint; nothing to install. The endpoint holds no credential, so each call must forward your own ENYAL OAuth token or product-specific API key via the Authorization Bearer header or X-API-Key. A funded wallet is needed for metered reads; funding is by USDC on Base.
Before you install
Most graph, imagery and marketplace tools are metered against the calling agent's own wallet, and each repeat call is a new charge; quote prices with billing_quote first. Marketplace and wallet tools move money: escrow on match, transfers with a sender fee, a one-time listing fee, and oracle staking. A call already answered settles even if the client disconnects or times out. Credentials are forwarded per call and scopes differ by product.

Installation

In SourceWeft

  1. Open GreenlandAI in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/ai.greenlandai%2Fgreenlandai/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

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

Tools

50

look_from

Map 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 instructions; quote first with `billing_quote`.

Parametersidlatlngenergyfieldsradius_kmentity_typeinclude_country_centroids

signals

The 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 nothing. Observations, not advice. Agent keys only. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parameterskindlimitcountry

relationships

Labelled 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 for a past date. An ambiguous name fails uncharged and lists the candidates. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametershopsas_oflimitentityfieldsoffsetsearchentity_identity_typerelation_type

nearby

Entities 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`.

Parameterslatrequiredlngrequiredlimitfieldsradius_kmentity_typeinclude_country_centroids

map_viewport

Everything 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 first with `billing_quote`.

Parametersenergyfieldsmax_latmax_lngmin_latmin_lngentity_typeinclude_country_centroids

look_at

A 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 `available:false` and costs nothing. Agent keys only. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidlatlngas_ofmax_cloudentity_type

look_through

An 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 keys only. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidt0requiredt1latlngmax_cloudmax_framesentity_type

entity_history

The 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. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidrequiredentity_typerequired

entity_state

One 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. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidrequiredas_ofmax_cloudradius_kmentity_typerequired

entity_change

The 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_surface supports a volume change. Slow (about 15–60 s): start=true answers at once with a job_id for job_status. Agent keys only. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidt0requiredt1latlngstartradius_mmax_cloudentity_typesame_season

job_status

An 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.

Parametersjob_idrequired

site_reconstruction

A 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 (about 15–60 s). Agent keys only. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidlatlngas_ofradius_mentity_typeinclude_model

place_index

What 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 by dates and kinds; paged. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidlatlngkindslimitfieldsoffsetto_datefrom_dateradius_kmentity_typeentity_types

company

One 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 id is a 404. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidrequired

deposits

Search 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 {count, total, deposits[]}, paged. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parameterslimitfieldsoffsetsearchstatuscountrycommoditymax_port_kmowner_countryresource_type

deposit

One 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_quote`.

Parametersidrequired

market_listings

Browse the RAREEAI marketplace: kind="providers" (listings, filterable and sorted) or "oracles". Paged.

Parameterskindsortlimitactiveoffsetfrontierresource_typeoracle_verified

market_match

Read 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`.

Parametersmatch_idrequired

market_quote

Read 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`.

Parametersrequest_idrequired

joules_balance

Your 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.

Parameterswallet_id

billing_quote

The 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 and when an empty answer is free.

Parametersidlatlnghopspathrequiredas_ofradius_mentity_type

receipts_me

Receipts 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.

Takes no parameters.

billing_attempts

YOUR 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 call's `metering.attempt_id`. Paged with limit and offset.

Parameterslimitoffset

verify_proof

Look 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` means inconclusive, not absent. No auth.

Parametersidentifierrequired

ledger_verify

Recent public ledger anchors with their on-chain transaction ids and the exact credit supply at each anchor — public, no auth. Independently checkable.

Takes no parameters.

transparency_latest

The 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` names the newest anchored one). No auth.

Takes no parameters.

balance_proof

Inclusion 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 wallet is the one your credential owns.

Takes no parameters.

bridge_proof

Inclusion 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 your credential.

Takes no parameters.

market_request_rematch

Match 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.

Parametersrequest_idrequired

market_request_rematch_withdraw

Withdraw a request's automatic re-matching consent now (DELETE /api/v1/marketplace/request/{id}/rematch). Matches already escrowed stay as they are.

Parametersrequest_idrequired

market_provide

Create 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-time registration carries a one-time fee.

Parametersbodyrequired

market_request

Post 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 `physical_claim` (the site and dates).

Parametersbodyrequired

market_accept

Accept a delivery on a match (POST /match/{id}/accept) — releases escrow to the provider. You must be the buyer party; the backend enforces it.

Parametersmatch_idrequiredidempotency_key

wallet_transfer

A 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 and options. A transfer fee is charged to the sender.

Parametersbodyrequired

joules_deficit

Can 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`.

Parameterscostrequiredwallet_id

funding_prepare

The 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`.

Parametersneeded

funding_status

YOUR 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.

Takes no parameters.

trade_settlement

YOUR 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 not a party.

Parametersmatch_idrequired

oracle_register

Register 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 you deregister.

Parametersbodyrequired

oracle_assignments

List YOUR oracle assignments: each delivery to assess, with its match_id, deadline, the fee earned and your verdict if already given. Optional status filter and limit.

Parameterslimitstatus

oracle_assess

Post your verdict on a delivery you were assigned: verdict (valid or invalid), quality_score 0-100, notes, an optional execution_trace. A low score opens a dispute. A 409 means the match has moved on — do not retry; read the match.

Parametersbodyrequiredmatch_idrequired

oracle_deregister

Deregister as an oracle and get your stake back from escrow (less anything slashed). `wallet_id` is required. Fails while you have pending assessments.

Parameterswallet_idrequired

contribute_relations

Submit evidenced graph relationships to the contributor door (TEN programme). Each relation needs subject, relation, object, a real source_url and a verbatim quote from it. Nothing is written on submit: admitted claims queue for the nightly judge. Send your enabled gai_ key as X-API-Key.

Parametersentitiesrelationsrequired

contribute_stats

Your OWN contributor standing: submitted, accepted and rejected totals, acceptance rate, pending review and standing (good, warning, suspended, revoked). Send your enabled gai_ key as X-API-Key.

Takes no parameters.

contribute_submissions

Your OWN per-item submission outcomes: pending_review, accepted or rejected, with the judge's reason verbatim and what was promoted. Send your enabled gai_ key as X-API-Key. Paged.

Parameterslimitoffset

contribute_receipts

Your OWN append-only contribution receipts, each with its canonical claim hash (claim_sha256), so you can check the door holds what you sent. Send your enabled gai_ key as X-API-Key. Paged.

Parameterslimitoffset

tool_guide

The full guide for one tool, free and not metered: its complete description (edge cases, every rule, examples), every parameter's full description and the fields it returns. Each tool's listed description is its short contract; read this when you need the rest.

Parameterstoolrequired

company_profile

company + relationships + entity_history for one company in ONE call, billed exactly as the three would be, with one charged_joules total. Lean by default; include_raw for everything. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidrequiredhopsfieldsinclude_raw

deposit_brief

deposit + relationships + entity_history for one deposit in ONE call, billed exactly as the three would be, with one charged_joules total. Lean by default; include_raw for everything. Metered: see CHARGING in the server instructions; quote first with `billing_quote`.

Parametersidrequiredhopsfieldsinclude_raw

Version history

13
  1. v0.8.0LatestOct 31, 2026
  2. v0.5.29Oct 26, 2026
  3. v0.5.17Oct 4, 2026
  4. v0.5.15Oct 3, 2026
  5. v0.5.12Sep 27, 2026
  6. v0.5.9Sep 25, 2026
  7. v0.5.8Sep 24, 2026
  8. v0.5.7Sep 23, 2026
  9. v0.5.6Sep 23, 2026
  10. v0.5.4Sep 22, 2026
  11. v0.5.3Sep 20, 2026
  12. v0.5.2Sep 20, 2026
  13. v0.5.1Sep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.