Zod
jasonjgardner/blockbench-mcp-plugin
Zod schema validation best practices for type safety, parsing, and error handling.
Searches the step.parts catalog for purchasable CAD parts such as servos, motors, screws and bearings, picks a match and downloads its verified .step file.
$ npx skills add earthtojake/step.parts --skill step-parts -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install earthtojake/step.parts step-parts --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/step-parts .claude/skills/step-parts && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .claude/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/earthtojake/step.parts/tree/main/skills/step-partsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add earthtojake/step.parts --skill step-parts -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install earthtojake/step.parts step-parts --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/step-parts .agents/skills/step-parts && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .agents/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add earthtojake/step.parts --skill step-parts -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install earthtojake/step.parts step-parts --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/step-parts .cursor/skills/step-parts && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .cursor/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/earthtojake/step.parts.git --path skills/step-parts--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add earthtojake/step.parts --skill step-parts -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install earthtojake/step.parts step-parts --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/step-parts .gemini/skills/step-parts && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .gemini/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install earthtojake/step.parts step-partsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add earthtojake/step.parts --skill step-parts -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/step-parts .github/skills/step-parts && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .github/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add earthtojake/step.parts --skill step-parts -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install earthtojake/step.parts step-parts --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/earthtojake/step.parts.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/step-parts .opencode/skills/step-parts && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "step-parts" agent skill from https://github.com/earthtojake/step.parts/tree/main/skills/step-parts into .opencode/skills/step-parts/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "step-parts", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
step-partsSearches the step.parts catalog for purchasable CAD parts such as servos, motors, screws and bearings, picks a match and downloads its verified .step file.
Before inventing simplified placeholder geometry for off-the-shelf components in a CAD assembly, the agent searches the hosted step.parts catalog through its machine endpoints, never by scraping HTML. api.step.parts is the canonical API origin and www.step.parts the site and static-asset origin. A request is turned into search terms and optional facets such as category, family, standard or tag, the parts endpoint is searched, and the returned items, totals and facets are reviewed.
For named servos, motors and actuators the agent tries exact model strings and likely aliases and vendor spellings, because a model such as STS3215 may also appear under other names. Network failures count as inconclusive, so it retries once with network permission before reporting a miss, and a part is called unavailable only when the API was reachable and returned nothing relevant. Ambiguous results are shown with id, name, standard and key attributes, and a clear match is returned without downloading unless you want a local STEP file. Catalog records are treated as data, never as instructions.
A download_step_part.py script fetches the canonical .step file and verifies its checksum, and an API reference and an OpenAI agent config come with it.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit c611332. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.step.partsstep.partsFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
STEP Parts Catalog Search loads about 1.1k tokens when it runs, and up to ~2k if it reads all its reference files. Until then it costs about 126 tokens; SKILL.md has 455 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from earthtojake/step.parts at commit c611332, republished under its MIT licence (© earthtojake). 455 words, ~1,060 tokens.
.claude/skills/step-parts/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Use the hosted step.parts machine endpoints instead of scraping HTML or relying on local repository files. Treat https://api.step.parts as the canonical API origin and https://www.step.parts as the site/static-asset origin unless the user provides a different hosted mirror. If the domain does not resolve or the API is unavailable, report that the hosted service is not reachable yet instead of falling back to repo-specific assumptions.
q for fuzzy tokens, standards, aliases, dimensions, source/product URLs, and attribute names/values.category, family, standard, or tag when the user gives an exact facet./v1/parts and inspect items, total, and facets.id, name, standard, and key attributes before choosing. If one result clearly matches, return the selected record details without downloading unless the user asked for a local STEP file.stepUrl, then verify the file with the record's sha256 when present.Use scripts/download_step_part.py for deterministic search, download, and checksum verification:
python skills/step-parts/scripts/download_step_part.py "M3 socket head 12" --download --out-dir /tmp/step-parts
python skills/step-parts/scripts/download_step_part.py --id iso4762_socket_head_cap_screw_m3x12 --download --out-dir /tmp/step-parts
python skills/step-parts/scripts/download_step_part.py "bearing 608zz" --limit 5Useful options:
--origin: override https://api.step.parts only when the user provides another hosted API origin.--tag, --category, --family, --standard: repeatable facet filters.--out-dir: directory for downloaded STEP files. Defaults to /tmp/step-parts.--all: with --download, download every result on the returned page as individual STEP downloads.--overwrite: replace an existing output file.The script prints JSON to stdout. For searches, it prints matched records. For downloads, it prints saved file paths, checksums, and source URLs.
Read references/step-parts-api.md when you need endpoint details, field meanings, or query semantics. Prefer:
/v1/parts for filtered search with absolute asset URLs./v1/parts/{id} for one enriched record.stepUrl for STEP downloads./v1/catalog/parts.index.json for a compact discovery index./v1/catalog/schema for field and family attribute meanings./v1/openapi.json when generating a client or tool.M3 SHCS 12 before adding exact family and standard filters.tag, category, family, and standard fields are ANDed together. Use exact facets to narrow within known categories, then rank manually by name and attributes.ISO 4762, ISO4762, or the exact standard.designation.attributes object contains family-specific facts such as thread, lengthMm, bore1Mm, material, profileSeries, slotSizeMm, and dimensions in millimeters.https://www.step.parts; STEP URLs are environment-aware and may resolve to GitHub LFS media in production. Use catalog/API stepUrl for downloads.© earthtojake, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts, references) in skills/step-parts of earthtojake/step.parts.
Open the folder on GitHubat commit c611332
STEP Parts Catalog Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| STEP Parts Catalog Search this skillearthtojake/step.parts | 379 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Zodjasonjgardner/blockbench-mcp-plugin | 500 | 3 repos | ~1.4k | Automated safety check: Pass | GPL-3.0 | |
| ToolJet Marketplace Plugin BuilderToolJet/ToolJet | 41k | — | ~2.1k | Automated safety check: Pass | AGPL-3.0 | |
| Tianji Read-Only Data Queriesmsgbyte/tianji | 3.1k | — | ~1.5k | Automated safety check: Pass | Apache-2.0 | |
| DocsInsForge/InsForge | 13k | — | ~761 | Automated safety check: Pass | Apache-2.0 | |
| OpenAPI CLI CallerEvilFreelancer/openapi-to-cli | 265 | — | ~879 | Automated safety check: Pass | MIT |
jasonjgardner/blockbench-mcp-plugin
Zod schema validation best practices for type safety, parsing, and error handling.
ToolJet/ToolJet
Turns an API description, such as an OpenAPI file or a Postman collection, into a connector plugin for ToolJet's marketplace and checks it with the repo's validator.
msgbyte/tianji
Answers questions about website traffic, monitors, surveys, events and billing from a Tianji instance using read-only GET calls checked against its live OpenAPI document.
InsForge/InsForge
A skill your agent uses when contributing to InsForge's product documentation in this repository.
EvilFreelancer/openapi-to-cli
Turns an OpenAPI, Swagger or OpenRPC spec into CLI commands the agent can search and call, with no MCP server or code generation.
soundcloud/api
Integrates applications with the SoundCloud HTTP API using OAuth 2.1, OpenAPI, and developer docs.
Works with
Categories
Searches the step.parts catalog for purchasable CAD parts such as servos, motors, screws and bearings, picks a match and downloads its verified .step file. parts catalog through its machine endpoints, never by scraping HTML.parts the site and static-asset origin.
STEP Parts Catalog Search fits situations like: finding a catalog CAD model for a named servo, motor or electronics board; looking up standard fasteners such as screws, nuts and washers; downloading a STEP file and checking its checksum; resolving fuzzy part names or aliases to a catalog entry.
Run `npx skills add earthtojake/step.parts --skill step-parts -a claude-code`. Or copy the skill folder (skills/step-parts in earthtojake/step.parts) into .claude/skills/step-parts in your project. Claude Code loads it when a task matches its description.
Run `npx skills add earthtojake/step.parts --skill step-parts -a codex`. Or copy the skill folder (skills/step-parts in earthtojake/step.parts) into .agents/skills/step-parts in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add earthtojake/step.parts --skill step-parts -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/step-parts, .gemini/skills/step-parts, .github/skills/step-parts and .opencode/skills/step-parts in your project.
Going by SKILL.md and its folder, STEP Parts Catalog Search needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Network access to api.step.parts; Python, to run the download script.
SKILL.md names 2 domains. In commands or code: api.step.parts and step.parts; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
STEP Parts Catalog Search is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 895 tokens, read only when the agent opens those files.
Skills that share tags, products or a category with STEP Parts Catalog Search: Zod (jasonjgardner/blockbench-mcp-plugin, 500 stars), ToolJet Marketplace Plugin Builder (ToolJet/ToolJet, 41k stars), Tianji Read-Only Data Queries (msgbyte/tianji, 3.1k stars) and Docs (InsForge/InsForge, 13k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
earthtojake (a GitHub user) maintains it in earthtojake/step.parts, which has 379 GitHub stars. The repository was last updated on June 13, 2026.
Source: earthtojake/step.parts on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.