Skip to content

Specification

The authoritative spec lives at SPECIFICATION.md in the repo root. It treats requirements at the level of "you could re-implement kartoza-mcp in another language and arrive at the same observable behaviour".

Summary

  • Mission. Expose spatial analytics to MCP clients with minimum ceremony and maximum performance.
  • Scope today. One tool — cluster_points (DBSCAN over GeoJSON points).
  • Scope next. Convex hull, buffer, voronoi, point-in-polygon, nearest neighbour.
  • Out of scope. Map rendering, tile serving, raster analysis, network routing, anything HTTP-listener-shaped.

Architectural commitments

  1. Stdio MCP — never bind a port from this binary.
  2. Static linking — one binary, zero shared-library dependencies.
  3. Nix-firstflake.nix is the source of truth for the toolchain.
  4. REUSE-compliant — every file has SPDX headers.
  5. Tested — every tool has unit + integration coverage.

For the user stories, business rules and functional requirements, see the full document in the repository root.