Skip to main content
Glama

Server Quality Checklist

58%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.17

  • Disambiguation4/5

    Most tools have distinct purposes, but the joint creation tools (dovetail, finger_joint, mortise_tenon) could be confused as they all create joints between components with similar descriptions. However, their specific joint types are clearly named, reducing ambiguity.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with snake_case, such as create_component, delete_component, and export_scene. This predictability makes the tool set easy to navigate and understand.

    Tool Count5/5

    With 10 tools, the server is well-scoped for Sketchup operations, covering component management, joint creation, scene export, and scripting. Each tool serves a clear purpose without redundancy or excessive complexity.

    Completeness4/5

    The tool set covers key operations like creating, deleting, transforming, and selecting components, with additional features for joints and materials. Minor gaps include no explicit update_component tool, but transform_component and set_material can handle updates, and scene import is missing, though export_scene is present.

  • Average 2.9/5 across 10 of 10 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a mutation operation ('Set'), but does not reveal critical traits such as whether this requires specific permissions, if changes are reversible, potential side effects (e.g., affecting other properties), or error handling. This leaves significant gaps in understanding the tool's behavior.

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

    Conciseness5/5

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

    The description is extremely concise with a single sentence ('Set material for a component'), which is front-loaded and wastes no words. While it may be under-specified, it is structurally efficient and to the point.

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

    Completeness2/5

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

    Given the complexity of a mutation tool with no annotations, 0% schema coverage, and an output schema (which might help but isn't described), the description is incomplete. It fails to address key aspects like behavioral risks, parameter details, or usage context, making it inadequate for safe and effective tool invocation.

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

    Parameters2/5

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

    Schema description coverage is 0%, meaning parameters 'id' and 'material' are undocumented in the schema. The description adds minimal semantics by implying 'id' identifies a component and 'material' is what to set, but it lacks details like format constraints, valid material types, or examples. This does not adequately compensate for the schema's lack of documentation.

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

    Purpose3/5

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

    The description states the action ('Set') and target ('material for a component'), which provides a basic understanding of purpose. However, it lacks specificity about what 'material' means in this context (e.g., physical properties, appearance, structural type) and does not distinguish it from sibling tools like 'create_component' or 'transform_component', leaving ambiguity about its unique role.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. For example, it does not specify if this is for modifying existing components (vs. creating new ones with 'create_component') or if there are prerequisites (e.g., the component must exist). The description offers no context on usage scenarios or exclusions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose if this is a read/write operation, what permissions are needed, if it modifies the scene, rate limits, or output behavior (though output schema exists). This is inadequate for a mutation-like tool with zero annotation coverage.

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

    Conciseness5/5

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

    The description is extremely concise with a single sentence ('Export the current scene'), which is front-loaded and wastes no words. For a simple tool, this brevity is appropriate and efficient.

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

    Completeness2/5

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

    Given the tool's potential complexity (exporting a scene implies file generation or data output), no annotations, and low schema coverage, the description is incomplete. It doesn't explain what 'export' entails, the output format implications, or how it interacts with the scene. The output schema helps but doesn't fully compensate for the lack of context.

    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 0%, so the description must compensate but adds no parameter information. It doesn't explain the 'format' parameter's purpose, default value, or valid options. However, with only 1 parameter and an output schema present, the baseline is 3 as the schema provides some structure, but the description fails to add meaningful semantics.

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

    Purpose3/5

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

    The description 'Export the current scene' states a clear verb ('Export') and resource ('current scene'), providing basic purpose. However, it doesn't specify what 'scene' means in this context or differentiate from sibling tools like 'create_component' or 'get_selection', leaving it somewhat vague about its specific domain.

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

    Usage Guidelines2/5

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

    The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an open scene), exclusions, or comparisons to siblings like 'eval_ruby' or 'set_material', leaving the agent with no usage context.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states 'Create' which implies a write/mutation operation, but doesn't address permissions needed, whether the creation is reversible, rate limits, or what happens on success/failure. This leaves significant behavioral gaps for a mutation tool.

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

    Conciseness5/5

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

    The description is extremely concise at just 5 words, front-loading the core purpose with zero wasted words. Every word earns its place in conveying the essential action and target.

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

    Completeness2/5

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

    For a mutation tool with 3 parameters, 0% schema coverage, no annotations, but an output schema, the description is inadequate. It doesn't explain what gets created, parameter requirements, behavioral aspects, or how it differs from sibling creation tools. The presence of an output schema helps with return values, but the description should do more given the complexity.

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

    Parameters2/5

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

    With 0% schema description coverage and 3 parameters (type, position, dimensions), the description provides no parameter information whatsoever. It doesn't explain what 'type' accepts beyond 'cube', what format 'position' and 'dimensions' arrays should use, or their units/constraints. This fails to compensate for the complete lack of schema documentation.

    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?

    The description clearly states the action ('Create') and resource ('new component in Sketchup'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'create_dovetail' or 'create_finger_joint' which also create components, so it lacks sibling distinction.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, when not to use it, or how it differs from other creation tools like 'create_dovetail' or 'create_mortise_tenon' in the sibling list.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions creation but fails to describe side effects (e.g., whether components are modified or new ones generated), permissions needed, error conditions, or output format. This is inadequate for a mutation tool with 10 parameters.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words, making it easy to parse and front-loaded with the core action. It efficiently conveys the basic purpose without unnecessary elaboration.

    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?

    Given the complexity (10 parameters, mutation operation, no annotations) and the presence of an output schema (which reduces need to describe returns), the description is incomplete. It covers the basic purpose but lacks usage guidelines, parameter details, and behavioral context, making it minimally viable but with clear gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate for undocumented parameters. It only implies parameters related to joint creation (e.g., dimensions, angles) but doesn't explain any of the 10 parameters' purposes, units, or relationships, leaving significant gaps in understanding.

    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?

    The description clearly states the action ('Create a dovetail joint') and the target ('between two components'), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'create_finger_joint' or 'create_mortise_tenon' beyond the joint type name, missing a direct comparison.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like 'create_finger_joint' or 'create_mortise_tenon', nor does it mention prerequisites, dependencies, or contextual constraints. It states what the tool does but not when or why to choose it.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the action without behavioral details. It doesn't disclose if this is a destructive operation, what permissions are needed, how it affects existing components, or error conditions. 'Create' suggests mutation, but no further context is given.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that gets straight to the point with no wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.

    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?

    Given the complexity (9 parameters, no annotations, but has output schema), the description is minimal. The output schema existence means return values don't need explanation, but for a creation tool with many parameters and no behavioral context, more detail would be helpful to understand scope and effects.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate but adds no parameter information. It doesn't explain what board1_id/board2_id refer to, what width/height/depth units are, or the meaning of offsets. With 9 parameters, this leaves significant gaps in understanding.

    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?

    The description clearly states the action ('Create') and resource ('finger joint between two components'), specifying it's a box joint type. It doesn't differentiate from sibling woodworking tools like create_dovetail or create_mortise_tenon, but the purpose is unambiguous.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like create_dovetail or create_mortise_tenon. The description implies it's for creating finger joints but doesn't specify scenarios, prerequisites, or exclusions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'create' implies a write operation but lacks details on permissions, side effects (e.g., if it modifies existing components), error handling, or response format. This is inadequate for a tool with 8 parameters and no annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, with every part contributing essential information.

    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?

    Given the tool's complexity (8 parameters, no annotations, but has an output schema), the description is incomplete. It lacks parameter explanations, behavioral details, and usage guidelines, though the output schema may cover return values. This is minimally adequate but with significant gaps.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate by explaining parameters, but it adds no meaning beyond the schema. Parameters like 'mortise_id', 'tenon_id', and dimensions are not contextualized, leaving their purpose and units unclear. This fails to address the coverage gap.

    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?

    The description clearly states the action ('create') and the specific resource ('mortise and tenon joint between two components'), which is a specific woodworking joint. It distinguishes from siblings like 'create_dovetail' and 'create_finger_joint' by specifying the joint type, though it doesn't explicitly contrast them.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like 'create_dovetail' or 'create_finger_joint', nor does it mention prerequisites such as needing existing components or a specific context. The description only states what it does without usage context.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states the destructive action ('Delete') but lacks critical details: whether deletion is permanent or reversible, what permissions are required, if there are side effects (e.g., breaking references in other components), or rate limits. This is inadequate for a mutation tool with zero annotation coverage.

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

    Conciseness5/5

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

    The description is extremely concise—a single, direct sentence that states the core function without any fluff. It's front-loaded with the essential action and parameter, making it efficient for quick understanding, though this brevity contributes to gaps in other dimensions.

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

    Completeness2/5

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

    Given the tool's complexity (a destructive operation with no annotations, 0% schema coverage, but an output schema exists), the description is incomplete. It doesn't address behavioral risks, usage context, or parameter details, relying solely on the output schema for return values. For a delete operation, this leaves significant gaps in understanding how to use it safely and effectively.

    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 0%, but the description adds minimal value by specifying that the 'id' parameter identifies the component to delete. However, it doesn't explain what format the ID should be (e.g., UUID, numeric), where to find it, or if it corresponds to outputs from tools like 'get_selection'. The baseline is 3 since there's only one parameter, but the description doesn't fully compensate for the lack of schema documentation.

    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?

    The description clearly states the action ('Delete') and target ('a component by ID'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'transform_component' or 'set_material' beyond the obvious destructive nature, nor does it specify what type of component is being deleted.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., whether the component must exist), consequences of deletion, or relationships with sibling tools like 'create_component' for re-creation. The agent must infer usage from context alone.

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

  • Behavior2/5

    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 states 'evaluate arbitrary Ruby code' but lacks critical behavioral details: it doesn't disclose security risks (e.g., code execution), performance impacts, error handling, or output format. This is a significant gap for a tool that executes arbitrary code.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to understand quickly. Every part of the sentence earns its place by conveying essential information.

    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?

    Given the tool's complexity (executing arbitrary code) and lack of annotations, the description is incomplete. It doesn't cover safety, performance, or usage context. However, the presence of an output schema reduces the need to explain return values, but more behavioral disclosure is still required for adequate understanding.

    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?

    The description mentions 'Ruby code', which aligns with the 'code' parameter in the schema. However, with 0% schema description coverage, the schema provides no details about the parameter. The description adds some meaning by specifying the code type, but it doesn't compensate fully for the coverage gap, such as explaining syntax or constraints.

    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?

    The description clearly states the verb 'evaluate' and the resource 'arbitrary Ruby code in Sketchup', which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'create_component' or 'export_scene', which are more focused on CAD operations rather than code execution.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, such as needing Ruby code or Sketchup context, or exclusions, like avoiding it for non-code tasks. Without this, users might misuse it for operations better handled by siblings like 'create_component'.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool transforms components, implying mutation, but lacks details on permissions, side effects (e.g., whether changes are reversible), rate limits, or response behavior. This is inadequate for a mutation tool with zero annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core action and parameters without waste. Every word contributes directly to explaining the tool's function, making it appropriately concise and well-structured.

    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?

    Given the tool has an output schema (which handles return values), no annotations, and moderate complexity with 4 parameters, the description is minimally adequate but incomplete. It covers the basic purpose and parameters but misses usage guidelines, behavioral details, and deeper parameter semantics, leaving room for improvement.

    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 0%, so the description must compensate. It lists the parameters ('position, rotation, or scale'), adding some meaning beyond the schema's bare property names. However, it doesn't explain the format (e.g., arrays of numbers for 3D coordinates), defaults, or interactions, leaving gaps in parameter understanding.

    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?

    The description clearly states the action ('transform') and the resource ('a component's position, rotation, or scale'), making the purpose evident. However, it doesn't explicitly differentiate from siblings like 'create_component' or 'delete_component', which would require mentioning it modifies existing components rather than creating or deleting them.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing component ID), exclusions, or comparisons to sibling tools like 'set_material' for other modifications, leaving usage context unclear.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the basic action without disclosing behavioral traits. It doesn't cover aspects like whether this is a read-only operation, what happens if nothing is selected, response format, or any side effects, leaving significant gaps in transparency.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words, clearly front-loading the core purpose. It's appropriately sized for a simple tool with no parameters.

    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?

    Given the tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally adequate. However, as a read operation with no annotations, it lacks context on what 'selected components' means in this system and how the output is structured, leaving room for improvement.

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

    Parameters4/5

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

    The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description appropriately doesn't add unnecessary param details, aligning with the baseline for zero-param tools.

    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?

    The description clearly states the action ('Get') and target resource ('currently selected components'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'transform_component' or 'delete_component' that might also operate on selected components, missing explicit distinction.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing components to be selected first), exclusions, or how it relates to sibling tools like 'create_component' or 'transform_component', leaving usage context unclear.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

sketchup-mcp MCP server

Copy to your README.md:

Score Badge

sketchup-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/piexl/sketchup-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server