Skip to main content
Glama
Praket7

mastercam-mcp

by Praket7

list_operations

Read-onlyIdempotent

Retrieve Mastercam operations with pagination and filtering by operation type. Set limit and offset to control how many operations are returned for precise workflow audits.

Instructions

List operations with explicit quantities and pagination

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
operationTypeNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes
dataNo
liveNo
toolYes
errorNo
receiptNo
documentRevisionNo
operationFingerprintNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed14 schema fields changedv0.3.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / properties / confirmed
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedInput schema / properties / dryRun
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedInput schema / properties / feed
      Removed value: -{
      -  "type": "number"
      -}
    • addedInput schema / properties / limit
      Added value: +{
      +  "default": 100,
      +  "maximum": 500,
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • removedInput schema / properties / name
      Removed value: -{
      -  "type": "string"
      -}
    • addedInput schema / properties / offset
      Added value: +{
      +  "default": 0,
      +  "maximum": 9007199254740991,
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • removedInput schema / properties / operationId
      Removed value: -{}
    • removedInput schema / properties / operationIds
      Removed value: -{
      -  "items": {},
      -  "type": "array"
      -}
    • addedInput schema / properties / operationType
      Added value: +{
      +  "maxLength": 64,
      +  "type": "string"
      +}
    • removedInput schema / properties / outputPath
      Removed value: -{
      -  "type": "string"
      -}
    • removedInput schema / properties / speed
      Removed value: -{
      -  "type": "number"
      -}
    • removedInput schema / properties / toolId
      Removed value: -{}
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "properties": {
      +    "data": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "feed": {},
      +          "feedRate": {},
      +          "id": {
      +            "type": "number"
      +          },
      +          "name": {
      +            "type": "string"
      +          },
      +          "spindleSpeed": {},
      +          "tool": {
      +            "type": "number"
      +          },
      +          "toolpathDirty": {
      +            "type": "boolean"
      +          },
      +          "type": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "name",
      +          "type",
      +          "feedRate",
      +          "spindleSpeed"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "documentRevision": {
      +      "type": "string"
      +    },
      +    "error": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "code": {
      +          "type": "string"
      +        },
      +        "message": {
      +          "type": "string"
      +        },
      +        "remediation": {
      +          "type": "string"
      +        },
      +        "retryable": {
      +          "type": "boolean"
      +        }
      +      },
      +      "required": [
      +        "code",
      +        "message"
      +      ],
      +      "type": "object"
      +    },
      +    "live": {
      +      "type": "boolean"
      +    },
      +    "ok": {
      +      "type": "boolean"
      +    },
      +    "operationFingerprint": {
      +      "type": "string"
      +    },
      +    "receipt": {},
      +    "tool": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "ok",
      +    "tool"
      +  ],
      +  "type": "object"
      +}
  2. First observedv0.1.0

TDQS

C2.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, covering the safety profile. The description adds 'explicit quantities and pagination', which gives some behavioral context about the output style. However, it doesn't explain what 'explicit quantities' means (e.g., does it return counts?) or how pagination behaves. Given the annotations, the description provides marginal extra value beyond them, warranting a 3.

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 description is a single short sentence, which is concise and front-loaded. However, it is under-specified, providing only the core action and a hint of behavior. While conciseness is good, the lack of substance makes it less effective. An ideal description would be slightly longer to cover filtering and pagination details without becoming verbose.

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 has three parameters, 0% schema description coverage, and many sibling tools, the description is incomplete. It fails to explain operationType, the meaning of limit/offset, or how this tool differs from find_operations. An output schema exists, so return values need not be described, but the absence of any parameter or usage context makes this inadequate for an agent to call correctly.

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

Parameters1/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 the parameters. It mentions pagination but does not define limit or offset semantics, and it completely ignores operationType, which appears to be a filter. The description adds no meaning to the parameters beyond what the schema already shows (e.g., types and defaults). With three parameters and zero coverage, this is a clear failure.

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 a verb ('List') and a resource ('operations'), which gives a clear purpose. It doesn't explicitly distinguish itself from sibling tools like find_operations, but the phrase 'explicit quantities and pagination' hints at a distinct scope. A clear purpose with minor lack of sibling differentiation merits a 4.

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 such as find_operations, get_operation, or list_tools. It mentions pagination and quantities, which implies a batch listing scenario, but there is no explicit when-to-use or when-not-to-use guidance. This is a significant gap given the large set of sibling tools.

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