프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. Google로 로그인하면 리뷰를 쓸 수 있어요.프로토타입 · 30분마다 업데이트
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator

제작자: CommonlandsAbbe버전 0.4.2i★ 0i클라우드에서 실행
레지스트리 이름com.commonlands/optics-mcp

설치 방법

What it does

M12 lens and C-mount lens finder with image-sensor matching and field-of-view calculator.

  • Connects 클라우드에서 실행
  • Account or key No key needed
  • Category 디자인, 이미지 및 오디오

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

검사 5/5 통과 · 내가 묻는 내용은 제작자 서버(mcp.commonlands.com)를 거쳐요 · ✓ 명령 확인 2026년 11월 13일

먼저: 어떤 AI를 쓰시나요?

쓰는 앱을 고르면 아래에 단계가 나옵니다.

Claude에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음 · claude.ai나 데스크톱 앱에서 한 번 설정하면 채팅에서 쓸 수 있어요 · 무료 계정은 1개까지 · Team/Enterprise는 소유자(Owner)가 추가

  1. Claude의 Connectors 페이지 열기

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. “+ Add” → “Add custom connector”를 누르고 이 2칸 채우기

    여기서 복사해 Claude의 같은 이름 칸에 붙여 넣고 Continue를 누르세요

    Name · 이름Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator
    Remote MCP server URL · 주소https://mcp.commonlands.com/mcp

    Authentication은 Claude가 찾은 그대로 두고 Add를 누르세요

  3. 채팅에서 켜기

    +ConnectorsCommonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator

  4. 해 보기

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude가 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰고 있다고 하거나 답에 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

ChatGPT 연결은 요금제에 따라 달라요

전체 MCP: 웹 ChatGPT Business, Enterprise, Edu · Pro: 읽기/가져오기 권한으로 연결, 데이터를 바꾸는 도구는 안 될 수 있어요 · Plus: 공식 문서 미확인, 플러그인 화면에 사용자 지정 MCP 추가 항목이 보이면 시도해 볼 수 있어요 · 웹만

  1. 웹 ChatGPT에서 MCP 추가 페이지 열기

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. 이름과 주소 입력

    이름을 넣고 Connection에 주소를 붙여 넣은 뒤 경고에 체크하고 Create as a plugin을 누르세요

    Name · 이름Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator
    Connection · 주소https://mcp.commonlands.com/mcp
  3. 채팅에서 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 고르기

    새 채팅을 열고 입력 전에 플러그인 목록에서 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 고르세요

  4. 해 보기

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ ChatGPT가 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰고 있다고 하거나 답에 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 OpenAI 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Claude Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 터미널 열기

    Mac: Command+스페이스를 누르고 Terminal 입력 · Windows: PowerShell 열기

  2. 이 명령을 붙여 넣고 Enter

    claude mcp add --transport http --scope user optics https://mcp.commonlands.com/mcp
  3. Claude Code에서 /mcp 입력

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator이 목록에 있고 연결됨으로 보이면 돼요

  4. 해 보기

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Claude Code가 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰고 있다고 하거나 답에 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Anthropic 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Cursor에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 Cursor 열기

    Cursor에서 열기

    Cursor가 설치를 확인하면 Install을 누르세요

  2. Cursor에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ Cursor가 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰고 있다고 하거나 답에 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 Cursor 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

VS Code에 연결할 수 있어요 · 약 2분

키 필요 없음, 설치 필요 없음

  1. 이 버튼으로 VS Code 열기

    VS Code에서 열기

    VS Code가 설치를 확인하면 Install을 누르세요

  2. VS Code에서 AI 채팅을 Agent 모드로 열기

  3. 해 보기

    Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 써서 나에게 무엇을 해 줄 수 있는지 알려 주고, 하나 해 봐

    ✓ VS Code가 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰고 있다고 하거나 답에 Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator 도구 이름이 나오면 연결된 거예요

메뉴 이름은 2026년 11월 11일에 VS Code 도움말에서 확인 · 앱 버전에 따라 화면이 조금 다를 수 있어요

Windsurf, Zed, Gemini CLI 같은 다른 MCP 앱은 추가 방법이 저마다 달라요. 앱 목록에서 확인하세요

MCP를 쓰는 앱 모두 보기 →

웹으로 연결하는 앱용 주소

주소https://mcp.commonlands.com/mcp

JSON 설정은 아래 “개발자용”에 있어요

