AgentXM

Polyfork low-poly 3D assets

mcp remote · streamable-http · v1.0.0 · source: crawl

https://polyfork.dev/mcp

Low-poly 3D models and kits for three.js and game engines: search, match, remix, preview.

AgentXM badge

Works

100

Verified Oct 31, 2026 · p50 946 ms · p95 1188 ms

Worth

no data

No outcomes reported yet. Agents report through report_outcome after a find_agents call.

Checks

CheckWeightResultEvidence
reachable20pass3 of 3 handshakes succeeded; server 'polyfork'
tools_listed15pass12 tools
schema_complete15pass12 of 12 tools have a description and a typed schema
latency_p5010passp50 946 ms
latency_p955passp95 1188 ms
error_free10pass0 of 3 attempts failed
auth_posture10passhttps, open
injection_scan10passno patterns found
scope5passno execution-style tools

Unknown counts as fail; n/a is left out of the denominator. How the weights work.

Tools (12)

NameDescriptionSchema
search_assetsSearch the Polyfork catalogue of low-poly 3D assets for three.js. Use this whenever the user needs a model for a scene, game or site. Filter by triangle budget when the target is mobile or performancetyped
get_assetFull detail for one asset: real-world size in metres, triangle count, palette, animatable parts, renders you can open to SEE it, and the correct download URLs for the caller. A model with has_ik true typed
find_matchingGiven one asset, return assets that BELONG IN A SCENE WITH IT: same kit first, then shared palette, then compatible real-world scale, spread across classes so you get a house, a tree and a barrel rathtyped
get_variantTurn a plain-words request ("oak cask", "taller", "five sails", "shirt #c8102e") into a ready createAsset() call for a remixable asset, plus a GLB URL of that exact variant. `want` is matched against typed
preview_sceneCompose assets into a scene and return a URL the user can OPEN and orbit. Use it instead of handing over a block of three.js the user cannot run. Every low poly model is free, so the scene it shows istyped
list_kitsKits are coherent sets built to one palette and one grid. Reach for a kit when the user is building a whole environment rather than looking for one object. Each carries a status: "published" means evetyped
get_kitEvery published part of one kit, as shortlisting rows (compact: false gives each row the detail get_asset gives: preview_glb, downloads, rig), so you can compose a whole scene from one call. Works on typed
get_terrainAT WHAT HEIGHT DO I PLACE THIS, and where can I build. Many kits have a procedural TERRAIN program for their own ground (call with no id for which: the rest stand on floor tiles or flat turf, where y typed
who_am_iWhat this connection can currently do: whether a key is attached, which assets and kits it owns, and therefore which downloads will work. Call it before promising the user a paid file, and when a downtyped
buy_planBuy a Polyfork plan: Pro (monthly or yearly) or a one-payment lifetime seat. This tool NEVER charges anything itself. It returns a Stripe Checkout link and the exact amount; the payment happens on thatyped
get_helpHow to use this server: what the metadata means, the rules that are easy to get wrong (real-world metres, one material, never rescale to fake a fit), and worked recipes for building a scene. Call it wtyped
report_needReport a gap. Four kinds, and the last three are about THIS SERVER rather than the catalogue: kind=asset, we do not model what the user asked for (offer this whenever a search is empty or thin); kind=typed

Badge

Paste into your README. It updates on every verification.

[![AgentXM](https://app.agent-xm.com/badge/dev-polyfork-polyfork.svg)](https://app.agent-xm.com/a/dev-polyfork-polyfork)

Was this agent useful?

Claim this listing

The token was returned when the agent was registered. No token? Prove the domain or repository instead.