printables-mcp
English · Русский
An MCP server for Printables.com: lets an AI agent search 3D models, read model cards, list files and get direct download links.
It talks to the public Printables GraphQL API directly: no HTML scraping, no browser, no account. All tools are read-only and return structured results (JSON with an output schema), so agents get exact fields instead of prose.
Installation
uv tool install printables-mcp
Then register the printables-mcp command with your MCP client. Claude Code:
claude mcp add printables -s user -- printables-mcp
Any other client that speaks stdio:
{
"mcpServers": {
"printables": { "command": "printables-mcp" }
}
}
Without installing: uvx printables-mcp.
Tools
| Tool | What it does |
|---|---|
search_models |
Text search with pagination (limit, offset, total count) and filters: category, price (free / paid), licenses, published within N days, has user prints. Orderings: best match, popular, latest, rating, makes count. |
get_model |
Full model card: description as Markdown, tags, category path, license, materials, printer, print time, filament weight, images, PDF, remix sources, stats, price. |
list_model_files |
Every file group in one request: model files (STL/3MF/STEP…), G-code with printer, material, layer height, nozzle and print time, SLA files, other files, ZIP packs. |
get_download_links |
Direct download URLs (valid 24 h) for all or selected files, fetched in parallel. Files of paid or club-only models come back with a per-file reason instead of failing the call. |
list_categories |
All categories with their full paths (IDs for the search filter). |
list_licenses |
All licenses (IDs for the search filter). |
get_author |
Author profile by ID, handle or profile URL. |
list_author_models |
An author's models, cursor-paginated, ordered by newest, oldest, likes, downloads, rating or makes. |
Models and authors can be passed as IDs or as printables.com URLs (locale prefixes such as /de/ are fine).
Limitations
- Anonymous access only: paid and Printables Club models are visible, but their files cannot be downloaded.
- The API is undocumented and may change without notice; the end-to-end suite (
just test-live) checks it against the live service.
Development
uv sync
just lint # ruff format/check + ty
just test # pytest with 100% branch coverage
just test-live # end-to-end tests against the real API
License
Metadata
Release files for printables-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| printables_mcp-0.1.0.tar.gz | 135.9 kB | Without provenance | Details for printables_mcp-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| printables_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for printables_mcp-0.1.0-py3-none-any.whl |
Total release size: 152.0 kB
Release files / printables_mcp-0.1.0.tar.gz
| Download URL | printables_mcp-0.1.0.tar.gz |
|---|---|
| Size | 135.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
df50337d0d9221aa0b40ee6aa84d57a0d5afdf725ea251ac60adf7d7fb59a072
|
|
BLAKE2b-256 checksum How to use checksums |
f1e002381607db84bd5bdf188e05305ad5a5d7f23a8c17552e50b60cc85cc9a1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / printables_mcp-0.1.0-py3-none-any.whl
| Download URL | printables_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 16.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6eb0699e8ef2f98f59697a31f6cc470098a172e3edbe4392d70de135485ae1ca
|
|
BLAKE2b-256 checksum How to use checksums |
63b8cc59f54db7c75452b74b89765a297a9c289bc4fc037952659ebd3c145eb6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for printables-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.