このMCPでできること
Matches M12 and C-mount lenses to image sensors, calculates field of view, provides optical specifications, and supports Shopify product and cart workflows.
ツール
入力スキーマ
{'type': 'object', 'anyOf': [{'required': ['lens_sku']}, {'required': ['lensSku']}, {'required': ['focal_length_mm']}, {'required': ['focalLengthMm']}], 'properties': {'sensor': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string', 'description': 'Known catalog sensor part number.'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$', 'description': 'Safe sensor identifier accepted for live catalog lookup.'}, {'type': 'object', 'properties': {'partNumber': {'type': 'string'}, 'part_number': {'type': 'string'}}, 'additionalProperties': True}], 'description': 'Sensor part number or safe sensor object. Supports AR0234, IMX290/IMX477 when present in the live catalog, and fixture sensors listed in the enum.'}, 'lensSku': {'type': 'string', 'description': 'Commonlands lens SKU, for example CIL250. Camel-case alias for lens_sku.'}, 'widthPx': {'type': 'integer', 'minimum': 1, 'description': 'Custom sensor: horizontal pixel count (e.g. 4056). Use with heightPx and pixelSizeUm.'}, 'heightPx': {'type': 'integer', 'minimum': 1, 'description': 'Custom sensor: vertical pixel count (e.g. 3040).'}, 'lens_sku': {'type': 'string', 'description': 'Commonlands lens SKU, for example CIL250. Snake-case alias for lensSku.'}, 'pixelSizeUm': {'type': 'number', 'description': 'Custom sensor: pixel pitch in microns (e.g. 1.55).', 'exclusiveMinimum': 0}, 'pixelPitchUm': {'type': 'number', 'description': 'Alias for pixelSizeUm.', 'exclusiveMinimum': 0}, 'focalLengthMm': {'type': 'number', 'description': 'Fallback rectilinear reference only when no Commonlands lens SKU is available. Camel-case alias for focal_length_mm.', 'exclusiveMinimum': 0}, 'sensorWidthMm': {'type': 'number', 'description': 'Custom sensor: active-area width in mm (alternative to pixels x pitch).', 'exclusiveMinimum': 0}, 'sensorHeightMm': {'type': 'number', 'description': 'Custom sensor: active-area height in mm.', 'exclusiveMinimum': 0}, 'verticalPixels': {'type': 'integer', 'minimum': 1, 'description': 'Alias for heightPx.'}, 'focal_length_mm': {'type': 'number', 'description': 'Fallback rectilinear reference only when no Commonlands lens SKU is available. Snake-case alias for focalLengthMm.', 'exclusiveMinimum': 0}, 'horizontalPixels': {'type': 'integer', 'minimum': 1, 'description': 'Alias for widthPx.'}, 'sensorPartNumber': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$'}], 'description': 'Sensor part number. Camel-case alias for sensor.'}, 'workingDistanceMm': {'type': 'number', 'description': 'Optional working distance in mm. Camel-case alias for working_distance_mm.', 'exclusiveMinimum': 0}, 'sensor_part_number': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$'}], 'description': 'Sensor part number. Snake-case alias for sensorPartNumber.'}, 'working_distance_mm': {'type': 'number', 'description': 'Optional working distance in mm. Snake-case alias for workingDistanceMm.', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['hfov_deg', 'vfov_deg', 'dfov_deg', 'method', 'distortion_model', 'image_circle_mm', 'sensor_diagonal_mm', 'coverage_ok', 'rectilinear_comparison'], 'properties': {'method': {'type': 'string'}, 'dfov_deg': {'type': ['number', 'null']}, 'hfov_deg': {'type': ['number', 'null']}, 'vfov_deg': {'type': ['number', 'null']}, 'coverage_ok': {'type': ['boolean', 'null']}, 'image_circle_mm': {'type': ['number', 'null']}, 'distortion_model': {'type': 'string'}, 'sensor_diagonal_mm': {'type': 'number'}, 'rectilinear_comparison': {'type': 'object', 'required': ['dfov_deg', 'delta_deg'], 'properties': {'dfov_deg': {'type': ['number', 'null']}, 'delta_deg': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['lensSkus', 'sensorPartNumber'], 'properties': {'lensSkus': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 10, 'minItems': 1}, 'sensorPartNumber': {'type': 'string', 'description': 'Sensor part number, for example IMX477.'}, 'workingDistanceMm': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['cart'], 'properties': {'cart': {'type': 'object', 'required': ['line_items'], 'properties': {'context': {'type': 'object'}, 'signals': {'type': 'object'}, 'line_items': {'type': 'array', 'items': {'type': 'object', 'required': ['quantity', 'item'], 'properties': {'item': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}}, 'additionalProperties': False}, 'quantity': {'type': 'integer', 'maximum': 999, 'minimum': 1}}, 'additionalProperties': False}, 'maxItems': 25, 'minItems': 1}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'description': 'Optional UCP metadata. ucp-agent.profile is filled from server config when omitted.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['id', 'cart_access_token'], 'properties': {'id': {'type': 'string', 'description': 'Shopify Cart gid.'}, 'meta': {'type': 'object'}, 'cart_access_token': {'type': 'string', 'description': 'Owner credential returned by create_cart for this cart id.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'anyOf': [{'required': ['lens_sku']}, {'required': ['lensSku']}, {'required': ['sku']}], 'properties': {'sku': {'type': 'string', 'description': 'Legacy SKU alias.'}, 'lensSku': {'type': 'string', 'description': 'Commonlands lens SKU, for example CIL250. Camel-case alias for lens_sku.'}, 'lens_sku': {'type': 'string', 'description': 'Commonlands lens SKU, for example CIL250. Snake-case alias for lensSku.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['catalog'], 'properties': {'meta': {'type': 'object'}, 'catalog': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}}, 'additionalProperties': True}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sku'], 'properties': {'sku': {'type': 'string', 'description': 'Commonlands short part number, for example CIL250.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sku'], 'properties': {'sku': {'type': 'string'}, 'quantity': {'type': 'integer', 'default': 1, 'maximum': 999, 'minimum': 1}, 'agentType': {'type': 'string'}, 'buyerIntent': {'type': 'string'}, 'sensorPartNumber': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['partNumber'], 'properties': {'partNumber': {'type': 'string', 'description': 'Sensor part number, for example IMX477.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['catalog'], 'properties': {'meta': {'type': 'object'}, 'catalog': {'type': 'object', 'required': ['ids'], 'properties': {'ids': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 10, 'minItems': 1}}, 'additionalProperties': True}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'anyOf': [{'required': ['sensor']}, {'required': ['sensorPartNumber']}, {'required': ['sensor_part_number']}, {'required': ['widthPx', 'heightPx', 'pixelSizeUm']}, {'required': ['horizontalPixels', 'verticalPixels', 'pixelSizeUm']}, {'required': ['widthPx', 'heightPx', 'pixelPitchUm']}, {'required': ['sensorWidthMm', 'sensorHeightMm']}], 'properties': {'mount': {'type': 'string', 'description': 'Optional mount filter, for example M12 or C-mount.'}, 'sensor': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string', 'description': 'Known catalog sensor part number.'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$', 'description': 'Safe sensor identifier accepted for live catalog lookup.'}], 'description': 'Sensor part number, for example AR0234, IMX290, or IMX477. Any sensor in the live catalog is accepted; the enum lists only the fixture fallback set.'}, 'widthPx': {'type': 'integer', 'minimum': 1, 'description': 'Custom sensor: horizontal pixel count (e.g. 4056). Use with heightPx and pixelSizeUm.'}, 'heightPx': {'type': 'integer', 'minimum': 1, 'description': 'Custom sensor: vertical pixel count (e.g. 3040).'}, 'maxResults': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1}, 'max_results': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1}, 'pixelSizeUm': {'type': 'number', 'description': 'Custom sensor: pixel pitch in microns (e.g. 1.55).', 'exclusiveMinimum': 0}, 'pixelPitchUm': {'type': 'number', 'description': 'Alias for pixelSizeUm.', 'exclusiveMinimum': 0}, 'sensorWidthMm': {'type': 'number', 'description': 'Custom sensor: active-area width in mm (alternative to pixels x pitch).', 'exclusiveMinimum': 0}, 'sensorHeightMm': {'type': 'number', 'description': 'Custom sensor: active-area height in mm.', 'exclusiveMinimum': 0}, 'verticalPixels': {'type': 'integer', 'minimum': 1, 'description': 'Alias for heightPx.'}, 'horizontalPixels': {'type': 'integer', 'minimum': 1, 'description': 'Alias for widthPx.'}, 'sensorPartNumber': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$'}], 'description': 'Sensor part number. Alias for sensor.'}, 'workingDistanceMm': {'type': 'number', 'exclusiveMinimum': 0}, 'sensor_part_number': {'anyOf': [{'enum': ['IMX477', 'IMX219', 'AR0234'], 'type': 'string'}, {'type': 'string', 'pattern': '^[A-Za-z0-9-]{2,32}$'}], 'description': 'Sensor part number. Snake-case alias for sensorPartNumber.'}, 'working_distance_mm': {'type': 'number', 'exclusiveMinimum': 0}, 'desiredHorizontalFovDeg': {'type': 'number', 'exclusiveMinimum': 0}, 'desired_horizontal_fov_deg': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sku'], 'properties': {'sku': {'type': 'string'}, 'quantity': {'type': 'integer', 'default': 1, 'maximum': 999, 'minimum': 1}, 'sensorPartNumber': {'type': 'string'}, 'selectedVariantId': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'sku': {'type': 'string', 'description': 'Optional variant SKU, for example CIL250.'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 25, 'minimum': 1}, 'query': {'type': 'string', 'description': 'Optional safe Shopify product/variant search text.'}, 'handle': {'type': 'string', 'description': 'Optional Shopify product handle.'}, 'includeMetafields': {'type': 'boolean', 'default': False, 'description': 'When true, include the allowlisted public product-page metafields (custom.* display specs). Non-public namespaces and keys are never returned.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['sensorPartNumber'], 'properties': {'mount': {'type': 'string'}, 'maxResults': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1}, 'application': {'type': 'string'}, 'requireInStock': {'type': 'boolean', 'default': False}, 'sensorPartNumber': {'type': 'string', 'description': 'Sensor part number, for example IMX477.'}, 'workingDistanceMm': {'type': 'number', 'exclusiveMinimum': 0}, 'preferLowDistortion': {'type': 'boolean', 'default': False}, 'desiredHorizontalFovDeg': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'meta': {'type': 'object', 'description': 'Optional UCP agent metadata.'}, 'catalog': {'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 25, 'minimum': 1}, 'query': {'type': 'string'}}, 'additionalProperties': True}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 25, 'minimum': 1}, 'query': {'type': 'string', 'description': 'SKU, title, mount, lens type, application, sensor, or field-of-view search text.'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['message', 'email'], 'properties': {'kind': {'enum': ['rfq', 'question'], 'type': 'string', 'description': 'Whether this is a quote request or a general question. Defaults to question.'}, 'name': {'type': 'string', 'description': 'Optional buyer name.'}, 'email': {'type': 'string', 'description': "The buyer's reply-to email so Commonlands can respond."}, 'sensor': {'type': 'string', 'description': 'Optional sensor part number for context.'}, 'company': {'type': 'string', 'description': 'Optional company name.'}, 'confirm': {'type': 'boolean', 'default': False, 'description': 'Explicit buyer approval. Omit or false to get a no-send preview; set true only after the buyer has seen the preview and approved sending.'}, 'message': {'type': 'string', 'maxLength': 4000, 'description': "The buyer's question or RFQ details."}, 'quantity': {'type': 'integer', 'minimum': 1, 'description': 'Optional quantity for the quote.'}, 'application': {'type': 'string', 'description': 'Optional application note.'}, 'partNumbers': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 25}], 'description': 'Optional Commonlands SKUs of interest (string or array).'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['id', 'cart', 'cart_access_token'], 'properties': {'id': {'type': 'string'}, 'cart': {'type': 'object', 'properties': {'context': {'type': 'object'}, 'signals': {'type': 'object'}, 'line_items': {'type': 'array', 'items': {'type': 'object', 'required': ['quantity', 'item'], 'properties': {'item': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string'}}, 'additionalProperties': False}, 'quantity': {'type': 'integer', 'maximum': 999, 'minimum': 1}}, 'additionalProperties': False}, 'maxItems': 25, 'minItems': 1, 'description': 'Variant items to add to the cart.'}, 'update_items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'quantity'], 'properties': {'id': {'type': 'string', 'description': 'Shopify CartLine gid.'}, 'quantity': {'type': 'integer', 'maximum': 999, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 25, 'minItems': 1, 'description': 'Existing Shopify cart line IDs with desired quantities; quantity 0 removes the line.'}, 'remove_line_ids': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 25, 'minItems': 1, 'description': 'Existing Shopify CartLine gids to remove explicitly.'}}, 'additionalProperties': False}, 'meta': {'type': 'object'}, 'cart_access_token': {'type': 'string', 'description': 'Owner credential returned by create_cart for this cart id.'}}, 'additionalProperties': False}
最近のツール変更
類似のMCPサーバー
a2a2p — Agent-to-Agent-to-Physical
Reviews physical product requirements, performs bounded beam engineering calculations and simulations, prepares supplier packages…
Depureco Industrial Vacuum Explorer
Searches and configures industrial vacuum equipment by application, sector, certification, power, capacity, filtration, and techn…
SkoIA Parts
Resolves physical-part identification and compatibility problems, tracks evidence and missing observations, verifies proposed sol…
Zavod Stanki CNC Catalog
Provides a catalog, search, comparison, pricing, configuration, and lead submission for CNC machinery.
Agentic Fabrication Network (AFN)
Obtains quotes and places orders for 3D printing, CNC and sheet-metal fabrication, decals, and related manufacturing services.
catalog
Searches electronic and mechanical parts using datasheet-backed specifications, compatibility checks, and priced bill-of-material…
site
Provides telescope product dataset search, comparisons, rankings, statistics, and consent-based enquiries to human providers.
Steady Steel
Searches catalog products and generates firm quotes for laser-cut steel, stainless steel and aluminum parts.