Cadlens Mcp

io.github.cadlens-coPublished by GitHub account cadlens-cov0.6.0Updated Oct 25, 2026

Model Context Protocol server that wraps the CADLens REST API.

VerifiedSTDIODesktop onlyFiles & StorageDeveloper Tools

Overview

AI-generated overview

Local MCP server that wraps the Cadlens CAD parsing API, letting an assistant upload CAD drawings and reason over extracted entities, layers and metadata.

What you can do
Parse CAD files: upload a local drawing or fetch one from a URL and poll until parsing completes, with a status check tool for jobs in progress or failed. Retrieve results: fetch parsed content as a summary, entities grouped by type, entities on a specific layer, or the full payload. Manage images: refresh the time-limited presigned PNG preview URL without re-downloading the full result. Manage jobs: list the 100 most recent jobs for the API key and delete a job together with its stored artifacts.
When to use it
Useful when an assistant needs to read DWG, DXF, DWF, DWFX, DGN V7 or PDF drawings without AutoCAD or other desktop software, for example to summarize a drawing, inspect a layer, or answer questions about entities and metadata.
Requirements
Runs locally via npx from the npm package, so Node.js is needed. A Cadlens API key is required in the CADLENS_API_KEY environment variable, created in the Cadlens dashboard. Optional settings: CADLENS_API_BASE, WEBHOOK_PORT, WEBHOOK_PUBLIC_URL and REQUEST_TIMEOUT_MS. Network access to the Cadlens API is required; files are limited to 100 MB.
Before you install
The API key in CADLENS_API_KEY is a secret and should not be shared. Uploaded CAD files and files fetched from URLs are sent to the Cadlens cloud service for parsing, so avoid confidential drawings unless that is acceptable. Deleting a job is irreversible and also removes its stored artifacts. Setting WEBHOOK_PUBLIC_URL exposes a local receiver through a public tunnel.

Installation

In SourceWeft

  1. Open Cadlens Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

cadlens-mcp

[npm version] [GitHub]

A Model Context Protocol server that wraps the Cadlens CAD parsing API so MCP-aware LLM clients (Claude Desktop, Claude Code, Cursor, Zed, Windsurf) can parse CAD files (.dwg, .dxf, .dwf, .dwfx, .dgn V7, .pdf, max 100 MB) and reason over the extracted entity, layer, and metadata payloads.

Cadlens converts CAD drawings into structured JSON without requiring AutoCAD or any desktop software — learn more at cadlens.co.

Install

Get an API key from the Cadlens dashboard first — keys start with cadl_ and are created in the dashboard for free.

Claude Desktop / Cursor / Windsurf

Add to your MCP client config (e.g. ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

json
{  "mcpServers": {    "cadlens": {      "command": "npx",      "args": ["-y", "@cadlens/mcp-server"],      "env": {        "CADLENS_API_KEY": "cadl_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"      }    }  }}

Claude Code CLI

bash
claude mcp add cadlens \  --env CADLENS_API_KEY=cadl_xxx \  -- npx -y @cadlens/mcp-server

Development (build from source)

bash
npm installnpm run build
export CADLENS_API_KEY="cadl_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"node dist/index.js

Tools

ToolWhat it does
cadlens_parse_fileUpload a local CAD file, poll until parsed (5 min budget), return summary.
cadlens_parse_urlDownload a CAD file from a URL, then parse it like parse_file.
cadlens_get_jobCheap status check (PENDING / PROCESSING / COMPLETED / FAILED).
cadlens_get_resultFetch parsed content. mode: summary (default), entities_by_type, entities_on_layer, full.
cadlens_refresh_image_urlRe-fetch the 1h presigned PNG URL without re-downloading the full result.
cadlens_list_jobsThe 100 most recent jobs for the configured API key.
cadlens_delete_jobDelete a job and its S3 artifacts. Irreversible.

Configuration

Env varRequiredDefaultNotes
CADLENS_API_KEYyes—Created in the CADLens dashboard.
CADLENS_API_BASEnohttps://api.cadlens.co/v1Set to http://localhost:3001/v1 for local dev.
WEBHOOK_PORTno0 (random)Port for the in-process webhook receiver.
WEBHOOK_PUBLIC_URLnounsetSet to a tunnel URL (ngrok/cloudflared) to let CADLens hit the local receiver. When set, parse calls auto-register the webhook and the poller short-circuits on receipt.
REQUEST_TIMEOUT_MSno30000Per-HTTP-request timeout for CADLens calls.

Webhook short-circuit (optional)

If WEBHOOK_PUBLIC_URL is set, parse_file / parse_url register a per-process webhook URL alongside the upload. The webhook handler updates an in-memory job-state cache; the poller checks that cache before each HTTP GET and returns early when COMPLETED / FAILED arrives. This trims worst-case latency by up to one full poll tick (~1 s) without changing the tool surface.

Example tunnel setup:

bash
cloudflared tunnel --url http://localhost:8787 &export WEBHOOK_PORT=8787export WEBHOOK_PUBLIC_URL="https://<your-tunnel>.trycloudflare.com"

Development

bash
npm run typechecknpm run lintnpm testnpm run smoke   # tools/list smoke test against built binary

Project-scoped Claude agents

This repo ships five agents under .claude/agents/:

  • cadlens-api-debugger — diagnoses unexplained CADLens 4xx/5xx using mcp-server-reference.md.
  • mcp-tool-tester — drives JSON-RPC against the built server to validate tool responses.
  • mcp-tool-implementer — scaffolds new tools following the existing src/tools/* pattern.
  • cad-drawing-summarizer — uses the MCP tools to summarize a CAD file in natural language.
  • cad-layer-inspector — drills into a single layer of a parsed drawing.

Links


GitHub Topics

Add these topics to this repo for discovery: mcp mcp-server model-context-protocol ai-agents claude cad dwg dxf cad-api llm-tools engineering-api


License

MIT

Source: README.md at commit 0bb71e1

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.6.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts