Skip to main content
Glama

find_similar_prints

Read-only

Find 3D models with similar geometry by matching geometric signatures and surface-area/volume metrics against the print DNA knowledge base.

Instructions

Find similar models in the print DNA knowledge base.

        Uses geometric signature matching and surface area / volume
        similarity to locate models with similar geometry.

        Args:
            file_hash: SHA-256 hash of the model file.
            geometric_signature: Geometric signature from fingerprinting.
            surface_area_mm2: Surface area in mm^2 (for fuzzy matching).
            volume_mm3: Volume in mm^3 (for fuzzy matching).
            complexity_score: Complexity (for fuzzy matching).
            limit: Maximum results (default 10).
            threshold: Similarity threshold 0.0-1.0 (default 0.8).
            geometric_signature_v2: ``fingerprint_model``'s
                ``geometric_signature_v2``.  Pass it: without it,
                models that merely share the older signature are
                reported as the same geometry.
        

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "file_hash": "<file_hash>",
      "geometric_signature": "<geometric_signature>"
    },
    "name": "find_similar_prints"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum results (default 10). Default: 10.
file_hashYesSHA-256 hash of the model file.
thresholdNoSimilarity threshold 0.0-1.0 (default 0.8). Default: 0.8.
volume_mm3NoVolume in mm^3 (for fuzzy matching). Default: 0.0.
complexity_scoreNoComplexity (for fuzzy matching). Default: 0.0.
surface_area_mm2NoSurface area in mm^2 (for fuzzy matching). Default: 0.0.
geometric_signatureYesGeometric signature from fingerprinting.
geometric_signature_v2No``fingerprint_model``'s ``geometric_signature_v2``. Pass it: without it, models that merely share the older signature are reported as the same geometry. Default: "".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv1.5.1
    • changedInput schema / properties / complexity_score / description
      Previous value: -"Default: 0.0."New value: +"Complexity (for fuzzy matching). Default: 0.0."
    • addedInput schema / properties / file_hash / description
      Added value: +"SHA-256 hash of the model file."
    • addedInput schema / properties / geometric_signature / description
      Added value: +"Geometric signature from fingerprinting."
    • changedInput schema / properties / geometric_signature_v2 / description
      Previous value: -"Default: \"\"."New value: +"``fingerprint_model``'s ``geometric_signature_v2``.  Pass it: without it, models that merely share the older signature are reported as the same geometry. Default: \"\"."
    • changedInput schema / properties / limit / description
      Previous value: -"Default: 10."New value: +"Maximum results (default 10). Default: 10."
    • changedInput schema / properties / surface_area_mm2 / description
      Previous value: -"Default: 0.0."New value: +"Surface area in mm^2 (for fuzzy matching). Default: 0.0."
    • changedInput schema / properties / threshold / description
      Previous value: -"Default: 0.8."New value: +"Similarity threshold 0.0-1.0 (default 0.8). Default: 0.8."
    • changedInput schema / properties / volume_mm3 / description
      Previous value: -"Default: 0.0."New value: +"Volume in mm^3 (for fuzzy matching). Default: 0.0."
  2. Changed12 schema fields changedv1.5.0
    • removedInput schema / properties / complexity_score / default
      Removed value: -0
    • addedInput schema / properties / complexity_score / description
      Added value: +"Default: 0.0."
    • removedInput schema / properties / geometric_signature_v2 / default
      Removed value: -""
    • addedInput schema / properties / geometric_signature_v2 / description
      Added value: +"Default: \"\"."
    • removedInput schema / properties / limit / default
      Removed value: -10
    • addedInput schema / properties / limit / description
      Added value: +"Default: 10."
    • removedInput schema / properties / surface_area_mm2 / default
      Removed value: -0
    • addedInput schema / properties / surface_area_mm2 / description
      Added value: +"Default: 0.0."
    • removedInput schema / properties / threshold / default
      Removed value: -0.8
    • addedInput schema / properties / threshold / description
      Added value: +"Default: 0.8."
    • removedInput schema / properties / volume_mm3 / default
      Removed value: -0
    • addedInput schema / properties / volume_mm3 / description
      Added value: +"Default: 0.0."
  3. Changed1 schema field changedv1.3.1
    • addedInput schema / properties / geometric_signature_v2
      Added value: +{
      +  "default": "",
      +  "title": "Geometric Signature V2",
      +  "type": "string"
      +}
  4. First observedv0.1.0

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly/non-destructive/closed-world, and the description goes further by disclosing the matching mechanism and a concrete failure mode: without geometric_signature_v2, models sharing only the older signature are falsely reported as the same geometry. It does not describe what the returned similar models contain (hashes, distances, scores), which leaves a gap for a search tool with no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The two-sentence purpose is well front-loaded, but the eight-line Args block duplicates the schema descriptions word-for-word, including the multi-line v2 caveat, so a substantial share of the text earns no additional value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter search tool with no output schema, the definition never explains what a result looks like or how threshold and the optional fuzzy features combine to rank matches. The core inputs are covered, but an agent cannot predict the response shape or how much the optional signals influence scoring.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented, including the v2 warning — the description's Args block largely restates those same descriptions verbatim. Baseline 3 applies because the text adds grouping context ('for fuzzy matching') but no new semantics, defaults, or interaction rules beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — 'Find similar models in the print DNA knowledge base' — and names the matching technique (geometric signature plus surface area/volume similarity). An agent can distinguish this from fingerprint_model (which produces the signature) and record_print_dna, though it never explicitly frames that producer/consumer relationship.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the parameter names reference 'fingerprinting' and 'fingerprint_model', hinting the signature must first be produced elsewhere. There is no explicit when-to-use statement, no when-not, and no guidance on whether the optional fuzzy-matching inputs should be supplied alongside the required ones.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools