PicToSTL

io.github.qduoduo-hwhPublished by GitHub account qduoduo-hwhv0.1.0Updated Oct 28, 2026

MCP server for pictostl.com image-to-3D generation

VerifiedSTDIODesktop onlyMedia & DesignAI & ML

Overview

AI-generated overview

Local stdio MCP server that lets an assistant turn photos into 3D models via pictostl.com and save the results as GLB or STL files.

What you can do
  • Inspect generation options such as quality, texture, multi-view rules and credit costs
  • Upload a local image file or an HTTPS image URL and get an asset ID
  • Start asynchronous 3D generation jobs and poll their status by task ID
  • List recent generations and check remaining credits and plan status for the API key
  • Download the finished model as the original GLB or as a locally converted binary STL at a chosen path
When to use it
Useful when you want an assistant to convert photos into 3D meshes for visualization or 3D printing experiments without leaving the chat client. It fits workflows that need repeatable, scripted image-to-3D jobs and local GLB/STL output files.
Requirements
Runs as a local process over stdio, started with npx from the GitHub repository; Node.js 20 or newer is required. A PicToSTL account and a live API key in PICTOSTL_API_KEY are needed, plus purchased credits. The optional PICTOSTL_API_BASE overrides the API base URL. Network access to pictostl.com over HTTPS is required.
Before you install
Images, generation parameters and the API key are sent to pictostl.com, and each generation consumes paid credits. Keep the API key in the client's secret or user-level configuration and out of source control. The server writes GLB/STL files to paths on the local machine, and generated meshes are AI reconstructions, not engineering drawings.

Installation

In SourceWeft

  1. Open PicToSTL in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

pictostl-mcp

Local stdio MCP server for pictostl.com. Generation runs on pictostl.com — this package uploads photos, starts 3D jobs, and writes GLB or STL files on the machine that hosts the MCP server.

Results are AI-reconstructed meshes for visualization and 3D printing experiments. They are not engineering drawings.

This is a local stdio MCP server distributed from its GitHub repository. pictostl.com does not host a remote MCP HTTP endpoint.

Architecture and data flow

text
MCP client → local pictostl-mcp process → pictostl.com API                                      ← generation status and GLBMCP client ← local GLB/STL file       ←

The MCP process runs locally and communicates with https://pictostl.com over HTTPS. Images, generation parameters, and the API key are sent to pictostl.com to upload inputs, create jobs, and retrieve results. GLB-to-STL conversion and final file writing happen locally on the machine running the MCP server.

There is no hosted PicToSTL MCP endpoint. MCP clients start this package locally over stdio; the local process then calls the hosted PicToSTL API.

Get an API key

  1. Sign up
  2. Create a key at API keys
  3. Buy credits on Pricing

By using the API or this MCP server you agree to the Terms of Service.

Website browser generation is separate from MCP. MCP always uses an API key.

Install from GitHub

Requires Node.js 20 or newer. The command below installs the repository through npm's Git support and runs its committed JavaScript build. It does not require a published npm package or a local TypeScript compiler.

Claude / Cursor config

json
{  "mcpServers": {    "pictostl": {      "command": "npx",      "args": [        "-y",        "--package=github:qduoduo-hwh/pictostl-mcp",        "pictostl-mcp"      ],      "env": {        "PICTOSTL_API_KEY": "ps_live_..."      }    }  }}

Set PICTOSTL_API_KEY to a live key from https://pictostl.com/settings/api-keys.

Optional: PICTOSTL_API_BASE (default https://pictostl.com) for a local website.

Keep the API key in your MCP client's secret or user-level configuration. Do not commit a live key to source control.

For a pinned installation, append a Git tag or commit after the repository name, for example github:qduoduo-hwh/pictostl-mcp#v0.1.0.

Local development

bash
git clone https://github.com/qduoduo-hwh/pictostl-mcp.gitcd pictostl-mcpcorepack enablepnpm install --frozen-lockfilepnpm build

Then configure the MCP client to run node with the absolute path to dist/index.js as its first argument.

Tools

Seven MCP tools:

ToolPurpose
list_generation_optionsQuality, texture, multi-view rules, and credit costs
upload_imageUpload a local file or HTTPS URL; returns assetId
generate_modelStart an async 3D job (sends clientRequestId even if you omit it)
get_taskFetch a generation by task id; optional waitSeconds (max 60)
list_my_generationsList recent generations for this API key
get_accountRemaining credits and Pro / Ultra paid-credit status
download_modelWrite original GLB, or a local binary STL, to a path

Typical flow: upload_image → generate_model → get_task (repeat with the same task id if it takes more than 60 seconds) → download_model with that task id.

Do not pass an upload assetId to get_task or download_model.

download_model default is format=stl, longest edge 100 mm, converted locally from the original GLB (not the website preview mesh). STL has geometry only — no color or textures. format=glb writes the original file unchanged.

Reuse clientRequestId from a previous generate_model result when retrying the same job.

Contributing

Improve tool descriptions so agents call the right tool with the right fields. Do not ask for internal fal prompts or provider payloads.

License

MIT

Source: README.md at commit 2ce3d66

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 23, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts