@snowcone-app/mcp
v0.7.4
Published
Snowcone MCP server — the agent-native quickstart. Mint a sandbox shop, browse the catalog, and turn any image into a buyable printed-merch mockup URL, all as callable tools.
Maintainers
Readme
@snowcone-app/mcp
Prefer raw docs? The complete agent-facing text is one fetch away — https://developers.snowcone.app/llms-full.txt. Grep it before assuming a field or behavior is undocumented.
The agent-native quickstart for Snowcone. An MCP server that exposes the "a mockup is a URL" model as callable tools, so an agent (Claude, Cursor, Codex, …) goes from zero to a buyable printed-merch mockup in a few tool calls — no SDK install, no docs crawl.
Install
No global install needed — npx runs the server.
Claude Code (CLI):
claude mcp add snowcone -- npx -y @snowcone-app/mcpClaude Desktop / Cursor / Codex (config block):
{
"mcpServers": {
"snowcone": {
"command": "npx",
"args": ["-y", "@snowcone-app/mcp"]
}
}
}Then restart / reconnect the client and confirm it's live — the tools should
appear (e.g. claude mcp list shows snowcone ✔, and snowcone_* tools are
callable). If no snowcone_* tools show up, the server isn't actually connected:
re-run the add command and restart, rather than proceeding (a registered-but-empty
MCP connection fails silently). Once connected, call snowcone_quickstart first.
The server is self-contained (zero @snowcone-app/* runtime deps — the canonical
URL builder is bundled in).
Tools
| Tool | What it does |
|---|---|
| snowcone_quickstart | The whole model + recommended tool order in one screen. Call this first. |
| snowcone_mint_shop | Mint your own sandbox Shop ID — no account or human needed. |
| snowcone_claim_status | Poll whether your human has claimed the shop (to get paid). |
| snowcone_release_shop | Delete an unclaimed sandbox shop you minted. |
| snowcone_search_catalog | Full-text search the public product catalog. |
| snowcone_get_product | Placements / mockups / options for one product. |
| snowcone_render_mockup | Build an <img>-ready mockup URL from a product + artwork + shop. |
| snowcone_buy_url | Build the matching checkout URL. |
The happy path
snowcone_mint_shoponce → get ashop_id(reuse it everywhere).snowcone_get_productto pick a product code (BEEB77is a good demo).snowcone_render_mockupwith the code, yourshop_id, and a publicly fetchable image URL → an image URL you can drop anywhere.snowcone_buy_urlto sell it; handclaim.verification_uri_completeto your human to route the money to them.
Configuration
All hosts default to production and are overridable by env var, so the same server can drive local/staging stacks:
SNOWCONE_API_BASE, SNOWCONE_IMG_BASE, SNOWCONE_BUY_BASE,
SNOWCONE_MEILI_HOST, SNOWCONE_MEILI_KEY, SNOWCONE_MEILI_INDEX.
Development
pnpm build # bundle to dist/ (self-contained)
pnpm test # hermetic CI gate: drives the server in-memory, locks the URL grammar
pnpm typecheckThe test suite (src/server.test.ts) connects a real MCP client to the server
over an in-memory transport and asserts the exact public URL grammar — if the
shared URL builder drifts, the gate fails. Network tools are dogfooded
out-of-band so the gate stays fast and hermetic.
