Boundr

UK administrative boundary data from OS Boundary Line: name search, point lookup, GeoJSON geometries

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
88%
Calidad de los nombres
97%
Riesgo de envenenamiento
80%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (3)

  • HIGHTool poisoning patterns detected
  • LOWTool 'get_boundary_geojson_simplified' name length outside 3-30 rangeen get_boundary_geojson_simplified
  • INFOTool description contains placeholder or incomplete texten get_boundary_by_code

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,993Tokens (definiciones de herramientas)
~1.4 KBTamaño de respuesta típico
Impacto moderado en la atención (1.56% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "boundr": {
      "url": "https://mcp.boundr.dev/sse"
    }
  }
}

Puntos de conexión remotos

https://mcp.boundr.dev/ssesse
https://mcp.boundr.dev/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (7)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢list_boundary_type_codes

Returns every valid UK boundary type code mapped to its human-readable label. Call this before using any tool that accepts a `boundary_type` or `boundary_types` argument so you know which codes are legal. Passing an unlisted code to another tool raises a ValueError. Boundary type codes are stable Ordnance Survey identifiers. Common ones: - "CTY" → County - "LBO" → London Borough - "UTA" → Unitary Authority - "MTD" → Metropolitan District - "DIS" → District - "DIW" → District Ward - "CCTY" → Ceremonial County - "HCTY" → Historic County - "WMC" → Westminster Parliamentary Constituency - "GLC" → Greater London Constituency - "SWC" → Scotland/Wales Constituency - "PAR" → Parish - "CED" → County Electoral Division Returns: Dict mapping code → label for all supported boundary types, e.g. {"CTY": "County", "LBO": "London Borough", ...}

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": {
    "type": "string"
  }
}
🟢search_boundaries_by_name(name, boundary_type)

Search for UK administrative boundaries by name (case-insensitive partial match). Use this to discover boundaries when you have a place name but not a code. Returns lightweight metadata only — no geometry. If you need to display or analyse the boundary shape, call get_boundary_geojson_by_code() with the returned `code`. Call list_boundary_type_codes() first if you need to filter by type and are unsure which code to use.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Full or partial boundary name. Case-insensitive. Examples:\n  \"Hackney\", \"Greater Manchester\", \"York\", \"Kent\"."
    },
    "boundary_type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional type code to narrow results, e.g. \"LBO\" for\n           London Boroughs or \"CTY\" for Counties. Must be a code\n           from list_boundary_type_codes(); raises ValueError otherwise."
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢find_boundaries_at_point(lat, lng, boundary_types)

Find all UK administrative boundaries that geographically contain a coordinate point. Use this to answer "what county/borough/ward is this location in?" for a latitude/longitude. Returns lightweight metadata only — no geometry. If you need to display a boundary shape, call get_boundary_geojson_by_code() with the returned `code`. Multiple boundaries at different administrative levels typically contain the same point (e.g. a ward, a borough, and a county). Filter by boundary_types to restrict which levels are returned. Call list_boundary_type_codes() first if you are unsure which type codes to use.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "lat": {
      "type": "number",
      "description": "Latitude in decimal degrees. Must be between -90 and 90.\n Example: 51.5074 (central London)."
    },
    "lng": {
      "type": "number",
      "description": "Longitude in decimal degrees. Must be between -180 and 180.\n Example: -0.1278 (central London)."
    },
    "boundary_types": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional list of type codes to restrict results,\n            e.g. [\"CTY\", \"LBO\"]. All levels are returned if omitted."
    }
  },
  "required": [
    "lat",
    "lng"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "items": {
        "additionalProperties": true,
        "type": "object"
      },
      "type": "array"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_boundary_by_code(code)

Look up metadata for a single UK boundary by its ONS census code. No geometry. Use this when you already have a census code (e.g. from search_boundaries_by_name() or find_boundaries_at_point()) and need structured metadata such as area size or type label. If you also need the boundary shape for display or analysis, call get_boundary_geojson_by_code() instead. ONS census codes (sometimes called GSS codes or LAU codes) are stable identifiers of the form "E09000012" (Hackney), "E10000016" (Kent), etc. The first letter indicates the country: E = England, W = Wales, S = Scotland, N = Northern Ireland.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "ONS census / GSS / LAU code, e.g. \"E09000012\".\n  Case-insensitive — \"e09000012\" resolves to the same boundary."
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_boundary_geojson_by_code(code)

Fetch the full GeoJSON geometry for a UK boundary by its ONS census code. Returns a GeoJSON Feature object (WGS-84 / EPSG:4326) suitable for rendering on a map or performing geometric analysis. The geometry can be large — county and ceremonial county polygons are especially heavy. Only call this when you specifically need the shape; for metadata only use get_boundary_by_code() instead. IMPORTANT — Leaflet / web maps: use get_boundary_geojson_simplified() instead. The full geometry is large enough to exhaust your context window before you can finish writing the page. The simplified version is safe to embed directly in HTML and indistinguishable from the full shape at normal map zoom levels. Use this tool only when you need full-fidelity geometry for server-side analysis (e.g. precise point-in-polygon checks, area calculations, clipping). Obtain the census code from search_boundaries_by_name() or find_boundaries_at_point() before calling this.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "ONS census / GSS / LAU code, e.g. \"E09000012\" for Hackney.\n  Case-insensitive."
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_boundary_geojson_simplified(code, tolerance)

Fetch simplified GeoJSON for a boundary by its ONS census code. Safe to embed directly in generated HTML map files. At the default tolerance (0.0001°) a constituency polygon shrinks from ~4,000 vertices to ~200–400 with no visible difference at normal map zoom levels. Prefer this over get_boundary_geojson_by_code() when writing Leaflet map pages — the full geometry is large enough to exhaust your context window before you can finish writing the HTML.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "ONS census / GSS / LAU code, e.g. \"E14001592\" for Woking.\n  Case-insensitive."
    },
    "tolerance": {
      "default": 0.0001,
      "type": "number",
      "description": "Simplification tolerance in degrees (WGS-84). Default 0.0001.\n       Increase to 0.001 for county-scale boundaries."
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_boundary_bbox(code)

Get the bounding box and centroid for a boundary by its ONS census code. Returns min_lat, max_lat, min_lng, max_lng, centroid_lat, centroid_lng. Pass the bbox values directly to Knotsure's sightings_in_bbox() or geographic_summary(). Much cheaper than get_boundary_geojson_by_code() for spatial queries because no geometry is fetched or serialised.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "ONS census / GSS / LAU code, e.g. \"E14001592\" for Woking.\n  Case-insensitive."
    }
  },
  "required": [
    "code"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada7 herramientas
observación fallidaversión no registrada—
verificadoversión no registrada7 herramientas