Xem Studio
Server Details
Exact-dimension geometry for AI agents: free STEP/STL files, dimension sheets, mating fit data.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
TDQS
Scored across 5 tools
The find_geometry (search) vs get_geometry (retrieve one by slug) split is clear, and get_fits targets a distinct concern (mating features). However get_free_files overlaps with get_geometry, which also returns free STEP/STL URLs and offers, so an agent may not know which to call for downloads.
Every tool follows a consistent snake_case verb_noun pattern (find_geometry, get_geometry, get_fits, get_free_files, list_categories). The repeated get_ prefix targets distinct nouns, so naming stays predictable.
Five tools is lean but sensible for a read-only geometry reference library covering search, detail, fits, files, and taxonomy. A filter-by-dimension or related-parts tool would round it out, but nothing is redundant or bloated.
The surface covers discovery (find, categories), detail (get_geometry), mating data (get_fits), and downloads (get_free_files), which fits a read-only reference domain well. Minor gaps: no search by dimension/fit class and no assembly/related-part traversal beyond get_fits.
Available Tools
5 toolsfind_geometryAInspect
Search the Xem Studio library of real-object geometry (boards, devices, batteries, fans, fasteners, inserts, magnets, pipe, tri-clamp fittings, vintage forms). Returns summaries with overall size in mm, category, and whether files are free. Any argument may be omitted.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | ||
| year | No | 2023, 2020s, or 2010-2019 (electronics and vintage only) | |
| group | No | e.g. Fasteners, Tri-clamp, Single-board computers, Batteries | |
| query | No | Free text: name, alias, tag, e.g. 'M3 heat set insert', 'tri clamp ferrule', 'raspberry pi 5' | |
| category | No | Stirling engines | Hardware | Electronics | Power & cooling | Vintage forms | |
| les_only | No | Only parts used in Long Earth Society Stirling/thermoacoustic engine builds | |
| free_only | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the return shape (summaries with overall size in mm, category, and free status) — useful because there is no output schema. It says nothing about pagination, result limits, how filters combine, or auth requirements, which are the remaining behavioral unknowns for a 7-parameter search.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the verb and resource, then the return summary and the zero-argument flexibility. Every clause earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter, no-annotation, no-output-schema search tool, the description covers purpose and return shape but omits pagination, filter combination logic, and the meaning of the kind enum. Adequate but with clear gaps an agent may need to probe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 71%, so most parameters are already documented in the schema. The description loosely mirrors several of them ('category', 'group', free status) but adds no new semantics for kind, year, or the interaction between filters, leaving roughly a third of the parameters unelaborated in either place.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'Search the Xem Studio library of real-object geometry' — and enumerates the content domains (boards, batteries, fasteners, tri-clamp fittings, etc.). The search-vs-fetch distinction against get_geometry is implied by the verb but never made explicit, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The closing note 'Any argument may be omitted' tells the agent the tool can be invoked with zero filters to browse the whole library, which is genuine usage context. However, it never says when to prefer find_geometry over get_geometry, get_free_files, or get_fits, and gives no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fitsAInspect
Mating features for one object: every hole, pin, pocket or socket that meets another part, with its exact size, what it mates with, the fit class (press, slide, run, socket, clamp, designed) and which files it applies to. All geometry on Xem Studio is exact with no printing tolerance; apply your process allowance to press / slide / run / socket features only and leave designed and clamp features as drawn.
| Name | Required | Description | Default |
|---|---|---|---|
| object | Yes | Slug, e.g. 'tri-clamp-power-pistons' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it delivers real domain behavior: geometry is exact with no printing tolerance, and process allowance applies only to press/slide/run/socket fits while designed/clamp stay as drawn. It does not cover error behavior for an unknown slug or the read-only nature, but the fit-handling semantics are genuinely informative.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the returned content before the caveat about process allowance. Every clause earns its place; slightly dense enumerations but no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates well by listing what each fit record contains (size, mate, fit class, applicable files). A single-param read tool is adequately covered, though it says nothing about behavior for missing objects or the result's ordering/shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter and schema description coverage is 100%, so the schema fully documents 'object' (slug format). The description adds no extra syntax or alias guidance beyond what the schema already says; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Mating features for one object') and enumerates the returned content — holes, pins, pockets, sockets, sizes, mate counterpart, fit class. That is clearly distinguishable from get_geometry or find_geometry, though no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance, and no alternative tool is named. Usage is only implied by the resource ('one object') and by the downstream instruction on applying process allowance, which is about consuming the results rather than selecting this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_free_filesAInspect
List free STEP and STL downloads generated by Xem Studio from the standard for one hardware object (screws, nuts, washers, standoffs, inserts, dowels, magnets, pipe, tri-clamp parts, LM8UU). Returns direct URLs; CC BY 4.0; threads modeled as plain cylinders at major diameter.
| Name | Required | Description | Default |
|---|---|---|---|
| filter | No | Substring of the part name, e.g. 'm3x10', '2in', 'ferrule' | |
| object | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden, and it discloses useful traits: results are direct URLs, content is CC BY 4.0, and threads are modeled as plain cylinders at major diameter. It does not cover pagination, rate limits, or result size, but the key modeling and licensing caveats are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two dense sentences with the core purpose front-loaded and no wasted text. The parenthetical examples and behavioral caveats are compact and directly relevant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list/download tool with no output schema, the description explains the return type as direct URLs and adds licensing and modeling caveats. It is mostly complete, though it could say more about result structure or pagination behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%, but the description compensates for the undocumented required object parameter by listing valid hardware object categories. The optional filter parameter is documented in the schema with examples, so both parameters have usable semantics even though the object list may not be exhaustive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: listing free STEP/STL downloads for one hardware object. It scopes the tool clearly with examples of object types, though it does not explicitly contrast itself with siblings like get_geometry or find_geometry.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the focus on free downloads for a single hardware object, and the parenthetical lists eligible object types. However, it gives no explicit when-to-use guidance versus siblings such as get_geometry or find_geometry, and does not explain when to use the optional filter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_geometryAInspect
Get one object's dimension sheet (overall mm, mounting holes, notes, size table), the plain-text sheet, every public CAD source with its license, and Xem file offers (free STEP/STL URLs, or scan status and price). Accepts a slug, name or alias.
| Name | Required | Description | Default |
|---|---|---|---|
| object | Yes | Slug from find_geometry, e.g. 'tri-clamp-ferrule', 'raspberry-pi-5', 'heat-set-inserts' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the return surface in detail, including that CAD sources come with their license and that Xem offers are either free STEP/STL URLs or a scan status with price. It never states permissions, rate limits, or that the call is side-effect free, but the 'Get' framing and read-only payload make the operation unambiguous.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence led by the verb and the core resource, followed by parenthetical enumerations of what is returned. It is dense and list-heavy but no clause is filler; a slightly cleaner breakdown would reach 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description must explain the return values, which it does thoroughly across four distinct payload categories. The remaining gap is behavioral rather than informational: nothing about permissions, rate limits, or error behavior when the object is not found.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema coverage, the baseline is 3. The description adds meaning beyond the schema by stating that a slug, a name, or an alias are all acceptable, whereas the schema only documents the slug form from find_geometry.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Get') plus a precisely scoped resource ('one object's dimension sheet') and enumerates the payload: dimensions in mm, mounting holes, notes, size table, plain-text sheet, public CAD sources with licenses, and Xem file offers. The singular 'one object's' implicitly separates it from the search-oriented find_geometry sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the schema note 'Slug from find_geometry' suggests this follows a search, and the description says it accepts a slug, name or alias. There is no explicit when-to-use statement, no exclusions, and no sibling named as an alternative (e.g. get_free_files for free files only).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesCInspect
Category and group tree with object counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read-only retrieval of a tree, but does not state that it is safe/non-destructive, whether it requires authentication, or how results are ordered or paginated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is very concise with no wasted words, but it is not front-loaded with a verb, which slightly weakens its structural clarity. The size is appropriate for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should explain return values more fully. It gives a rough shape (category and group tree with object counts) but does not specify nesting depth, pagination, or whether counts are aggregated, leaving gaps for an agent to interpret the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so per the scoring rule the baseline is 4. The description appropriately does not invent parameter semantics, and no additional parameter meaning is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a noun phrase naming the resource (category and group tree) and an attribute (object counts), but it omits an explicit verb such as 'list' or 'retrieve'. The action is only inferable from the tool name. It does not distinguish itself from any sibling tool, making the purpose vague rather than tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites. The siblings (find_geometry, get_fits, etc.) are unrelated, but the description still provides no context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
find_geometry - First observed
get_fits - First observed
get_free_files - First observed
get_geometry - First observed
list_categories
Related MCP Connectors
- OwlCADOAuthcom.owlcad
Parametric 3D CAD for AI agents: build print-ready parts, check them, export STL, 3MF or STEP.
DXF and PDF/X-4 for AI agents: structured facts, PNG renders, an interactive in-chat viewer.
3D printing: printable models, calculators, troubleshooting wiki, build guides, AI 3D + CAD design.
Source-linked robotics projects, bills of materials and components for AI agents.
Related MCP Servers
- AlicenseBqualityBmaintenanceEnables coding agents to turn mechanical requirements into validated FreeCAD models with deterministic sizing from published standards, standard-part provenance, and automatic geometry validation.131Apache 2.0
- AlicenseBqualityAmaintenanceLet AI agents build, measure and verify parametric parts and assemblies in your own running SolidWorks (Windows, COM). 46 tools, every step measured.86993 PyPI12MIT
- AlicenseNot gradedqualityAmaintenanceGive your AI assistant the ability to inspect, measure, and compare 3D CAD models by dropping in a STEP file and asking engineering questions. Runs entirely on your machine with no cloud, no CAD license, and no setup.120 npm5MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to compare visual specifications and calculate physical dimensions and degrees of freedom from multimodal inputs.7-
Glama MCP Gateway
Add one secure layer between your agents and this server.