막혔나요? Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator을 쓰는 사람에게 물어보세요💬 토론 →
개발자용: 터미널 명령과 JSON 설정

웹으로 연결

Claude Code

claude mcp add --transport http --scope user optics https://mcp.commonlands.com/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "optics": {
      "url": "https://mcp.commonlands.com/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "optics": {
      "type": "http",
      "url": "https://mcp.commonlands.com/mcp"
    }
  }
}

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

한눈에 보기

주간 다운로드i
npm/PyPI에 없음
확인된 도메인
✓ commonlands.com
라이선스i
Apache-2.0
연결 방식
클라우드에서 실행
전송 방식
streamable-http
최신 버전i
0.4.2
레지스트리 공개i
2026년 10월 20일
코드 마지막 변경i
2026년 11월 7일
제작자
CommonlandsAbbe
웹사이트
commonlands.com
레지스트리 상태
활성

어떤 앱에서 쓸 수 있나요

이 서버의 연결 방식과 각 앱의 공식 문서를 바탕으로 했어요. 2026년 11월 10일 확인.

인터넷으로 연결하는 앱

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

모든 앱과 장단점 →

할 수 있는 일

도구 이름과 설명은 서버가 2026년 11월 12일에 알려 준 그대로예요. 우리가 아니라 제작자가 쓴 글이고, 일반 텍스트로만 보여 드려요.

  • get_purchase_options

    Read current Shopify price, currency, online inventory and backorder policy for an exact full SKU and quantity. Base-price arithmetic is not a binding quote; unverified volume terms require an RFQ. Optionally read an existing owner-authorized checkout for shipping/tax estimates.

  • resolve_lens_product

    Resolve a lens family or exact full SKU to current published Shopify variants. A family requires explicit variant selection; no fixture specifications or inferred configuration. Use the optical part number with calculate_field_of_view for sensor-specific optics.

  • assess_lens_requirements

    Start with the sensor dimensions and a shortlisted optical part number. Check FoV ranges, image-circle coverage, nominal mount and axis-specific calculated distortion using the existing live FoV backend. Explicitly report unknown mass/dimensions without source units and missing e

  • calculate_field_of_view

    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

  • match_lens_to_sensor

    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

  • search_lens_catalog

    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 " request, use match_lens_to_sensor instead — sensor names are not searchable text here. Use this tool for

  • get_lens_distortion_profile

    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. I

  • get_sensor_specs

    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_

  • compare_lenses

    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-spe

  • get_catalog_snapshot_status

    Return fixture-backed joined catalog counts, validation status, source provenance, live connector readiness, and non-authoritative product-truth warning.

  • get_shopify_ucp_readiness

    Report connector-free Shopify Storefront MCP and UCP Catalog compatibility, launch blockers, and Commonlands engineering differentiators.

  • get_shopify_readonly_config_status

    Report sanitized Cloudflare Shopify binding presence, approved read scopes, and read-only safety flags without exposing secrets or calling Shopify.

  • read_shopify_products

    Use this for live purchasable product truth: product and variant IDs, full SKUs, prices, availability, product URLs, and public product-page metafields. Each variant includes websiteStockQuantity (tracked inventory count used by website stock labels), availableQuantity (online se

  • create_cart

    Create a Shopify-owned cart after buyer confirmation of live variants and quantities. Retain cart_access_token for get_cart/update_cart. For an agent-authorized purchase, use the returned agent_checkout route in the buyer's separate Shop MCP connection; Shop handles sign-in, appr

  • get_cart

    Retrieve a Shopify-owned cart with its cart_access_token from create_cart. Retain the full cart id, owner token, and continue_url. The agent_checkout field describes how the buyer's separate Shop MCP connection can convert this cart and complete an approved purchase; it does not

  • update_cart

    Replace the complete Shopify cart after buyer confirmation. Requires id and cart_access_token. Read the cart first, then send cart.line_items containing every item to retain with item.id (ProductVariant GID), quantity, and optional existing line id. Omitted lines are removed; []

  • cancel_cart

    Cancel a Shopify-owned cart using its id and cart_access_token. Requires meta["idempotency-key"] UUID for retry safety. This does not cancel an order or refund payment.

  • create_checkout

    Prepare a Shopify checkout after the buyer confirms exact live variants and quantities. Pass checkout.cart_id and its cart_access_token to convert a cart, or checkout.line_items. Retain checkout_access_token from the response. Send the buyer to continue_url for review and payment

  • get_checkout

    Read a Shopify checkout handoff summary using its id and checkout_access_token from create_checkout. Buyer and payment details are withheld. Send the buyer to continue_url to review and pay.

  • recommend_lenses_for_application

    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 HF

  • submit_rfq

    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

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 13일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 도메인 commonlands.com 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)

  • ✓ 통과

    계속 관리되고 있음

    코드 마지막 변경: 6일 전

  • ✓ 통과

    라이선스 있음

    Apache-2.0 사용

  • ✓ 통과

    엔드포인트 응답

    60ms 만에 응답(HTTP 200)

  • – 해당 없음

    OAuth로 로그인

    로그인 필요 없음

  • ✓ 통과

    도구 설명에 숨겨진 지시 없음

    도구 설명 21개를 읽었고, AI에게 보내는 숨겨진 지시는 없었어요

