PicoBerry MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PICOBERRY_API_KEY | Yes | Your PicoBerry API key (pb_live_...). Required. Get one at https://picoberry.ai | |
| PICOBERRY_API_BASE | No | Base URL for the PicoBerry API. Default is https://saas-api.umodeler.com | https://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
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| 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 |
| list_animation_presetsA | List animation preset ids for the |
| 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 |
| 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 |
| 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: |
| parts_boardA | Decompose one reference image into an exploded "parts board" image (async) — the subject laid out as separated components on one canvas. Input: |
| 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 |
| animateA | Auto-rig an existing 3D character asset and apply an animation, producing a NEW asset (async). Pick |
| 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
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 14 tools
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.
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.
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.
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.