Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PICOBERRY_API_KEYYesYour PicoBerry API key (pb_live_...). Required. Get one at https://picoberry.ai
PICOBERRY_API_BASENoBase URL for the PicoBerry API. Default is https://saas-api.umodeler.comhttps://saas-api.umodeler.com

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_models

List available generation engines/models and their credit cost for a category. Call this before generating instead of hardcoding engine names. Returns [{ name, label, cost, paidOnly, supportsMultiView, supportsUltraMode, ultraCost, ... }] — use name as the engine/model value. NOTE: the two 3D surfaces are SEPARATE catalogs — 3d is text-to-3D, image-to-3d is image-to-3D. An unrecognized category silently falls back to 3d, so a guessed value returns a plausible list that is missing image-only engines.

list_animation_presetsA

List animation preset ids for the animate tool. Presets are engine-specific (Tripo ~97 / Meshy ~675) — pick one from the SAME engine you animate with. Optionally filter with a case-insensitive substring.

get_creditsB

Get the current PicoBerry credit balance and plan for the authenticated key.

generate_image

Generate a 2D image from a text prompt (async). Returns an asset { id }; then call wait_for_asset (or poll get_asset) until taskStatus=2 and read files.image (PNG URL). Costs credits — see list_models(category='image'). Omit model for the default. Up to 4 reference image URLs can guide the result (best with nano-banana).

generate_3d_from_text

Generate a game-ready 3D model (GLB) from a text prompt (async). Returns an asset { id }; call wait_for_asset (or poll get_asset) until taskStatus=2 and read files.model (GLB URL). Costs credits — see list_models(category='3d'). Omit engine for the default.

generate_3d_from_image

Generate a 3D model (GLB) from one image, or from 2–4 views of the same subject (multi-view → higher-fidelity geometry), async. Single: image_url (any public http/https image, or a prior generation's files.image) OR image_path (a local file, uploaded directly — no hosting needed). Multi-view: image_urls OR image_paths, ordered [front, left, back, right] (2–4 views). Not every engine takes multi-view — check supportsMultiView from list_models(category='image-to-3d'); unsupported engines return 400. Local files win over URLs. Then wait_for_asset and read files.model. Costs credits — see list_models(category='image-to-3d') (NOT category='3d', which is the text-to-3D catalog and omits image-only engines).

parts_boardA

Decompose one reference image into an exploded "parts board" image (async) — the subject laid out as separated components on one canvas. Input: asset_id (an existing IMAGE asset you own), image_url (a public http/https image), OR image_path (a local file, uploaded directly). Engine/resolution/prompt are server-fixed — no params. Returns an asset { id }; call wait_for_asset (or poll get_asset) until taskStatus=2 and read files.image (the board PNG). Feed that image to generate_3d_from_image for a parts-separated mesh. Costs 80 credits — see list_models(category='parts-board'). Precedence when several are set: image_path > asset_id > image_url.

remeshA

Retopologize an existing 3D asset into a NEW asset (async). Costs credits — see list_models(category='remesh') (pb-remesh is cheapest). wait_for_asset → files.model.

textureA

Re-texture an existing 3D asset (PBR) into a NEW asset (async). Describe the desired look in prompt. Costs credits — see list_models(category='texture'). wait_for_asset → files.model.

animateA

Auto-rig an existing 3D character asset and apply an animation, producing a NEW asset (async). Pick preset from list_animation_presets for the SAME engine. Costs credits — see list_models(category='animate'). wait_for_asset → files.model.

get_assetA

Get a generation's status + result. taskStatus: 0=pending 1=processing 2=succeeded 3=failed. When succeeded, files.{model,image,thumbnail,textures} hold signed result URLs (short TTL — download promptly). On failure, read errorDetail.

wait_for_assetA

Poll an asset until it finishes (taskStatus 2 or 3) or the timeout elapses, then return the final asset. Use right after generate_* / remesh / texture / animate. 3D generations can take several minutes.

list_my_assetsA

List your generated assets (newest first, owner-scoped) for browsing/sync. Filter by category (3d/image/…) or keyword.

download_assetA

Export a completed 3D asset and get a short-lived signed download URL. glb = a single self-contained file. fbx/obj download as a .zip bundle (model + textures; + Unity .meta files when texture_preset='unity') — unzip before importing. For Unity use fbx (there is no built-in glb importer).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 14 tools

Disambiguation4/5

Most tools have clearly distinct purposes: generation (image, 3D from text, 3D from image), transformation (remesh, texture, animate), and utility (list, get, download). The only notable overlap is get_asset vs wait_for_asset, but their descriptions clarify that wait_for_asset polls until completion while get_asset is a single status check.

Naming Consistency3/5

Tool names mix conventions: list_* and get_* use consistent prefixes, generate_* is consistent, but remesh, texture, animate are single standalone verbs, and parts_board is a noun phrase. This mix is still readable and predictable within groups, but not uniform across the set.

Tool Count5/5

14 tools is well-scoped for a 3D/2D asset generation server. The set covers generation, transformation, asset listing, status polling, and download, without unnecessary redundancy or overwhelming bloat.

Completeness4/5

The tool surface covers the core lifecycle: generate from text or image, transform existing assets (remesh, texture, animate), check status (get_asset, wait_for_asset), and download results. Minor gaps such as deleting assets or canceling jobs exist but do not block primary use cases.

Maintenance

ActivityActive
ResponsivenessNo issues