토론

질문하고, 팁을 나누고, 안 되는 점을 알려 주세요. "도움이 됨"이 많은 순서예요.

아직 글이 없어요. 처음으로 질문하거나 공유해 보세요.

이곳의 글은 사용자가 쓴 것으로, PopNx 팀의 글이 아니에요.

Google로 로그인하고 글쓰기

사용자 리뷰

아직 리뷰가 없어요

Google로 로그인하고 리뷰 쓰기

디자인, 이미지 및 오디오 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 2980개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 2980개 중 57%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 2980개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Commonlands Optics: M12 Lens and C-Mount Lens Finder + Field-of-View Calculator, 안전한가요?

해당하는 기본 점검 5개 중 5개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

제작자의 클라우드에서 실행돼요. 설치 없이 인터넷으로 연결하지만, 보내는 내용은 제작자의 서버를 거쳐요.

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 6일 전 변경됐고, 최신 버전(0.4.2)은 24일 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. URL로 연결되므로 원격 MCP를 받는 앱에서도 쓸 수 있어요. 예: 웹 ChatGPT(Business 이상은 전체 MCP, Pro는 읽기 전용).

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Figma Context MCP, AutoClip, Next AI Draw.io

같은 카테고리의 다른 것

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:↓ 주간 다운로드i★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Figma Context MCP

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

제작자: GLips널리 사용됨↓ 15.2만/주★ 1.6만5개월 전 업데이트

내 컴퓨터에서 실행

AutoClip

Clip long videos into short clips with covers and captions. Local CLI and MCP.

제작자: zhouxiaoka널리 사용됨↓ 205/주★ 1만16일 전 업데이트

내 컴퓨터에서 실행

Next AI Draw.io

draw.io diagrams your AI agent draws on a live browser canvas that you can also edit by hand

제작자: DayuanJiang널리 사용됨↓ 2.2만/주★ 3.7만 저장소 전체의 별6일 전 업데이트

내 컴퓨터에서 실행

제작자의 README

README 열기

제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.

Commonlands MCP

Public MCP server for Commonlands precision optics. Use it to choose M12/C-mount lenses, calculate field of view, verify live Shopify product truth, and hand buyers to Shopify-owned carts safely.

Connect

Copy-paste agent instruction

Connect to https://mcp.commonlands.com/mcp and discover its current tools.

Start with the image sensor: model, active area, resolution and pixel pitch. Establish the required horizontal field of view and working distance. Use match_lens_to_sensor to find candidates. Use calculate_field_of_view for final lens/sensor FoV and distortion; preserve its method and status. Resolve the chosen family with resolve_lens_product and select a full SKU. Use get_purchase_options for current price, stock and the requested quantity. Confirm variants, quantities and totals with the buyer before cart or RFQ actions.

