# 3D Modeling Agent

## Links

- Product page URL: https://www.agentpmt.com/marketplace/create-3d-model-from-image
- Product markdown URL: https://www.agentpmt.com/marketplace/create-3d-model-from-image?format=agent-md
- Product JSON URL: https://www.agentpmt.com/marketplace/create-3d-model-from-image?format=agent-json

## Overview

- Product ID: 69496f1bb54506f955d789f2
- Vendor: Apoth3osis
- Type: model
- Unit type: request
- Price: 10000 credits
- Categories: AI & Machine Learning, 3D Design & Modeling, Video Game Design, 3D Printing / 3DMF, 3D Asset Creation
- Generated at: 2026-05-31T01:18:02.779Z

### Page Description

Combined 3D modeling workflow for creating assets from a single source image or from a text prompt, refining text-generated drafts into final textured models, and retrieving task status and download URLs from one tool. Supports configurable topology, polygon count, symmetry handling, texture generation, optional PBR outputs, and humanoid pose hints. Completed tasks return downloadable assets in formats such as GLB, FBX, OBJ, and USDZ, while list and get actions make it possible to track active jobs and retrieve completed outputs before the download links expire.

### Agent Description

Create 3D models from images or text, refine text-generated drafts into final textured assets, and retrieve completed model files from one combined tool.

## Details

### Details

Combined 3D modeling workflow for creating assets from a single source image or from a text prompt, refining text-generated drafts into final textured models, and retrieving task status and download URLs from one tool. Supports configurable topology, polygon count, symmetry handling, texture generation, optional PBR outputs, and humanoid pose hints. Completed tasks return downloadable assets in formats such as GLB, FBX, OBJ, and USDZ, while list and get actions make it possible to track active jobs and retrieve completed outputs before the download links expire.

### Actions

- `create_model_from_image` (100 credits): Create a 3D model from a publicly accessible source image. Returns an asynchronous task id for tracking generation progress and downloading the completed asset.
- `create_model_from_text` (150 credits): Create an initial 3D model draft from a text prompt. Use refine_model after the draft succeeds to generate the final textured model.
- `refine_model` (150 credits): Turn a successful text-generated draft into the final textured 3D model.
- `get`: Retrieve the latest task status and any output URLs for a single 3D modeling task.
- `list`: List non-expired saved 3D modeling tasks for the current budget.

### Use Cases

Image to 3D conversion, text to 3D generation, 3D draft generation, 3D model refinement, model status polling, 3D asset retrieval, product visualization, game asset creation, AR and VR asset generation, 3D prototyping, concept modeling, ecommerce 3D assets, downloadable GLB and FBX generation, PBR-ready 3D models, automated 3D workflows

### Workflows Using This Tool

#### Generate 3D Model From Picture

Upload an image and get a 3D model generated from it. The workflow accepts a user-uploaded image, submits it to the 3D Modeling Agent for conversion, waits for processing, then checks for completion and returns the download link.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/generate-3d-model-from-picture
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/generate-3d-model-from-picture?format=agent-md
- Published: 2026-03-25T03:16:55.359Z

### Related Content

No related content is currently linked to this product.

## Integration Details

### DynamicMCP

- Setup page URL: https://www.agentpmt.com/dynamic-mcp
- Claude setup guide: https://www.agentpmt.com/dynamic-mcp?platform=claude#videos
- ChatGPT setup guide: https://www.agentpmt.com/dynamic-mcp?platform=chatgpt#videos
- Cursor setup guide: https://www.agentpmt.com/dynamic-mcp?platform=cursor#videos
- Windsurf setup guide: https://www.agentpmt.com/dynamic-mcp?platform=windsurf#videos

Use the local router for command-based MCP clients. It forwards requests to `https://api.agentpmt.com/mcp` and does not execute tools locally.

```bash
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

### REST API

The live page renders cURL, Python, JavaScript, and Node.js examples. Logged-in users see those examples prefilled with their own API and budget credentials.

- Purchase endpoint: https://api.agentpmt.com/products/purchase
- Authorization format: `Bearer <base64(apiKey:budgetKey)>`

```bash
curl -X POST "https://api.agentpmt.com/products/purchase" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eW91ci1hcGkta2V5LWhlcmU6eW91ci1idWRnZXQta2V5LWhlcmU=" \
  -d '{
    "product_id": "69496f1bb54506f955d789f2",
    "parameters": {
      "action": "create_model_from_image",
      "image_url": "example_image_url",
      "topology": "triangle",
      "target_polycount": 30000,
      "symmetry_mode": "auto",
      "should_remesh": true,
      "should_texture": true
    }
  }'
