Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted just now
teppi

Server definition

Hash
sha256:229e0ff67927db8343e31606f273c9745f83ad65a246452fdcec981f659d23c2
What it is
What a remote MCP server returned when asked what it offers: 21 tools

The blob, as servednamed by its sha256

{ "instructions": "Commonlands MCP public endpoint is https://mcp.commonlands.com/mcp. Use this endpoint in client configuration, metadata, and agent-facing descriptions. Commonlands MCP helps agents select precision optics for machine vision, robotics, and embedded vision: M12 lenses, C-mount lenses, and lens field of view calculations. Usage flow: discover lenses with search_lens_catalog/search_catalog, inspect distortion with get_lens_distortion_profile, compute lens field of view with calculate_field_of_view, rank options with match_lens_to_sensor/compare_lenses/recommend_lenses_for_application, then use read_shopify_products for live purchasable truth before quoting price, availability, Shopify variantId, product URL, or cart payloads. FoV rule: catalog EFL, image circle, max FoV/FOV@image-circle, and distortion display fields are insufficient to compute field of view on a specific sensor; do not interpolate or estimate interior sensor FoV from those fields. Always call calculate_field_of_view for one lens/sensor pair or match_lens_to_sensor for catalog-wide per-sensor HFOV/VFOV/DFOV selection. Do not run DIY optics math, interpolate catalog FoV, infer coverage, or assemble sensor-specific optical numbers outside Commonlands MCP computed responses. Source-labeling policy: label every optical or commerce claim with its source; preserve returned provenance.method, provenance.rev, coverage class, distortion-at-field-edge status, and Shopify live-read versus fixture/source-warning distinctions. For sensor-specific lens finding, prefer match_lens_to_sensor when the user gives a sensor or target FoV, then call calculate_field_of_view for each final lens/sensor FoV claim. Use search_lens_catalog only for broad SKU/title/mount discovery. Safety boundaries: fixture-backed tools are scaffold/context only; Shopify product/cart truth is read-only unless approved cart tools are explicitly listed in tools/list; cancel, checkout, payment, customer, order, inventory, and product writes remain hidden/gated unless separately approved. Do not pass arbitrary URLs or client-supplied downstream tokens; Commonlands uses fixed allowlisted endpoints and server-side secrets only, and does not accept client-supplied downstream tokens.", "tools": [ { "description": "Calculate Commonlands lens field of view for a lens/sensor pair and return HFOV, VFOV, DFOV, coverage, distortion status, and an explicit rectilinear comparison. Use this tool for FOV, HFOV, VFOV, DFOV, field of view, \"lens for\", lens-to-sensor, AR0234, IMX290, IMX477, and sensor part-number requests. It returns Commonlands data the model cannot derive: live backend FoV when configured, distortion model/status, image-circle coverage, live stock through Shopify read tools where applicable, and MTF/CRA/BFL fields if present in upstream catalog data. Do not use naive rectilinear fallback, focal-length-only math, interpolation, or self-computed catalog estimates when a Commonlands lens/sensor route is available. Accepts lens_sku/lensSku or focal_length_mm/focalLengthMm, plus sensor/sensorPartNumber/sensor_part_number and working_distance_mm/workingDistanceMm. No part number? Describe the sensor directly: widthPx + heightPx + pixelSizeUm (active area is derived as pixels x pitch), or sensorWidthMm + sensorHeightMm. Results are labelled CUSTOM-<w>x<h>. If only focal length is supplied, the response is marked as a rectilinear reference and does not claim Commonlands distortion-corrected lens truth.", "inputSchema": { "additionalProperties": false, "anyOf": [ { "required": [ "lens_sku" ] }, { "required": [ "lensSku" ] }, { "required": [ "focal_length_mm" ] }, { "required": [ "focalLengthMm" ] } ], "properties": { "focalLengthMm": { "description": "Fallback rectilinear reference only when no Commonlands lens SKU is available. Camel-case alias for focal_length_mm.", "exclusiveMinimum": 0, "type": "number" }, "focal_length_mm": { "description": "Fallback rectilinear reference only when no Commonlands lens SKU is available. Snake-case alias for focalLengthMm.", "exclusiveMinimum": 0, "type": "number" }, "heightPx": { "description": "Custom sensor: vertical pixel count (e.g. 3040).", "minimum": 1, "type": "integer" }, "horizontalPixels": { "description": "Alias for widthPx.", "minimum": 1, "type": "integer" }, "lensSku": { "description": "Commonlands lens SKU, for example CIL250. Camel-case alias for lens_sku.", "type": "string" }, "lens_sku": { "description": "Commonlands lens SKU, for example CIL250. Snake-case alias for lensSku.", "type": "string" }, "pixelPitchUm": { "description": "Alias for pixelSizeUm.", "exclusiveMinimum": 0, "type": "number" }, "pixelSizeUm": { "description": "Custom sensor: pixel pitch in microns (e.g. 1.55).", "exclusiveMinimum": 0, "type": "number" }, "sensor": { "anyOf": [ { "description": "Known catalog sensor part number.", "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "description": "Safe sensor identifier accepted for live catalog lookup.", "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" }, { "additionalProperties": true, "properties": { "partNumber": { "type": "string" }, "part_number": { "type": "string" } }, "type": "object" } ], "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." }, "sensorHeightMm": { "description": "Custom sensor: active-area height in mm.", "exclusiveMinimum": 0, "type": "number" }, "sensorPartNumber": { "anyOf": [ { "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" } ], "description": "Sensor part number. Camel-case alias for sensor." }, "sensorWidthMm": { "description": "Custom sensor: active-area width in mm (alternative to pixels x pitch).", "exclusiveMinimum": 0, "type": "number" }, "sensor_part_number": { "anyOf": [ { "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" } ], "description": "Sensor part number. Snake-case alias for sensorPartNumber." }, "verticalPixels": { "description": "Alias for heightPx.", "minimum": 1, "type": "integer" }, "widthPx": { "description": "Custom sensor: horizontal pixel count (e.g. 4056). Use with heightPx and pixelSizeUm.", "minimum": 1, "type": "integer" }, "workingDistanceMm": { "description": "Optional working distance in mm. Camel-case alias for working_distance_mm.", "exclusiveMinimum": 0, "type": "number" }, "working_distance_mm": { "description": "Optional working distance in mm. Snake-case alias for workingDistanceMm.", "exclusiveMinimum": 0, "type": "number" } }, "type": "object" }, "name": "calculate_field_of_view", "outputSchema": { "additionalProperties": true, "properties": { "coverage_ok": { "type": [ "boolean", "null" ] }, "dfov_deg": { "type": [ "number", "null" ] }, "distortion_model": { "type": "string" }, "hfov_deg": { "type": [ "number", "null" ] }, "image_circle_mm": { "type": [ "number", "null" ] }, "method": { "type": "string" }, "rectilinear_comparison": { "additionalProperties": false, "properties": { "delta_deg": { "type": [ "number", "null" ] }, "dfov_deg": { "type": [ "number", "null" ] } }, "required": [ "dfov_deg", "delta_deg" ], "type": "object" }, "sensor_diagonal_mm": { "type": "number" }, "vfov_deg": { "type": [ "number", "null" ] } }, "required": [ "hfov_deg", "vfov_deg", "dfov_deg", "method", "distortion_model", "image_circle_mm", "sensor_diagonal_mm", "coverage_ok", "rectilinear_comparison" ], "type": "object" } }, { "description": "Compare selected Commonlands M12 lens and C-mount lens SKUs on the same sensor with the same deterministic scoring model. Use as explanatory context, then call calculate_field_of_view for final sensor-specific FoV values when precision matters. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor. Not live product truth; verify purchasable facts with read_shopify_products.", "inputSchema": { "additionalProperties": false, "properties": { "lensSkus": { "items": { "type": "string" }, "maxItems": 10, "minItems": 1, "type": "array" }, "sensorPartNumber": { "description": "Sensor part number, for example IMX477.", "type": "string" }, "workingDistanceMm": { "exclusiveMinimum": 0, "type": "number" } }, "required": [ "lensSkus", "sensorPartNumber" ], "type": "object" }, "name": "compare_lenses", "outputSchema": null }, { "description": "Create a Shopify-owned cart for selected variant line items through the configured Shopify Cart/Storefront MCP endpoint. Commonlands MCP is a stateless proxy: cart state is stored and mutated by Shopify, not in the Worker. The response includes a cart_access_token that binds the cart to this session; retain it, because get_cart and update_cart refuse to act on the cart without it.", "inputSchema": { "additionalProperties": false, "properties": { "cart": { "additionalProperties": false, "properties": { "context": { "type": "object" }, "line_items": { "items": { "additionalProperties": false, "properties": { "item": { "additionalProperties": false, "properties": { "id": { "type": "string" } }, "required": [ "id" ], "type": "object" }, "quantity": { "maximum": 999, "minimum": 1, "type": "integer" } }, "required": [ "quantity", "item" ], "type": "object" }, "maxItems": 25, "minItems": 1, "type": "array" }, "signals": { "type": "object" } }, "required": [ "line_items" ], "type": "object" }, "meta": { "description": "Optional UCP metadata. ucp-agent.profile is filled from server config when omitted.", "type": "object" } }, "required": [ "cart" ], "type": "object" }, "name": "create_cart", "outputSchema": null }, { "description": "Retrieve a Shopify-owned cart by cart id. Owner-bound: requires the cart_access_token returned by create_cart, so only the session that created a cart can read it. Cart persistence comes from Shopify; agents must retain the cart id, cart_access_token, and continue_url across sessions.", "inputSchema": { "additionalProperties": false, "properties": { "cart_access_token": { "description": "Owner credential returned by create_cart for this cart id.", "type": "string" }, "id": { "description": "Shopify Cart gid.", "type": "string" }, "meta": { "type": "object" } }, "required": [ "id", "cart_access_token" ], "type": "object" }, "name": "get_cart", "outputSchema": null }, { "description": "Return fixture-backed joined catalog counts, validation status, source provenance, live connector readiness, and non-authoritative product-truth warning.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "get_catalog_snapshot_status", "outputSchema": null }, { "description": "Return the Commonlands distortion model/status for one lens SKU, including whether the data is source-display-only or backend-calculated. Use this tool for FOV, HFOV, VFOV, DFOV, field of view, \"lens for\", lens-to-sensor, AR0234, IMX290, IMX477, and sensor part-number requests. It returns Commonlands data the model cannot derive: live backend FoV when configured, distortion model/status, image-circle coverage, live stock through Shopify read tools where applicable, and MTF/CRA/BFL fields if present in upstream catalog data. Do not use naive rectilinear fallback, focal-length-only math, interpolation, or self-computed catalog estimates when a Commonlands lens/sensor route is available. Use this for distortion, rectilinear-vs-wide-angle, MTF/CRA/BFL/optical-profile questions when upstream fields are present. Do not invent polynomial coefficients or claim measured distortion correction when the backend only returns display distortion.", "inputSchema": { "additionalProperties": false, "anyOf": [ { "required": [ "lens_sku" ] }, { "required": [ "lensSku" ] }, { "required": [ "sku" ] } ], "properties": { "lensSku": { "description": "Commonlands lens SKU, for example CIL250. Camel-case alias for lens_sku.", "type": "string" }, "lens_sku": { "description": "Commonlands lens SKU, for example CIL250. Snake-case alias for lensSku.", "type": "string" }, "sku": { "description": "Legacy SKU alias.", "type": "string" } }, "type": "object" }, "name": "get_lens_distortion_profile", "outputSchema": null }, { "description": "Fixture-backed UCP Catalog product detail alias with Commonlands optical metadata and Shopify-native handoff fields. Product optical fields are not a substitute for sensor-specific FoV; call calculate_field_of_view for the lens/sensor pair. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "catalog": { "additionalProperties": true, "properties": { "id": { "type": "string" } }, "required": [ "id" ], "type": "object" }, "meta": { "type": "object" } }, "required": [ "catalog" ], "type": "object" }, "name": "get_product", "outputSchema": null }, { "description": "Return fixture-backed product-page handoff details for one lens, including DynamoDB-sourced optical specs and gated datasheet policy. Product-page/catalog optical fields are not a substitute for sensor-specific FoV; call calculate_field_of_view for the lens/sensor pair. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor. Use read_shopify_products for live product URL, price, availability, variant IDs, and metafields.", "inputSchema": { "additionalProperties": false, "properties": { "sku": { "description": "Commonlands short part number, for example CIL250.", "type": "string" } }, "required": [ "sku" ], "type": "object" }, "name": "get_product_page_details", "outputSchema": null }, { "description": "Return safe dual-channel purchase route options for AI agents and robotics engineers across Commonlands MCP and Shopify-native channels without mutating commerce state. This explains commerce routes only; call calculate_field_of_view/match_lens_to_sensor for sensor-specific FoV before recommending a lens. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "agentType": { "type": "string" }, "buyerIntent": { "type": "string" }, "quantity": { "default": 1, "maximum": 999, "minimum": 1, "type": "integer" }, "sensorPartNumber": { "type": "string" }, "sku": { "type": "string" } }, "required": [ "sku" ], "type": "object" }, "name": "get_purchase_route_options", "outputSchema": null }, { "description": "Return sensor dimensions, pixel pitch, and resolution for lens field of view, M12 lens, and C-mount lens matching inputs. In production this uses the read-only live sensor table when configured, with fixture fallback when unavailable. Use these specs as inputs to calculate_field_of_view or match_lens_to_sensor, not as a reason to hand-calculate FoV. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "partNumber": { "description": "Sensor part number, for example IMX477.", "type": "string" } }, "required": [ "partNumber" ], "type": "object" }, "name": "get_sensor_specs", "outputSchema": null }, { "description": "Report sanitized Cloudflare Shopify binding presence, approved read scopes, and read-only safety flags without exposing secrets or calling Shopify.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "get_shopify_readonly_config_status", "outputSchema": null }, { "description": "Report connector-free Shopify Storefront MCP and UCP Catalog compatibility, launch blockers, and Commonlands engineering differentiators.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "get_shopify_ucp_readiness", "outputSchema": null }, { "description": "Fixture-backed UCP Catalog lookup alias for product, variant, SKU, handle, or URL identifiers; returns not-found messages instead of writes. Lookup records are not enough for sensor-specific FoV; call calculate_field_of_view for known lens/sensor pairs. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "catalog": { "additionalProperties": true, "properties": { "ids": { "items": { "type": "string" }, "maxItems": 10, "minItems": 1, "type": "array" } }, "required": [ "ids" ], "type": "object" }, "meta": { "type": "object" } }, "required": [ "catalog" ], "type": "object" }, "name": "lookup_catalog", "outputSchema": null }, { "description": "Find and rank Commonlands lenses for a sensor, target field of view, working distance, mount, or \"lens for\" request. Use this tool for FOV, HFOV, VFOV, DFOV, field of view, \"lens for\", lens-to-sensor, AR0234, IMX290, IMX477, and sensor part-number requests. It returns Commonlands data the model cannot derive: live backend FoV when configured, distortion model/status, image-circle coverage, live stock through Shopify read tools where applicable, and MTF/CRA/BFL fields if present in upstream catalog data. Do not use naive rectilinear fallback, focal-length-only math, interpolation, or self-computed catalog estimates when a Commonlands lens/sensor route is available. Use this for AR0234, IMX290, IMX477, sensor part numbers, M12/C-mount matching, and target HFOV/VFOV/DFOV workflows; do not shortlist from focal length alone. No part number? Describe the sensor directly: widthPx + heightPx + pixelSizeUm (active area is derived as pixels x pitch), or sensorWidthMm + sensorHeightMm. Results are labelled CUSTOM-<w>x<h>. Use read_shopify_products afterward for live stock, price, availability, Shopify variantId, product URL, and metafields.", "inputSchema": { "additionalProperties": false, "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": { "desiredHorizontalFovDeg": { "exclusiveMinimum": 0, "type": "number" }, "desired_horizontal_fov_deg": { "exclusiveMinimum": 0, "type": "number" }, "heightPx": { "description": "Custom sensor: vertical pixel count (e.g. 3040).", "minimum": 1, "type": "integer" }, "horizontalPixels": { "description": "Alias for widthPx.", "minimum": 1, "type": "integer" }, "maxResults": { "default": 5, "maximum": 10, "minimum": 1, "type": "integer" }, "max_results": { "default": 5, "maximum": 10, "minimum": 1, "type": "integer" }, "mount": { "description": "Optional mount filter, for example M12 or C-mount.", "type": "string" }, "pixelPitchUm": { "description": "Alias for pixelSizeUm.", "exclusiveMinimum": 0, "type": "number" }, "pixelSizeUm": { "description": "Custom sensor: pixel pitch in microns (e.g. 1.55).", "exclusiveMinimum": 0, "type": "number" }, "sensor": { "anyOf": [ { "description": "Known catalog sensor part number.", "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "description": "Safe sensor identifier accepted for live catalog lookup.", "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" } ], "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." }, "sensorHeightMm": { "description": "Custom sensor: active-area height in mm.", "exclusiveMinimum": 0, "type": "number" }, "sensorPartNumber": { "anyOf": [ { "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" } ], "description": "Sensor part number. Alias for sensor." }, "sensorWidthMm": { "description": "Custom sensor: active-area width in mm (alternative to pixels x pitch).", "exclusiveMinimum": 0, "type": "number" }, "sensor_part_number": { "anyOf": [ { "enum": [ "IMX477", "IMX219", "AR0234" ], "type": "string" }, { "pattern": "^[A-Za-z0-9-]{2,32}$", "type": "string" } ], "description": "Sensor part number. Snake-case alias for sensorPartNumber." }, "verticalPixels": { "description": "Alias for heightPx.", "minimum": 1, "type": "integer" }, "widthPx": { "description": "Custom sensor: horizontal pixel count (e.g. 4056). Use with heightPx and pixelSizeUm.", "minimum": 1, "type": "integer" }, "workingDistanceMm": { "exclusiveMinimum": 0, "type": "number" }, "working_distance_mm": { "exclusiveMinimum": 0, "type": "number" } }, "type": "object" }, "name": "match_lens_to_sensor", "outputSchema": null }, { "description": "Build a read-only Shopify-native purchase handoff seam for a selected lens without creating carts, checkout, orders, inventory mutations, or writes. Preserve any computed FoV provenance from calculate_field_of_view/match_lens_to_sensor when carrying optical context into purchase handoff. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "quantity": { "default": 1, "maximum": 999, "minimum": 1, "type": "integer" }, "selectedVariantId": { "type": "string" }, "sensorPartNumber": { "type": "string" }, "sku": { "type": "string" } }, "required": [ "sku" ], "type": "object" }, "name": "prepare_shopify_purchase_handoff", "outputSchema": null }, { "description": "Use this for live purchasable product truth: product and variant IDs, SKUs, prices, coarse availability, product URLs, and public product-page metafields. Public data only: active products, no exact inventory counts, and metafields limited to the custom.* display fields shown on commonlands.com product pages. Read-only; does not create carts, checkouts, orders, customers, inventory mutations, or Shopify writes. Fixture catalog tools are scaffold data only.", "inputSchema": { "additionalProperties": false, "properties": { "handle": { "description": "Optional Shopify product handle.", "type": "string" }, "includeMetafields": { "default": false, "description": "When true, include the allowlisted public product-page metafields (custom.* display specs). Non-public namespaces and keys are never returned.", "type": "boolean" }, "limit": { "default": 10, "maximum": 25, "minimum": 1, "type": "integer" }, "query": { "description": "Optional safe Shopify product/variant search text.", "type": "string" }, "sku": { "description": "Optional variant SKU, for example CIL250.", "type": "string" } }, "type": "object" }, "name": "read_shopify_products", "outputSchema": null }, { "description": "Rank Commonlands M12 lenses and C-mount lenses for an application note such as embedded robotics, machine-vision inspection, or a required lens field of view. Use as an application shortlist helper, then call match_lens_to_sensor or calculate_field_of_view for final per-sensor HFOV/VFOV/DFOV. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "application": { "type": "string" }, "desiredHorizontalFovDeg": { "exclusiveMinimum": 0, "type": "number" }, "maxResults": { "default": 5, "maximum": 10, "minimum": 1, "type": "integer" }, "mount": { "type": "string" }, "preferLowDistortion": { "default": false, "type": "boolean" }, "requireInStock": { "default": false, "type": "boolean" }, "sensorPartNumber": { "description": "Sensor part number, for example IMX477.", "type": "string" }, "workingDistanceMm": { "exclusiveMinimum": 0, "type": "number" } }, "required": [ "sensorPartNumber" ], "type": "object" }, "name": "recommend_lenses_for_application", "outputSchema": null }, { "description": "Fixture-backed UCP Catalog search alias for Shopify-native product discovery; no live Shopify calls or cart behavior. Use this only for broad discovery; when a sensor or target FoV is involved, call match_lens_to_sensor or calculate_field_of_view instead of estimating from catalog fields. FoV rule: never estimate sensor-specific FoV from catalog fields; use calculate_field_of_view or match_lens_to_sensor.", "inputSchema": { "additionalProperties": false, "properties": { "catalog": { "additionalProperties": true, "properties": { "limit": { "default": 10, "maximum": 25, "minimum": 1, "type": "integer" }, "query": { "type": "string" } }, "type": "object" }, "meta": { "description": "Optional UCP agent metadata.", "type": "object" } }, "type": "object" }, "name": "search_catalog", "outputSchema": null }, { "description": "Search the Commonlands lens catalog by SKU, mount, lens type, M12, C-mount, or application text. For sensor part numbers such as AR0234, IMX290, and IMX477, or any \"lens for <sensor>\" request, use match_lens_to_sensor instead — sensor names are not searchable text here. Use this tool for FOV, HFOV, VFOV, DFOV, field of view, \"lens for\", lens-to-sensor, AR0234, IMX290, IMX477, and sensor part-number requests. It returns Commonlands data the model cannot derive: live backend FoV when configured, distortion model/status, image-circle coverage, live stock through Shopify read tools where applicable, and MTF/CRA/BFL fields if present in upstream catalog data. Do not use naive rectilinear fallback, focal-length-only math, interpolation, or self-computed catalog estimates when a Commonlands lens/sensor route is available. This discovers candidate lenses from Commonlands catalog/live backend data; it does not replace calculate_field_of_view for sensor-specific HFOV/VFOV/DFOV and does not replace read_shopify_products for live stock/price/product truth.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 10, "maximum": 25, "minimum": 1, "type": "integer" }, "query": { "description": "SKU, title, mount, lens type, application, sensor, or field-of-view search text.", "type": "string" } }, "type": "object" }, "name": "search_lens_catalog", "outputSchema": null }, { "description": "Forward a buyer request-for-quote or engineering question to the Commonlands engineering team. Two-step, buyer-confirmed: the first call returns a preview and sends nothing; show the buyer the preview (including their reply-to email) and, only after they explicitly approve, call again with confirm: true to send. The recipient is fixed to the Commonlands inbox (the agent cannot choose it); this only sends an inquiry and never creates an order, charges a card, or writes Shopify/customer data. Include part numbers, sensor, quantity, and application when known so the team can reply with a quote. Commonlands replies by email.", "inputSchema": { "additionalProperties": false, "properties": { "application": { "description": "Optional application note.", "type": "string" }, "company": { "description": "Optional company name.", "type": "string" }, "confirm": { "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.", "type": "boolean" }, "email": { "description": "The buyer's reply-to email so Commonlands can respond.", "type": "string" }, "kind": { "description": "Whether this is a quote request or a general question. Defaults to question.", "enum": [ "rfq", "question" ], "type": "string" }, "message": { "description": "The buyer's question or RFQ details.", "maxLength": 4000, "type": "string" }, "name": { "description": "Optional buyer name.", "type": "string" }, "partNumbers": { "anyOf": [ { "type": "string" }, { "items": { "type": "string" }, "maxItems": 25, "type": "array" } ], "description": "Optional Commonlands SKUs of interest (string or array)." }, "quantity": { "description": "Optional quantity for the quote.", "minimum": 1, "type": "integer" }, "sensor": { "description": "Optional sensor part number for context.", "type": "string" } }, "required": [ "message", "email" ], "type": "object" }, "name": "submit_rfq", "outputSchema": null }, { "description": "Update a Shopify-owned cart through the configured Cart/Storefront MCP endpoint. Owner-bound: requires the cart_access_token returned by create_cart, so only the session that created a cart can change it. With UCP endpoints, treat updates as full-state PUT semantics; with the confirmed standard Storefront MCP endpoint, Commonlands maps line_items to Shopify add_items, update_items to quantity changes, and remove_line_ids to explicit removals. Quantity 0 in update_items removes a line.", "inputSchema": { "additionalProperties": false, "properties": { "cart": { "additionalProperties": false, "properties": { "context": { "type": "object" }, "line_items": { "description": "Variant items to add to the cart.", "items": { "additionalProperties": false, "properties": { "item": { "additionalProperties": false, "properties": { "id": { "type": "string" } }, "required": [ "id" ], "type": "object" }, "quantity": { "maximum": 999, "minimum": 1, "type": "integer" } }, "required": [ "quantity", "item" ], "type": "object" }, "maxItems": 25, "minItems": 1, "type": "array" }, "remove_line_ids": { "description": "Existing Shopify CartLine gids to remove explicitly.", "items": { "type": "string" }, "maxItems": 25, "minItems": 1, "type": "array" }, "signals": { "type": "object" }, "update_items": { "description": "Existing Shopify cart line IDs with desired quantities; quantity 0 removes the line.", "items": { "additionalProperties": false, "properties": { "id": { "description": "Shopify CartLine gid.", "type": "string" }, "quantity": { "maximum": 999, "minimum": 0, "type": "integer" } }, "required": [ "id", "quantity" ], "type": "object" }, "maxItems": 25, "minItems": 1, "type": "array" } }, "type": "object" }, "cart_access_token": { "description": "Owner credential returned by create_cart for this cart id.", "type": "string" }, "id": { "type": "string" }, "meta": { "type": "object" } }, "required": [ "id", "cart", "cart_access_token" ], "type": "object" }, "name": "update_cart", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:229e0ff67927db8343e31606f273c9745f83ad65a246452fdcec981f659d23c2 | sha256sum