Skip to content

MCP servers › io.github.KD5RYN › b123d-print

MCP server · registry snapshot 2026-10-24

io.github.KD5RYN/b123d-print

Vibe CAD for 3D printing: design, check and export printable parts with build123d. — the publisher's description

8 of 8 record checks metTopic: media-and-design · AI-classifiedversion 0.3.12PythonMITstandard input/output

Summary

io.github.KD5RYN/b123d-print is a local MCP server listed in the official MCP registry at version 0.3.12.

Record checks

8 of 8 record checks met · 1 does not apply

  • met: Registry entry is active and says how to run it
  • met: Source repository link opens
  • met: Repository is not archived
  • met: Code pushed to the repository in the 90 days before our check
  • met: Repository publishes a security policy (SECURITY.md)
  • met: Package names its licence with a standard (SPDX) identifier
  • met: The version the registry lists can be installed and is not withdrawn
  • not applicable: npm package carries build provenance (attestation)
  • met: No known critical or high advisory in the package or its dependencies
  • #14,748 of 15,115 packages by monthly downloads, tied with 367 others
  • Not ranked by stars: 1 star (ranked from 10)

From public records, not a safety rating. Each check with its reason · Is it safe to install?

Key facts

Runs
local package
Transport
standard input/output
Package
PyPI · listed version current
License
MIT
Dependencies
no known high or critical advisories
Repository
public
Topic
media-and-designAI-classified
Last tested
not tested

Add to your client

How fresh this is

Live-tested
no
Last tested
not tested
Latest version
0.3.12, published 2026-10-23 (registry, as of the 2026-10-24 snapshot)
First listed version
2026-10-19 (earliest version still in the registry; older removed versions would be earlier)
Version history
11 versions listed, 2026-10-19 to 2026-10-23; 11 in the 90 days before the 2026-10-24 snapshot.
Most recent 11 versions
  • 0.3.12 · 2026-10-23
  • 0.3.11 · 2026-10-22
  • 0.3.10 · 2026-10-21
  • 0.3.9 · 2026-10-21
  • 0.3.8 · 2026-10-20
  • 0.3.7 · 2026-10-20
  • 0.3.6 · 2026-10-20
  • 0.3.5 · 2026-10-20
  • 0.3.4 · 2026-10-19
  • 0.3.3 · 2026-10-19
  • 0.3.2 · 2026-10-19
(versions still listed in the registry only)
Registry data
snapshot 2026-10-24
Package and repository
checked 2026-10-24

Changes since the last refresh

Version 0.3.11 (published 2026-10-22) → 0.3.12 (published 2026-10-23), between the registry lists of 2026-10-23 and 2026-10-24.

The publisher’s GitHub release note for v0.3.12 (“b123d-print 0.3.12”), published 2026-10-23.

