API & MCP

Everything a person can do on GISela Coordinate Reprojection, a program or AI agent can do with the same inputs and get the identical result.

HTTP API

GISela Coordinate Reprojection

Reprojects vector data between coordinate systems with GISela’s own projection maths: WGS 84, ETRS89, Web Mercator, every UTM zone, ETRS89-LAEA, German Gauss–Krüger zones, Swiss LV95/LV03 and the British National Grid. Reads the coordinate system from .prj files and GeoJSON, and shows sample coordinates before and after.

Inputs of GISela Coordinate Reprojection
FieldTypeDefaultDescription
datatextarea—Data. GeoJSON, TopoJSON, KML, GPX, CSV (lat/lon, x/y or a WKT column) or WKT lines. Or upload a file below.
filefile—File (optional). Used instead of the pasted text. Shapefiles: put .shp, .dbf and .prj into one ZIP.
fromtext"auto"Coordinate system of the data. “auto” reads it from the file (.prj, GeoJSON crs); otherwise an EPSG code such as 2056, 25832 or 27700. Without information the data is read as WGS 84 longitude/latitude.
toselect (EPSG:4326, EPSG:4258, EPSG:3857, EPSG:3035, EPSG:2056, EPSG:21781, EPSG:27700, EPSG:31466, EPSG:31467, EPSG:31468, EPSG:31469, EPSG:25831, EPSG:25832, EPSG:25833)"EPSG:4326"Convert to. Other zones: type the code below.
toOthertext—Or another EPSG code. For example 32633 (WGS 84 / UTM 33N) or 25831. Overrides the list when filled.
formatselect (geojson, csv, wkt)"geojson"Output format

Example request

Tram stops (WGS 84) to Swiss LV95

curl -X POST https://giselareproject.usefulweb.site/api/v1/calculate -H 'content-type: application/json' -d '{"data":"{\"type\":\"FeatureCollection\",\"features\":[{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[7.992,47.1215]},\"properties\":{\"name\":\"Weiher\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[7.999,47.126]},\"properties\":{\"name\":\"Altstadt\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[8.006,47.129]},\"properties\":{\"name\":\"Marktplatz\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[8.012,47.1335]},\"properties\":{\"name\":\"Bahnhof\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[8.018,47.137]},\"properties\":{\"name\":\"Nordring\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[8.025,47.14]},\"properties\":{\"name\":\"Rebhalde\"}},{\"type\":\"Feature\",\"geometry\":{\"type\":\"Point\",\"coordinates\":[8.031,47.1405]},\"properties\":{\"name\":\"Endstation Ost\"}}]}","to":"EPSG:2056"}'

Every result contains

inputs (normalised, defaults applied), summary, result (validated against the published schema), units, assumptions, sources, warnings, computedAt and links.

MCP (Model Context Protocol)

{
  "mcpServers": {
    "gisela-reproject": { "type": "http", "url": "https://giselareproject.usefulweb.site/mcp" }
  }
}