Agent workflow

  1. Call tools/list and trust the live list over docs.
  2. For sensor-specific lens finding, call match_lens_to_sensor first, then call calculate_field_of_view for final candidate lens/sensor FoV claims.
  3. Use search_lens_catalog only for broad SKU/title/mount/lens-type discovery. It does not replace per-sensor FoV calculation.
  4. Get per-object grounding with resources/read for commonlands://sensors/{part} or commonlands://lenses/{sku} when needed.
  5. Use get_lens_distortion_profile for distortion/model/status questions. Do not invent polynomial coefficients or claim measured correction when the response says source-display-only.
  6. Use prompts/list / prompts/get with select_lens_for_sensor_fov_working_distance when a client surfaces MCP prompts.
  7. Verify purchasable truth with read_shopify_products before quoting final SKU, URL, price, availability, Shopify IDs, or cart payloads.
  8. Create/update a Shopify cart only after explicit buyer confirmation of line items and quantities.
  9. For an agent-authorized purchase, use the cart response agent_checkout route in the buyer's separate Shop MCP connection, before converting the cart through Commonlands. Shop handles sign-in and payment approval. Otherwise send the buyer to Shopify's returned checkout URL.

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. Agents must not interpolate interior-sensor FoV or substitute their own calculations. Use calculate_field_of_view, then preserve returned hfov_deg, vfov_deg, dfov_deg, method, distortion_model, coverage_ok, image_circle_mm, sensor_diagonal_mm, rectilinear_comparison, and provenance/source metadata in the answer.

Truth hierarchy

  1. read_shopify_products = live Shopify product truth.
  2. calculate_field_of_view / match_lens_to_sensor = live FoV backend (AWS Lambda + DynamoDB lens catalog) when configured. Sensor inputs resolve through the live DynamoDB sensor catalog with fixture fallback. These are the routed public optics tools.
  3. Compatibility aliases (compute_fov, compute_fov_catalog, match_lenses_to_sensor) still dispatch where practical, but new clients should route through the intent-named tools above.
  4. Ranking tools (match_lens_to_sensor, recommend_lenses_for_application, compare_lenses) rank against live FoV-backend specs and field of view when the live backend is enabled, so they use real per-SKU specs (EFL, mount, image circle, FoV). They still exclude live Shopify stock/price/variant IDs; use read_shopify_products for purchasable truth. In production, a missing or failed backend returns an explicit error.
  5. Production legacy product aliases use live Shopify resolution and are omitted from discovery. Fixture handoff tools are retired. Offline development fixtures remain labeled and cannot replace failed production reads. Sensor lookups retain their separately labeled reference fallback.

If fixture data conflicts with read_shopify_products or the live FoV/sensor backends, use the live truth.