Read the release note (the publisher’s text, shown as plain text)
- **Fair build slots on a shared server** (#73, #71): one client could fill every build slot and
  make everyone else wait (a 3 s `measure` took 28.5 s behind another client's six builds). The
  single first-come queue is replaced by a fair one (`sched.py`): a free slot goes to the client
  (token) with the fewest builds running, round-robin, and one client's own calls keep their
  order. `--quick-slots` (default 1 over HTTP with 2+ slots) keeps a slot for quick calls
  (`measure`, `section`, `list_faces`, `list_edges`, `hardware_list`), so they never wait behind
  long builds. `--client-jobs` (default 4 over HTTP) caps the calls one client may have running
  and waiting: more are refused at once with "server busy: you have 4 jobs running or queued
  ...; wait for one to finish", not queued without end, and a call that waited a whole
  `--timeout` for a slot is refused instead of starting after its client gave up. A `check`
  splits over at most 2 workers (3 on 4 cores was slower), and over 1 while another client
  waits. The worker container also claims queued jobs round-robin by client. `--max-builds`
  keeps its meaning: builds at once, all clients together. Over stdio and SSH (one client) the
  only change is the check split.
- **Memory limit per build** (#71): `--max-memory` / `B123D_PRINT_MAX_MEMORY` (default `2g`;
  `0` = no limit). A build over it fails with "the build used more than 2 GB of memory, the limit
  per job on this server" and the server and other builds go on, instead of the kernel's OOM
  killer taking other clients' builds with it. Linux: `RLIMIT_DATA`, set before bubblewrap starts
  so the job cannot raise it; Windows: the Job Object's memory limit; macOS has none. The Compose
  worker gets `mem_limit` (`B123D_PRINT_WORKER_MEMORY`, default `6g`) and `pids_limit: 1024` as
  the backstop, and a job the kernel kills is reported as most likely out of memory, not as a
  shutdown. `list_parts` reports the limits.

- **Uploads streamed to disk, a few at a time** (#132, #71): a signed upload link
  (`upload_reference`, `curl -fT`) used to collect the whole file, up to 50 MB, in the server's
  memory, with no limit on how many ran at once. Now the body goes to a hidden temp file next to
  the target (`ref/.<name>.<random>.part`) in pieces of about 1 MB and is renamed into place once
  it is all there and checked, so the file is never seen half written. Too large, refused, failed
  or cut off, the temp file is removed; one a stopped server left behind goes a day later.
  Chunked bodies work as well as ones with `Content-Length`. `--client-uploads` (default 2,
  `B123D_PRINT_CLIENT_UPLOADS`) and `--max-uploads` (default 8, `B123D_PRINT_MAX_UPLOADS`) cap
  uploads at once per token and in all; more are refused before the body is read with "server
  busy: ..." (HTTP 429 / 503). New links end in `?by=<token name>`, covered by the signature, so
  the cap counts the token that asked for the link; links from 0.3.11 still work until they
  expire (counted per workspace). Not-replacing links now cannot replace a file that another
  upload stored meanwhile (a hard link, which fails when the name exists). Every other check
  (signature, purpose, expiry, 50 MB, names, symlinks, content) is unchanged.

---
PyPI: https://pypi.org/project/b123d-print/0.3.12/ · Docker: `ghcr.io/kd5ryn/b123d-print-mcp:0.3.12`

The release on GitHub

Source: the official MCP Registry list on 2026-10-23 and on 2026-10-24; release notes from the GitHub Releases API, checked 2026-10-24.

What it is

How do I add it to my client?

Config from the registry entry

From the PyPI package b123d-print

Add to CursorAn install link in the format Cursor documents, holding the Cursor config below. The command runs the publisher’s code on your machine.

Claude Desktop · claude_desktop_config.json (Settings → Developer → Edit Config)
{
  "mcpServers": {
    "b123d-print": {
      "command": "uvx",
      "args": [
        "b123d-print==0.3.12",
        "mcp"
      ]
    }
  }
}
Cursor · .cursor/mcp.json in a project, or ~/.cursor/mcp.json
{
  "mcpServers": {
    "b123d-print": {
      "command": "uvx",
      "args": [
        "b123d-print==0.3.12",
        "mcp"
      ]
    }
  }
}
VS Code · .vscode/mcp.json
{
  "servers": {
    "b123d-print": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "b123d-print==0.3.12",
        "mcp"
      ]
    }
  }
}
VS Code (command line) · Bash or zsh terminal (macOS, Linux)
code --add-mcp '{"name":"b123d-print","type":"stdio","command":"uvx","args":["b123d-print==0.3.12","mcp"]}'
Claude Code
claude mcp add --transport stdio b123d-print -- uvx b123d-print==0.3.12 mcp
Try it in the MCP Inspector · runs on your machine, opens in your browser · Node 22.19+
npx @modelcontextprotocol/inspector@2.11.0 -- uvx b123d-print==0.3.12 mcp
  • Optional arguments the entry also lists (left out above): --workspace.
  • Arguments are written as the registry entry gives them; a named one as “--name value”, the form the registry documentation shows.
  • This runs the publisher's code on your machine (uvx). Read its README first.
  • The MCP Inspector lists the server's tools, resources and prompts; a tool you call there runs for real.

Built from the server's registry entry with each client's documented format (checked 2026-10-14; the Cursor link and the VS Code command 2026-10-19; the MCP Inspector command 2026-10-21). Values in < > are yours to fill in; this page never contains a key. Where the server needs a setting the entry does not declare, it can still fail to start.

Can it be installed, and is it up to date?

Version pin · advisories

Listed version

Registry lists
0.3.12
Latest stable
0.3.12
Status
current
Withdrawn
no

Source: pypi.org · 2026-10-24. About the version the registry lists; a manual install may resolve to a different one.

Dependency advisories

critical0high0moderate0low0

Counted in the full dependency tree as resolved on 2026-10-24 (OSV.dev; each bar counts advisories). Bars share one scale. The package itself has no known vulnerability (OSV.dev).

Integrity, provenance, license

Integrity
sha256-0e1fff1804588e491…
License
MIT

Source: the package registry · 2026-10-24.

Usage

Downloads
0 in the last month

Source: pypistats.org · 2026-10-24.

Does the registry listing match what we found?

Feature #6

The registry verifies a package once, when it is published, and does not re-check it. A difference below is about the listing, not a judgement of the publisher.

Registry saysWe foundResultSource · date
Version 0.3.12 on PyPIExists and can be installedmatchesPyPI · 2026-10-24
Repository github.com/KD5RYN/b123d-printOpens publiclymatchesapi.github.com · 2026-10-24

Who made it?

Feature #7 · lineage

Facts about the publisher. We do not turn them into a trust score.

Namespace
io.github.KD5RYN
GitHub owner
a personal account (KD5RYN)
Repository
github.com/KD5RYN/b123d-print
Stars
1
Repository age
0–30 days
Last push
0–30 days ago
Archived
no
Security policy
SECURITY.md

Source: the registry entry and api.github.com · 2026-10-24; security policy read from GitHub · 2026-10-23.

Publish this server? Run these checks against it yourself before release, from your own machine: a server the command starts, or your own server at its URL after a one-time proof that you control it: npx protocolprobe-selftest.

Choosing

Record checks

Public records · not a safety rating

8 of 8 record checks met · 1 does not apply

  • #14,748 of 15,115 packages by monthly downloads, tied with 367 others
  • Not ranked by stars: 1 star (ranked from 10)
  • MetRegistry entry is active and says how to run itActive, with a package or a remote address.
  • MetSource repository link opensThe linked GitHub repository is public.
  • MetRepository is not archivedNot archived.
  • MetCode pushed to the repository in the 90 days before our checkLast push 0-30 days before our check.
  • MetRepository publishes a security policy (SECURITY.md)SECURITY.md found.
  • MetPackage names its licence with a standard (SPDX) identifierMIT
  • MetThe version the registry lists can be installed and is not withdrawnThe listed version exists and is current.
  • Does not applynpm package carries build provenance (attestation)PyPI packages have no npm-style attestation.
  • MetNo known critical or high advisory in the package or its dependenciesNone known in the package or its dependency tree.

Read from public records only: the registry entry, npm/PyPI, GitHub and advisory databases, checked 2026-10-24. No tool was called. Only “met” and “not met” are counted, so the total differs between servers; a check that does not apply or that we could not run is listed, never counted against it. It is not a safety rating. How each check works · Leaderboards

Common questions about io.github.KD5RYN/b123d-print

Answered from the data above

Is io.github.KD5RYN/b123d-print safe to install?

We do not rate servers as safe or unsafe. 8 of its 8 applicable record checks are met (facts from public records, each listed on this page). What the records show: Its source repository opens publicly. Its repository had a push in the last 90 days. The listed version is the latest stable release. The package itself has no known vulnerability (OSV.dev). Its full dependency tree has no known advisory. These are facts with their sources on this page, not a safety guarantee, and we did not run its tools.

Has io.github.KD5RYN/b123d-print been security tested?

Not yet. It could be started, but has not been tested yet. This is our limit, not the server's.

Does io.github.KD5RYN/b123d-print publish a security policy?

Yes: its repository has a public security policy (github.com/kd5ryn/b123d-print/blob/HEAD/SECURITY.md). That is the publisher's statement, not permission for us to test the server, and we call none of its tools.

Is the listed version current?

Yes. The registry lists 0.3.12, the latest stable release on PyPI.

Where is the source code of io.github.KD5RYN/b123d-print?

In github.com/KD5RYN/b123d-print, which opens publicly.

Found this page useful?

Anonymous · no sign-in

A quick, anonymous reaction — no account, no email. One per kind from your browser. The tally updates when the page is next refreshed, and it is only a rough count, never a safety rating or a measured number of people.

Similar servers

Same topic · AI-read

Active servers whose topic is also “media-and-design”, most GitHub stars first. The topic and the tool kinds are an AI model's reading of the publishers' descriptions, not checked by hand. Similar is not a recommendation.

Compare with another server

Side by side: registry entry, our read-only session, the tools and the 18 classification fields. Same values as each page; no score.

Security testing

Has it been tested?

Feature #1

It could be started, but has not been tested yet. This is our limit, not the server's. — our limit

Reference

How is it classified?

18 fields

One value per field, each with its source. Fields written by AI models are marked. A field with no value says why.

TopicAI-classified
AI-classified · 2026-10-23 · from version 0.3.11 (same title and description)
Pricing modelAI-classified
no value
The pages we read do not state how the product is priced. · from version 0.3.11 (same website)
Programming language
api.github.com · 2026-10-24
Hosting type
registry · 2026-10-24
MCP capability
not checked
not read (no session)
Transport
standard input/output
registry · 2026-10-24
Required credentials
none declared
registry · no declaration is not a guarantee
Package registry
registry · 2026-10-24
Freshness
0–30 days
registry updatedAt · 2026-10-24
Lifecycle status
registry · 2026-10-24
License class
package registry · 2026-10-24
Integrity hash
declared (sha256)
package registry · 2026-10-24
Signature / provenance
does not apply
PyPI publishes no registry signature or attestation equivalent to npm dist.signatures
Dependency advisories
none known
OSV.dev · 2026-10-24
Popularity
0 downloads a month
package registry · 2026-10-24
Publisher signals
owner: a personal account · repository age: 0–30 days · stars: 0–9
api.github.com · 2026-10-24
Maintenance
api.github.com · 2026-10-24
Environment
your machine
where it runs, from the hosting type

“Not stated” means the source did not state it; “does not apply” means it does not apply to this kind of server; “our limit” means our own lookup failed. A linked value opens the directory filtered to the same value.

Cite or correct this page

Sources and corrections

Suggested citation

ProtocolProbe. “io.github.KD5RYN/b123d-print: MCP server record.” Data checked 2026-10-24. https://protocolprobe.com/mcp/servers/io.github.KD5RYN/b123d-print

Figures are valid for the date shown. Our facts on this page are CC BY 4.0: reuse them with a link and the check date. Quoted text (the publisher’s descriptions, website quotes, tool names) is not ours to license.

As JSON: this record in the API · API documentation.

Badge for your README

ProtocolProbe: 8 of 8 record checks met

[![ProtocolProbe](https://protocolprobe.com/api/v1/badge/io.github.KD5RYN/b123d-print)](https://protocolprobe.com/mcp/servers/io.github.KD5RYN/b123d-print)

It shows this server's record-check count: facts from public records, no tool called. It is not a security rating or a pass. It links here and updates after each data reload.

Something wrong, or is this yours?

If a fact here is wrong, tell us and we will re-check it. If you operate this server, you can run our checks on it yourself with the free self-test command; we call no server’s tools ourselves for anything shown here.

Write to hello@protocolprobe.com · corrections log · methodology