```

### Autonomous Agents

Autonomous agents can access this tool through AgentAddress credit balances or direct x402 payments. Use the Autonomous Agent API reference for endpoint shapes after choosing the access pattern below.

- Autonomous Agent API reference URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents
- Autonomous Agent API reference markdown URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents?format=agent-md
- Credit-Based Access Using AgentAddress: https://www.agentpmt.com/docs/autonomous-agents/credit-based-tool-usage-with-agentaddress
- AgentAddress is preferred for persistent file access, stored platform state, and maximum tool use ability across repeated calls.
- Direct x402 is for independent one-off tool calls that do not require shared files or stored platform state.
- Direct x402 public payments: USDC on Base, Arbitrum, Optimism, Polygon, and Avalanche.

### Schema

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "create_model_from_image": {
      "description": "Create a 3D model from a publicly accessible source image. Returns an asynchronous task id for tracking generation progress and downloading the completed asset.",
      "properties": {
        "image_url": {
          "type": "string",
          "description": "Public image URL or base64 data URI for the source image. JPG, JPEG, and PNG are supported.",
          "required": true
        },
        "topology": {
          "type": "string",
          "description": "Mesh topology for the generated model.",
          "required": false,
          "default": "triangle",
          "enum": [
            "quad",
            "triangle"
          ]
        },
        "target_polycount": {
          "type": "integer",
          "description": "Target polygon count for the output mesh.",
          "required": false,
          "default": 30000,
          "minimum": 100,
          "maximum": 300000
        },
        "symmetry_mode": {
          "type": "string",
          "description": "Symmetry handling mode for the generated model.",
          "required": false,
          "default": "auto",
          "enum": [
            "off",
            "auto",
            "on"
          ]
        },
        "should_remesh": {
          "type": "boolean",
          "description": "Apply topology and polygon-count settings. Leave true for most cases.",
          "required": false,
          "default": true
        },
        "should_texture": {
          "type": "boolean",
          "description": "Generate texture maps for the model.",
          "required": false,
          "default": true
        },
        "enable_pbr": {
          "type": "boolean",
          "description": "Generate PBR maps including metallic, roughness, and normal outputs when supported.",
          "required": false
        },
        "pose_mode": {
          "type": "string",
          "description": "Pose hint for humanoid subjects.",
          "required": false,
          "enum": [
            "",
            "a-pose",
            "t-pose"
          ]
        },
        "texture_prompt": {
          "type": "string",
          "description": "Optional text guidance for texture generation.",
          "required": false
        },
        "texture_image_url": {
          "type": "string",
          "description": "Optional image URL or data URI to guide texture generation.",
          "required": false
        }
      },
      "price_per_unit": 100
    },
    "create_model_from_text": {
      "description": "Create an initial 3D model draft from a text prompt. Use refine_model after the draft succeeds to generate the final textured model.",
      "properties": {
        "prompt": {
          "type": "string",
          "description": "Text prompt describing the model to generate.",
          "required": true
        },
        "ai_model": {
          "type": "string",
          "description": "Text-to-3D model to use for the draft generation step.",
          "required": false,
          "default": "latest",
          "enum": [
            "meshy-5",
            "meshy-6",
            "latest"
          ]
        },
        "topology": {
          "type": "string",
          "description": "Mesh topology for the generated draft.",
          "required": false,
          "default": "triangle",
          "enum": [
            "quad",
            "triangle"
          ]
        },
        "target_polycount": {
          "type": "integer",
          "description": "Target polygon count for the output mesh.",
          "required": false,
          "default": 30000,
          "minimum": 100,
          "maximum": 300000
        },
        "symmetry_mode": {
          "type": "string",
          "description": "Symmetry handling mode for the generated draft.",
          "required": false,
          "default": "auto",
          "enum": [
            "off",
            "auto",
            "on"
          ]
        },
        "should_remesh": {
          "type": "boolean",
          "description": "Apply topology and polygon-count settings. Defaults depend on the selected AI model.",
          "required": false
        },
        "pose_mode": {
          "type": "string",
          "description": "Pose hint for humanoid subjects.",
          "required": false,
          "enum": [
            "",
            "a-pose",
            "t-pose"
          ]
        },
        "moderation": {
          "type": "boolean",
          "description": "Screen text inputs for harmful content.",
          "required": false
        }
      },
      "price_per_unit": 150
    },
    "refine_model": {
      "description": "Turn a successful text-generated draft into the final textured 3D model.",
      "properties": {
        "source_task_id": {
          "type": "string",
          "description": "Task id returned from create_model_from_text.",
          "required": true
        },
        "ai_model": {
          "type": "string",
          "description": "Text-to-3D model to use for the refine step.",
          "required": false,
          "default": "latest",
          "enum": [
            "meshy-5",
            "latest"
          ]
        },
        "enable_pbr": {
          "type": "boolean",
          "description": "Generate PBR maps including metallic, roughness, and normal outputs when supported.",
          "required": false
        },
        "texture_prompt": {
          "type": "string",
          "description": "Optional text guidance for texture generation.",
          "required": false
        },
        "texture_image_url": {
          "type": "string",
          "description": "Optional image URL or data URI to guide texture generation.",
          "required": false
        },
        "moderation": {
          "type": "boolean",
          "description": "Screen text inputs for harmful content.",
          "required": false
        }
      },
      "price_per_unit": 150
    },
    "get": {
      "description": "Retrieve the latest task status and any output URLs for a single 3D modeling task.",
      "properties": {
        "task_id": {
          "type": "string",
          "description": "Task id returned from a create or refine action.",
          "required": true
        }
      },
      "price_per_unit": 0
    },
    "list": {
      "description": "List non-expired saved 3D modeling tasks for the current budget.",
      "price_per_unit": 0
    }
  }
}
```