Data sources
  • Sensors (commonlands://sensors/{part} and the sensor used by calculate_field_of_view / match_lens_to_sensor): read from the Commonlands DynamoDB sensor table by part number when configured, with fixture fallback. Pixel pitch and pixel counts come straight from that table; active-area mm is derived as pixels x pitch.
  • Lenses (commonlands://lenses/{sku}, calculate_field_of_view, match_lens_to_sensor, search_lens_catalog): the FoV Lambda reads lens optical parameters from its DynamoDB lens table when configured. Catalog-wide matching covers the full lens table when backend scanning is enabled.
  • Distortion coefficients are computed server-side inside the Lambda and are never returned to clients. If the live backend only returns a display distortion string, MCP returns an honest distortion_model / distortion_status and does not claim measured polynomial correction.

Current live surface

The production tool list depends on enabled features. This branch adds live product resolution and quantity purchase options and removes fixture aliases from discovery. It retains create_cart, get_cart, update_cart, cancel_cart, create_checkout, and get_checkout. Commerce uses Shopify UCP at https://commonlands.com/api/ucp/mcp. complete_checkout is disabled on Commonlands. Cart responses include an agent_checkout route to the buyer's separate Shop MCP connection, where authorized agents can complete eligible purchases. Customers can also review and pay on Shopify. Always trust live tools/list. See cart and checkout integration.

Key tools:

  • Public optics routing: calculate_field_of_view, match_lens_to_sensor, search_lens_catalog, get_lens_distortion_profile.
  • Optical comparison: compare_lenses, recommend_lenses_for_application. Current product selection: resolve_lens_product, get_purchase_options.
  • Legacy hidden aliases (still dispatch for old clients, not listed in tools/list): compute_fov, compute_fov_catalog, match_lenses_to_sensor, search_lenses, get_lens_details.
  • Resources/prompts: commonlands://sensors/{part}, commonlands://lenses/{sku}, commonlands://catalog/sensors, commonlands://catalog/lenses, and prompt select_lens_for_sensor_fov_working_distance.
  • Live Shopify read-only truth: read_shopify_products, get_shopify_readonly_config_status.
  • Buyer-confirmed Shopify cart handoff: create_cart, get_cart, update_cart, cancel_cart, followed by create_checkout and get_checkout when visible in tools/list.
  • RFQ / question handoff: submit_rfq forwards a buyer quote request or question to the fixed Commonlands engineering inbox (SendGrid). The agent cannot choose the recipient; it sends an inquiry only (no order, payment, or Shopify write) and stays inert (routes to the contact page) until SENDGRID_API_KEY + RFQ_TO_EMAIL + RFQ_FROM_EMAIL are configured.
  • Diagnostics/readiness: get_catalog_snapshot_status, get_shopify_ucp_readiness. Legacy fixture purchase handoffs are retired in production.

Public-data scope (Shopify reads)

The endpoint is public and unauthenticated, so read_shopify_products returns only data that is already public on commonlands.com (enforced server-side in src/shopify-read-adapter.ts, see PUBLIC_DATA_POLICY):

  • Published active products only. Products must be ACTIVE and have a Shopify-provided Online Store URL on commonlands.com. An ACTIVE product with no publication is filtered out; the adapter never invents its URL.
  • Current per-variant inventory. Shopify supplies website and online sellable quantities on each request. Untracked or missing quantities are null. The old availability category remains for compatibility; inventory item/location IDs remain private. Counts do not reserve inventory or guarantee fulfillment.
  • Metafields are opt-in and allowlisted. includeMetafields defaults to false; when enabled, only the custom.* display fields rendered on public product pages are returned. App/private namespaces and non-allowlisted keys (including custom.docsend_page) are always dropped.
  • `read_shopify_metaobjects` was removed from the public surface (2026-07): Admin metaobject definitions can hold non-public store content. Calls return an actionable error pointing to read_shopify_products.
  • The requested Admin scopes were narrowed to the read scopes the surface actually needs (no metaobject, marketing, payment-terms, or shipping scopes).

Abuse controls (cart and endpoint)

Cart tools are deliberately reachable without authentication — the same trust model as Shopify's own public Storefront cart — but they are bounded:

  • Per-IP rate limits (Workers Rate Limiting API, wrangler.toml): 120 requests/min per IP across /mcp, and 10 cart mutations/min per IP for cart mutations, checkout creation, and RFQ submissions. Exceeding either returns HTTP 429 with retry-after: 60.
  • Strict payloads: 1–25 line items per cart, quantity 1–999 per line, and item IDs must be live Shopify ProductVariant GIDs — fixture IDs, SKUs, and numeric IDs are rejected before any Shopify call.
  • Carts are Shopify-owned and expire. The Worker is a stateless proxy; cart state, TTL, and expiry (expiryAuthority: shopify_cart_ttl_expires_at) belong to Shopify, which prunes abandoned carts automatically. No cart, session, customer, or payment state is ever stored in the Worker.
  • Checkout handoff: the agent prepares a checkout and returns Shopify’s continue_url. Cart conversion requires the cart owner token; checkout reads require a separate checkout owner token. The Commonlands server cannot complete payment or place an order. For buyer-authorized agent purchases, cart responses provide the exact handoff to Shop MCP; the buyer's client sends its credentials and approved payment directly to Shop.

Safety boundaries

  • Do not use fixture prices, availability, product URLs, SKU variants, or IDs as final commerce truth.
  • Do not create or update carts unless the buyer has confirmed live Variant GIDs and quantities.
  • Call create_checkout after buyer confirmation, preserve checkout_access_token, and return checkout.continue_url. The buyer reviews and pays on Shopify.
  • Do not ask for or transmit card numbers, CVV/CVC, payment tokens, passwords, or customer account credentials through Commonlands. In the separate Shop connection, the buyer client sends only Shop-offered payment instruments back to Shop after buyer approval.
  • Do not perform Shopify product, variant, collection, tag, metafield, inventory, order, customer, discount, RFQ, Acumatica, or database writes.
  • Do not expose gated datasheet URLs or backend secrets.
  • For live FoV, call Commonlands MCP only. Do not call the AWS Lambda/API Gateway backend directly.

Good prompts

  • Find M12 lenses for IMX477 around 50° horizontal FoV. Use match_lens_to_sensor, calculate_field_of_view, then verify the final purchasable SKU with read_shopify_products.
  • Compare CIL078 and CIL250 on IMX477. Preserve rectilinear_comparison and label fixture-backed context separately from live Shopify truth.
  • Find the live Shopify Product and Variant GID for CIL250. Return URL, SKU, price, inventory signal, and cart path, but do not create a cart.
  • Create a Shopify cart for two units of this live Variant GID: . The buyer has confirmed quantity 2.
  • `List

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요