Skip to content
LowPolyCrate

API & MCP

Use LowPolyCrate from your own code, or let an AI coding agent find, download and lay out assets for you.

Overview

Everything the website shows is also available as JSON: the catalogue with sizes, triangle counts, snapping data and colour slots; downloads; and your World Builder scenes. The same access rules apply as on the site: free assets with any account, every asset with a Pro or Lifetime membership, and anything you already own.

There are two ways in: a REST API at https://lowpolycrate.com/api/public/v1/ (with an API key), and an MCP server at https://lowpolycrate.com/api/mcp for AI apps such as Claude, ChatGPT and Cursor (browse with nothing at all; sign in from the app, or use an API key, for downloads and scenes).

API keys

Make a key on your account page. It is shown once; we keep only a hash of it. A key acts as you, so keep it out of public repositories, and revoke any key you no longer use (you can have up to five). Send it with every request:

Authorization: Bearer lpc_…

MCP for AI agents

The MCP server lets an AI app search the catalogue, fetch download links, lay out walls and save scenes, using the conventions below. Nothing to install and no key needed: add https://lowpolycrate.com/api/mcp to your app. Searching and browsing work right away; the first download or scene save asks you to sign in to LowPolyCrate and allow access. Apps that can't show a sign-in page can send an API key instead.

Some apps only offer to sign in when they connect. For those, the steps below use https://lowpolycrate.com/api/mcp?signin=1, which asks you to sign in when you add it.

Add the server once; it's available in every project.

claude mcp add --transport http lowpolycrate https://lowpolycrate.com/api/mcp

Browsing works straight away. The first download or scene save asks you to sign in: run /mcp, pick lowpolycrate and allow access. For CI, add --header "Authorization: Bearer lpc_…" instead.

Signing in gives the app two permissions, which you see before you allow it: searching the catalogue and downloading what your plan includes, and reading and saving your World Builder scenes. It can also see your name, email address and plan, but never your password, payments or orders.

Tools

search_assetsSearch by text, category, kit or tag
get_assetFull metadata for one asset
list_categories · list_kits · get_kitBrowse the catalogue
get_download_linkA short-lived link to an asset's GLB or Blender source, with its license
accountPlan, scene limit and today's usage
list_scenes · get_scene · list_scene_templatesRead scenes
plan_wall_runLay a wall, fence, palisade or path edge to edge between two points
check_sceneFind overlaps and problems before saving
create_scene · update_sceneSave scenes to your account; returns a link that opens them in the builder

Try asking: “Find a low-poly well and a cottage on LowPolyCrate and put them in assets/models”, or “Build a walled desert town square in the World Builder and give me the link.”

REST API

Base URL https://lowpolycrate.com/api/public/v1. JSON in, JSON out.

GET/me/Your plan, what you can download, the key's limits and today's usage
GET/categories/Categories with asset counts
GET/assets/Search: q, category, kit, tag, free, builder, ordering (newest | title), page, page_size (≤ 50)
GET/assets/{slug}/Everything about one asset: size, sockets and snapping, colour slots, formats, license, access
POST/assets/{slug}/download/{"format": "glb" | "source"} → a link that works for a few minutes
GET/kits/Themed kits
GET/kits/{slug}/One kit and all its assets
GET/scenes/Your World Builder scenes
POST/scenes/Save a new scene
GET/scenes/templates/The starter scenes, as examples
GET/scenes/{id}/One scene (yours, shared or a template)
PATCH/scenes/{id}/Change your scene: name, items, mood, theme, is_public
POST/layout/run/Pieces for a straight wall, fence, palisade or path run
POST/layout/check/Clean a scene and report overlaps and pieces you can't export

Search, then download

curl -H "Authorization: Bearer $LPC_KEY" \
  "https://lowpolycrate.com/api/public/v1/assets/?q=well&free=true"

curl -X POST -H "Authorization: Bearer $LPC_KEY" -H "Content-Type: application/json" \
  -d '{"format": "glb"}' "https://lowpolycrate.com/api/public/v1/assets/stone-well-01/download/"
# → {"url": "…", "filename": "stone-well-01-v1.0.0.glb", "expires_in": 300, "license": {…}}

curl -L -o stone-well-01.glb "<url>"

The download link works for a few minutes and needs no key, so a build script or an agent can fetch it directly. It stops working early if the key is revoked or your access ends.

Scenes & layout

A scene is the World Builder's document: a 48 × 48 m plot, x and z from −24 to 24 (x to the right, z towards the viewer) and rot in degrees about the vertical axis (90 turns a piece's front from +z to +x). Every item is {"id", "slug", "x", "z", "rot"}, optionally with colors per material slot. Scenes also take mood (day, dusk, night) and theme. Free accounts keep three scenes; Pro and Lifetime keep any number.

POST /api/public/v1/layout/run/
{"slug": "stone-wall-straight-01", "start": [-8, -12], "end": [8, -12], "gate": "stone-wall-gate-01"}
→ {"items": [{"id": "run1", "slug": "stone-wall-straight-01", "x": -7, "z": -12, "rot": 0}, …], "end": [8, -12]}

POST /api/public/v1/scenes/
{"name": "Walled square", "items": […], "mood": "dusk"}
→ {"id": "…", "builder_url": "https://lowpolycrate.com/builder?scene=…", …}

Open builder_url to see the scene, keep editing and export it as one GLB or a Godot 4 project.

Limits & errors

Each API key, and each connected app, has its own limits:

  • 1,200 requests an hour.
  • 300 download links a day.
  • 300 scene saves an hour.

Browsing the MCP server without signing in is limited to 600 requests an hour per address.

Errors come back as {"code": "…", "detail": "…"} with the matching HTTP status: 401 for a missing or revoked key or token, 403 with membership_required for a Pro asset on a Free account, 404 for something that isn't published, and 429 (with Retry-After) when a limit is reached. Your key's usage today is in GET /me/ and on your account page.

License

Files downloaded through the API or by an agent are licensed exactly as on the website, under the LowPolyCrate Standard License: use them in your games, apps and client projects; don't resell or redistribute the files themselves, and don't use the API to mirror the catalogue.