### Usage Instructions

# 3D Modeling

Generate 3D models from images or text, refine text-generated drafts into final textured assets, and retrieve saved task results from one tool.

## Actions

### `get_instructions`
Returns this documentation.

### `create_model_from_image`
Creates a new image-to-3D generation task.

Required:
- `image_url` — public image URL or base64 data URI for the source image

Optional:
- `topology` — `quad` or `triangle` (default `triangle`)
- `target_polycount` — integer from `100` to `300000` (default `30000`)
- `symmetry_mode` — `off`, `auto`, or `on` (default `auto`)
- `should_remesh` — boolean (default `true`)
- `should_texture` — boolean (default `true`)
- `enable_pbr` — boolean (default `false`)
- `pose_mode` — `""`, `a-pose`, or `t-pose`
- `texture_prompt` — optional texture guidance prompt, max 600 characters
- `texture_image_url` — optional image URL or data URI for texture guidance

### `create_model_from_text`
Creates an initial text-generated 3D model draft. After the draft succeeds, use `refine_model` to generate the final textured model.

Required:
- `prompt` — text prompt describing the model to generate

Optional:
- `ai_model` — `meshy-5`, `meshy-6`, or `latest` (default `latest`)
- `topology` — `quad` or `triangle` (default `triangle`)
- `target_polycount` — integer from `100` to `300000` (default `30000`)
- `symmetry_mode` — `off`, `auto`, or `on` (default `auto`)
- `should_remesh` — boolean
- `pose_mode` — `""`, `a-pose`, or `t-pose`
- `moderation` — boolean (default `false`)

### `refine_model`
Turns a successful `create_model_from_text` task into the final textured model.

Required:
- `source_task_id` — task id returned from `create_model_from_text`

Optional:
- `ai_model` — `meshy-5` or `latest` (default `latest`)
- `enable_pbr` — boolean (default `false`)
- `texture_prompt` — optional texture guidance prompt, max 600 characters
- `texture_image_url` — optional image URL or data URI for texture guidance
- `moderation` — boolean (default `false`)

### `get`
Returns the latest task status and any output URLs.

Required:
- `task_id`

### `list`
Lists non-expired saved tasks for the current budget.

## Examples

```json
{"action":"create_model_from_image","image_url":"https://example.com/chair.jpg"}
```

```json
{"action":"create_model_from_text","prompt":"a medieval wooden treasure chest"}
```

```json
{"action":"refine_model","source_task_id":"task_123","enable_pbr":true}
```

```json
{"action":"get","task_id":"task_123"}
```

```json
{"action":"list"}
```

## Response

Creation actions return `task_id`, `status`, `progress`, `task_family`, `task_stage`, and `settings`.

`get` returns `status`, `progress`, timestamps, and `model_urls` when the task succeeds.

`list` returns `count` and `models[]` with saved task metadata.

## Notes

- Supported source image formats are JPG, JPEG, and PNG.
- Text-generated drafts must succeed before you call `refine_model`.
- Download links expire after the retention window, so retrieve completed assets promptly.

### Frequently Asked Questions

#### How do I connect this tool to an external agent?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

You can install the local MCP server by opening a terminal and running:

```
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

This will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.

Alternatively you can connect to the hosted version with this config block, no installation required:

```
{
  "mcpServers": {
    "agentpmt": {
      "type": "streamable-http",
      "url": "https://api.agentpmt.com/mcp",
      "headers": {
        "Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
        "x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
      }
    }
  }
}
```

[View MCP Connection Instructions](/docs/mcp-reference/connection) for more details.

#### How does an external agent use this tool?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:

> Call the AgentPMT-Tool-Search-and-Execution tool with action 'get\_schema' and tool\_id 69496f1bb54506f955d789f2 ("3D Modeling Agent"). Then call the same tool with action 'call\_tool', tool\_id 69496f1bb54506f955d789f2, and the parameters needed for my request.

The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.

### Dependencies

This product has no public dependency products.