Skip to content

Introduction

Markdown

API reference

The TerraLab REST API serves the same 29 tools as the MCP server, as HTTPS endpoints: each tool is a POST with a JSON body, the account endpoints are GET.

Base URL

https://mcp.terra-lab.ai

Send your API key as a Bearer token on every call except the two public documents. See Authentication.

Account and discovery

EndpointAuthWhat it returns
GET /v1/meKeyThe account, its calls this month and today, its balance and its activation state.
GET /v1/toolsKeyEvery tool with its input and output JSON Schema.
GET /v1/openapi.jsonNoneThis reference as an OpenAPI 3.1 document: https://mcp.terra-lab.ai/v1/openapi.json.
GET /v1/meta/pricingNoneThe price grid as JSON: https://mcp.terra-lab.ai/v1/meta/pricing.

Check your key and your remaining calls:

curl https://mcp.terra-lab.ai/v1/me \
  -H "Authorization: Bearer $TERRALAB_API_KEY"
import os
import requests

response = requests.get(
    "https://mcp.terra-lab.ai/v1/me",
    headers={"Authorization": f"Bearer {os.environ['TERRALAB_API_KEY']}"},
    timeout=120,
)
response.raise_for_status()
print(response.json())
const response = await fetch('https://mcp.terra-lab.ai/v1/me', {
  headers: {
    Authorization: `Bearer ${process.env.TERRALAB_API_KEY}`,
  },
});
const data = await response.json();
console.log(data);
{
  "account": "3f9c0a1e7b2d4c6a8e0f1b3d",
  "auth": "key",
  "today": {
    "calls": 3,
    "limit": 100
  },
  "month": {
    "calls": 12,
    "included": 100,
    "resets_at": "2026-11-01T00:00:00.000Z"
  },
  "balance": {
    "currency": "EUR",
    "amount": 0,
    "micros": 0
  },
  "activation": {
    "first_call_at": null,
    "first_call_client": null
  }
}

An illustrative answer for a new account. month.included is the number of calls included this calendar month (UTC); later calls are taken from the balance. today.limit carries the same number for older clients.

Tools

Places

ToolWhat it gives
Find places and addressesCoordinates of an address or place name, the address at a point, or a list of up to 100 addresses placed on a map with a CSV for QGIS.
Convert coordinatesCoordinates converted between decimal degrees, degrees minutes seconds, UTM, MGRS, Lambert 93 or any EPSG code, with the format detected for you.
Measure distance, area, radius or bufferGeodesic distance and bearing between places, the length of a line, the area and perimeter of a polygon, or a circle or buffer around a shape.

Map data

ToolWhat it gives
Extract open map data for an areaOpenStreetMap and Overture layers for any area: buildings, roads, addresses, points of interest, land use, water and more, as GIS files.
Open, map and convert GIS dataAny GeoJSON, KML, KMZ, GPX, Shapefile, CSV or WKT read, checked, shown on a map and converted to another format.
Buffer, merge, clip or simplify featuresOne GIS operation on a set of features: buffer, union, dissolve, intersection, difference, clip or simplify, returned as a file.

Terrain and routes

ToolWhat it gives
Elevation, profile and contour linesElevation of points, a profile along a path, or a DEM, hillshade, slope and contour lines for an area, worldwide at 30 m.
Road route between placesDriving, walking or cycling route through 2 to 25 places, with distance and travel time per leg and the route line.
Area reachable in a travel timeThe area reachable from 1 to 10 places within a travel time or a distance on the road network, driving, walking or cycling (isochrones).

Imagery and land

ToolWhat it gives
Satellite image of an areaA recent Sentinel-2 image of an area in true colour, false colour or NDVI, or an IGN aerial photo in France, as a GeoTIFF.
Forest type (natural, planted, plantation)Whether a forest is natural, naturally regenerating, planted, a plantation or tree crops, mapped at 10 m for 2020.
Estimate the population of an areaA modelled estimate of the people living in a circle, a bounding box, a travel area or an administrative boundary, from the GHS-POP 2025 grid.

France

ToolWhat it gives
French cadastral parcel and zoningThe French cadastral parcel at an address or point, its reference and area, and the urban plan zone that applies there.
French building heightsHeight in metres, floors, main use and year built of every building around an address or in a small area in France, from IGN BD TOPO.
Natural risks at an address or a pointNatural risks at an address or point: flood zones, clay, seismic zone, cavities and commune risks in France, river flood depth elsewhere.

Data catalog

ToolWhat it gives
Find a dataset in the TerraLab catalogueSearch the TerraLab catalogue of open datasets by need or place, with each licence, coverage, size and the call that gets it.
Extract a hosted dataset for an areaA hosted dataset from the TerraLab catalogue cut to an area: a GeoTIFF or a vector file with its licence, or only the statistics.
Ask TerraLab to add data it does not haveAsk TerraLab to add geographic data the catalogue does not have yet, with what you need and up to five places where you need it.

OpenAPI

Import https://mcp.terra-lab.ai/v1/openapi.json into Postman, Insomnia, Bruno or a client generator. It is built from the tool schemas the server runs, so it is never behind the server.

Updated 2026-10-27