Skip to content
Eden Engine

Spanish Reverse Geocoder (CartoCiudad)

cartociudadgeocoder/reverse-geocode

Reverse geocodes a WGS 84 longitude and latitude inside Spain to the nearest address in the CartoCiudad register: street, number, postal code, municipality, province, autonomous community, the point's coordinates and the cadastral reference. A point with no Spanish address (open sea, outside Spain) is refused by the service with an empty answer and arrives as a provider error. Data from CartoCiudad (Instituto Geográfico Nacional), passed through and served by Eden Engine; not an official IGN product.

activeper callv1

Price

$0.0026 per call

You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.

Data source

CartoCiudad, Instituto Geográfico Nacional de España

Data from CartoCiudad, © Instituto Geográfico Nacional / Centro Nacional de Información Geográfica (IGN / CNIG), www.cartociudad.es. Credit offered as a courtesy. Served by Eden Engine; not an official IGN or CNIG product.

Use it

Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.

Connect once and your AI can find and run this tool, and any other it needs.

agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "cartociudadgeocoder/reverse-geocode" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "cartociudadgeocoder/reverse-geocode" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "cartociudadgeocoder/reverse-geocode", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "cartociudadgeocoder/reverse-geocode", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0026
Updated
Oct 21, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "lon",
    "lat"
  ],
  "properties": {
    "lat": {
      "type": "number",
      "maximum": 44.5,
      "minimum": 27,
      "description": "Latitude in degrees (WGS 84) within Spain, for example 40.4164."
    },
    "lon": {
      "type": "number",
      "maximum": 5,
      "minimum": -19,
      "description": "Longitude in degrees (WGS 84) within Spain including the Balearic and Canary Islands, for example -3.7046."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "properties": {
    "id": {
      "type": [
        "string",
        "null"
      ],
      "description": "CartoCiudad feature id."
    },
    "lat": {
      "type": [
        "number",
        "null"
      ],
      "description": "Latitude, WGS 84 degrees."
    },
    "lng": {
      "type": [
        "number",
        "null"
      ],
      "description": "Longitude, WGS 84 degrees."
    },
    "geom": {
      "type": [
        "string",
        "null"
      ],
      "description": "WKT geometry when the service sends one (a POINT for a reverse lookup), else null."
    },
    "muni": {
      "type": [
        "string",
        "null"
      ],
      "description": "Municipality."
    },
    "type": {
      "type": [
        "string",
        "null"
      ],
      "description": "Feature type: portal (street number), callejero (street), poblacion (locality), municipio and others."
    },
    "address": {
      "type": [
        "string",
        "null"
      ],
      "description": "Display address."
    },
    "tip_via": {
      "type": [
        "string",
        "null"
      ],
      "description": "Street type, for example CALLE."
    },
    "muniCode": {
      "type": [
        "string",
        "null"
      ],
      "description": "INE municipality code."
    },
    "province": {
      "type": [
        "string",
        "null"
      ]
    },
    "extension": {
      "type": [
        "string",
        "null"
      ]
    },
    "poblacion": {
      "type": [
        "string",
        "null"
      ]
    },
    "postalCode": {
      "type": [
        "string",
        "null"
      ]
    },
    "countryCode": {
      "type": [
        "string",
        "null"
      ]
    },
    "portalNumber": {
      "type": [
        "integer",
        "null"
      ]
    },
    "provinceCode": {
      "type": [
        "string",
        "null"
      ]
    },
    "refCatastral": {
      "type": [
        "string",
        "null"
      ],
      "description": "Cadastral reference of the property, when known."
    },
    "comunidadAutonoma": {
      "type": [
        "string",
        "null"
      ],
      "description": "Autonomous community."
    },
    "comunidadAutonomaCode": {
      "type": [
        "string",
        "null"
      ]
    }
  },
  "description": "The nearest address to the point.",
  "additionalProperties": true
}