Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@atlisp/mcp

Package Overview
Dependencies
Maintainers
1
Versions
72
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@atlisp/mcp

MCP Server for @lisp on CAD,support AutoCAD/GstarCAD/ZWCAD/BricsCAD or CAD platform compatible with AutoLISP

latest
npmnpm
Version
1.8.11
Version published
Weekly downloads
844
-77.61%
Maintainers
1
Weekly downloads
 
Created
Source

@lisp MCP Server

MCP (Model Context Protocol) Server for @lisp on CAD — 为 CAD 环境提供 @lisp 包管理服务的 MCP 服务器,同时为 AI Agent 操控 CAD 提供 220+ 个调用工具和通道。

支持 AutoCAD / ZWCAD / GStarCAD / BricsCAD,通过 COM 互操作与 CAD 通信。

目录

  • 功能特性
  • 快速安装
  • 配置 AI Agent
  • 启动服务
  • 连接 CAD
  • 工具列表
  • MCP 资源
  • MCP Prompts
  • HTTP API 端点
  • 环境变量
  • 命令行参数
  • 配置文件
  • 工作原理
  • Docker
  • 开发指南
  • 故障排除
  • 许可证

功能特性

  • 连接多平台 CAD — AutoCAD / ZWCAD / GStarCAD / BricsCAD
  • 执行 AutoLISP — 执行 LISP 代码并获取结果
  • AI Agent 控制 CAD — 220+ MCP 工具,涵盖绘图、编辑、查询、管理
  • 包管理 — 列出、搜索、安装 @lisp 包
  • 批量操作 — 批量复制/移动/旋转/缩放/镜像/偏移/改名/改色/改图层
  • 3D 建模 — 创建 Box/Sphere/Cylinder/Cone/Torus/Wedge,布尔运算,拉伸/旋转
  • 图纸集管理 — 创建/发布/归档/比较/打包图纸集
  • 动态块 — 获取/设置参数、可见性状态
  • 几何约束与标注约束 — 添加/删除/列出约束
  • 外部参照 — 附着/拆离/绑定/裁剪/路径管理/批量相对化
  • PDF/DGN/DWF 底图 — 附着/拆离/重载/批量附着
  • 扩展数据 (Xdata) — 读写/复制/搜索/导入/导出
  • 管道 (Pipeline) — 编排多步工具调用链
  • 触发器 (Watch) — 注册 CAD 变更触发器,等待条件满足
  • Webhook — 事件驱动回调(工具执行/包安装/CAD 连接等)
  • REPL — 交互式 Lisp 执行会话
  • 流式读取 — 分页流式读取实体/文字/块参照
  • 外部数据 — 查询/导入/导出 CSV/JSON 数据源
  • 审计日志 — 查询和统计工具调用历史
  • CAD 连接池 — 发现/切换/健康检查多 CAD 实例
  • 沙箱 — 验证 LISP 代码安全性
  • 资源订阅 — 实时推送 CAD/DWG/包变更
  • LLM Sampling — 通过配置的 LLM 提供采样能力
  • Prometheus 指标 — 导出 /metrics 端点
  • SSL/TLS — 支持 HTTPS 加密通信
  • API Key 认证与速率限制
  • 配置热重载 — 配置文件变更自动加载
  • 多种传输模式 — HTTP / SSE / stdio / WebSocket

快速安装

Windows (PowerShell)

iwr -useb https://atlisp.cn/install.ps1 | iex

安装脚本会自动:

  • 安装 Node.js(如未安装,支持 winget/choco/scoop/MSI)
  • 全局安装 @atlisp/mcp
  • 注册命令 atlisp-mcp

手动安装 (npm)

npm install -g @atlisp/mcp

验证安装

atlisp-mcp --version

配置 AI Agent

WorkBuddy

~/.workbuddy/.mcp.json 中添加:

{
  "mcpServers": {
    "atlisp-mcp": {
      "url": "http://localhost:8110/mcp"
    }
  }
}

Claude Desktop

~/AppData/Roaming/Claude/claude_desktop_config.json 中添加:

{
  "mcpServers": {
    "atlisp-mcp": {
      "command": "atlisp-mcp",
      "env": {
        "TRANSPORT": "stdio"
      }
    }
  }
}

Cline / Cursor / Windsurf

{
  "mcpServers": {
    "atlisp-mcp": {
      "command": "atlisp-mcp",
      "args": [],
      "env": {
        "TRANSPORT": "stdio"
      }
    }
  }
}

opencode / Goose / 其他支持 stdio 的 Agent

{
  "mcpServers": {
    "atlisp-mcp": {
      "command": "atlisp-mcp",
      "env": {
        "TRANSPORT": "stdio"
      }
    }
  }
}

启动服务

HTTP 模式(默认,端口 8110)

atlisp-mcp

输出:

@lisp MCP Server 启动 - http://0.0.0.0:8110 - Streamable HTTP

stdio 模式

TRANSPORT=stdio atlisp-mcp

WebSocket 模式

TRANSPORT=ws atlisp-mcp
# 或
atlisp-mcp --ws

指定端口/主机

atlisp-mcp --port 9000 --host 127.0.0.1

健康检查

curl http://localhost:8110/health

返回 {"status":"ok","cad":"connected"} 表示服务正常。

查看指标

curl http://localhost:8110/metrics

调试面板

打开浏览器访问 http://localhost:8110/debug

工具游乐场

打开浏览器访问 http://localhost:8110/playground

连接 CAD

前置条件

  • Windows 系统
  • CAD 软件已安装
  • CAD 已启动或允许自动启动

使用 MCP 工具连接

{
  "name": "connect_cad",
  "arguments": {}
}

或指定平台:

{
  "name": "connect_cad",
  "arguments": {
    "platform": "AutoCAD"
  }
}

自动行为:

  • 如果 CAD 已运行,连接现有实例
  • 如果 CAD 未运行,通过 COM 自动创建新实例

连接成功返回类似: 已连接到 AutoCAD 2025

工具列表 (220+)

系统与 CAD 连接 (11)

工具说明参数
connect_cad连接 CADplatform (可选)
eval_lisp执行 LISP 代码(无返回值)code (必填)
eval_lisp_with_result执行 LISP 并返回结果code (必填), encoding (可选)
get_cad_info获取 CAD 信息
get_platform_info获取平台信息
at_command执行 @lisp 命令command (必填)
new_document新建空白文档
bring_to_front切换 CAD 到前台
install_atlisp安装 @lisp
init_atlisp初始化 @lisp 环境
get_system_status获取系统诊断信息

LISP 执行

工具说明
eval_lisp执行 LISP 代码,不返回结果
eval_lisp_with_result执行 LISP 代码并返回结果,支持 encoding: utf-8/gbk/gb2312/gb18030
lisp_replREPL 会话执行,自动追踪变量和历史
lisp_repl_history获取 REPL 会话历史
lisp_repl_list列出活跃 REPL 会话
lisp_repl_close关闭 REPL 会话

包管理 (3)

工具说明参数
list_packages列出已安装包
search_packages搜索包query (必填)
install_package安装包到 CADpackageName (必填)

信息与函数 (5)

工具说明
get_function_usage获取 @lisp 函数用法
list_symbols列出所有符号(函数/变量)
import_funlib导入函数库数据到 AI Agent
list_prompts列出提示模板
get_prompt获取指定提示模板

实体操作 (4)

工具说明
get_entity获取实体属性(句柄/类型/图层/颜色等)
set_entity设置实体属性(layer/color/linetype/elevation)
delete_entity删除实体
select_entities按条件选择实体(type/layer 过滤)
get_entity_info获取实体详细信息

图层操作 (4)

工具说明
create_layer创建图层
delete_layer删除图层
set_layer设置图层属性(color/linetype/freeze/thaw/lock/unlock)
set_current_layer设置当前图层

块操作 (6)

工具说明
create_block创建块定义
insert_block插入块参照
get_blocks获取所有块定义
explode_block炸开块参照
batch_get_block_attributes批量获取块属性
batch_set_block_attributes批量设置块属性

动态块与参数化 (6)

工具说明
get_dynamic_block_properties获取动态块所有属性
set_dynamic_block_property设置动态块属性值
get_block_parameters获取块参数值
set_block_parameter设置块参数值
list_visibility_states列出可见性状态
set_visibility_state切换可见性状态

文件/DWG 操作 (5)

工具说明
open_dwg打开 DWG 文件
save_dwg保存图形
export_pdf导出 PDF
export_dxf导出 DXF
export_dwf导出 DWF
close_dwg关闭图形
import_dxf导入 DXF 文件
import_dgn导入 DGN 文件
export_dgn导出 DGN 文件

标注与填充 (7)

工具说明
create_dimension创建标注(ALIGNED/LINEAR/ORDINATE/RADIAL/DIAMETER/ANGULAR)
get_dimension获取标注值
create_hatch创建图案填充
set_hatch设置填充属性
get_block_attributes获取块属性值
set_block_attribute设置块属性值
dimension_style创建和管理标注样式

样式管理 (11)

工具说明
create_dimension_style创建标注样式
set_dimstyle_var设置标注样式变量
list_dimension_styles列出所有标注样式
create_text_style创建文字样式
list_text_styles列出所有文字样式
create_linetype创建线型
load_linetype加载线型文件
list_linetypes列出所有线型
create_mleader_style创建多重引线样式
set_mleader_style_prop设置多重引线样式属性
list_mleader_styles列出多重引线样式

视图与缩放 (5)

工具说明
zoom_extents缩放到图形范围
zoom_window缩放到窗口
create_named_view创建命名视图
restore_named_view恢复命名视图
list_named_views列出所有命名视图

UCS 与布局 (11)

工具说明
create_ucs创建 UCS
set_ucs切换到 UCS
list_ucs列出所有 UCS
delete_ucs删除 UCS
get_current_ucs获取当前 UCS 名称
create_layout创建布局
set_layout切换布局
list_layouts列出所有布局
delete_layout删除布局
get_current_layout获取当前布局
rename_layout重命名布局

查询与测量 (5)

工具说明
measure_distance测量两点距离
measure_area测量多边形面积
get_3d_solid_info获取 3D 实体信息
list_groups列出所有组
get_group_entities获取组内实体

组操作 (4)

工具说明
create_group创建组
delete_group删除组
list_groups列出所有组
get_group_entities获取组内实体句柄

批量操作 (14)

工具说明
batch_copy批量复制实体到指定偏移
batch_move批量移动到指定图层
batch_delete批量删除实体
batch_rename批量重命名实体
batch_set_color批量设置颜色
batch_set_layer批量设置图层
batch_set_linetype批量设置线型
batch_explode批量炸开
batch_mirror批量镜像
batch_offset批量偏移
batch_rotate批量旋转
batch_scale批量缩放
batch_match_properties批量匹配属性(格式刷)
batch_create_group批量创建组
batch_add_to_group批量添加到组

3D 建模 (20)

工具说明
create_box创建立方体
create_sphere创建球体
create_cylinder创建圆柱体
create_cone创建圆锥体
create_torus创建圆环体
create_wedge创建楔体
create_3d_face创建 3D 面
create_3d_polyline创建 3D 多段线
create_mesh创建网格
extrude_solid拉伸成实体
revolve_solid旋转成实体
create_region创建面域
boolean_union并集
boolean_subtract差集
boolean_intersect交集
slice_solid剖切实体
create_loft_surface创建放样曲面
thicken_surface曲面加厚
offset_surface曲面偏移
convert_to_cloud_line转为修订云线
create_cloud_line创建修订云线

约束 (4)

工具说明
add_geom_constraint添加几何约束(平行/垂直/相切/共线/同心/固定/对称/相等等)
add_dim_constraint添加标注约束(水平/垂直/对齐/半径/直径/角度)
del_constraint删除实体上所有约束
list_constraints列出所有约束

扩展数据 Xdata (9)

工具说明
get_xdata获取实体扩展数据
set_xdata设置实体扩展数据
delete_xdata删除扩展数据
list_xdata_apps列出所有注册的扩展数据应用名
get_all_entity_xdata获取所有扩展数据
copy_xdata复制扩展数据到另一实体
search_by_xdata按扩展数据搜索实体
export_xdata_to_file导出扩展数据到 JSON
import_xdata_from_file从 JSON 导入扩展数据

PDF/底图 (14)

工具说明
attach_pdf附着 PDF 底图
detach_pdf拆离 PDF 底图
reload_pdf重载 PDF 底图
list_attached_pdfs列出已附着的 PDF
get_pdf_info获取 PDF 底图信息
batch_attach_pdfs批量附着 PDF
create_dgn_underlay附着 DGN 底图
create_dwf_underlay附着 DWF 底图
create_hyperlink创建超链接
remove_hyperlink删除超链接

外部参照 Xref (14)

工具说明
attach_xref附着外部参照
detach_xref拆离外部参照
reload_xref重载外部参照
unload_xref卸载外部参照
list_xrefs列出所有外部参照
bind_xref绑定外部参照
clip_xref裁剪外部参照
path_xref修改外部参照路径
xref_notifications配置/查询外部参照变更通知
xref_compare比较外部参照
xref_convert_to_block外部参照转为块
xref_demote嵌套参照降级
xref_path_relative批量转换路径为相对路径

图纸集 (18)

工具说明
create_sheet_set创建图纸集
open_sheet_set打开图纸集文件
list_sheet_sets列出所有图纸集
add_sheet添加图纸
list_sheets列出图纸
delete_sheet删除图纸
reorder_sheet重新排序图纸
create_subset创建子集
list_subsets列出子集
set_sheet_property设置图纸属性
get_sheet_set_property获取图纸集属性
publish_sheet_set发布图纸集
create_sheet_set_archive归档图纸集
sheet_set_publish_options发布选项配置
sheet_set_transmiteTransmit 打包
sheet_set_compare比较图纸集
sheet_list_views列出图纸视图
sheet_import_layouts从 DWG 导入布局

打印 (8)

工具说明
plot_to_pdf打印到 PDF
plot_to_printer打印到打印机
save_pdf_layout布局另存为 PDF
publish_layouts批量发布布局到 PDF
batch_plot_wizard批量打印向导
plot_device_management打印设备管理
plot_log查询打印历史
plot_from_file_list从文件列表批量打印

管道 Pipeline (5)

工具说明
pipeline_execute执行管道链(多步工具顺序执行)
pipeline_save保存管道定义
pipeline_list列出已保存管道
pipeline_run运行已保存管道
pipeline_delete删除管道

触发器 Watch (5)

工具说明
watch_register注册 CAD 变更触发器
watch_remove移除触发器
watch_list列出所有触发器
watch_wait等待触发器触发
watch_create_and_wait注册并等待(合并操作)

Webhook (4)

工具说明
webhook_register注册 webhook
webhook_list列出所有 webhook
webhook_remove移除 webhook
webhook_log获取 webhook 日志

流式读取 (4)

工具说明
stream_entities分页流式读取实体数据
stream_text分页流式读取文字内容
stream_block_refs分页流式读取块参照
combine_text碎片文本按位置组合为完整段落

外部数据 (4)

工具说明
external_db_query查询外部数据源 (CSV/JSON)
import_external_data从外部数据源导入实体到 CAD
export_to_external导出 CAD 实体到外部文件
list_data_sources列出可用数据源

沙箱 (3)

工具说明
sandbox_validate验证 Lisp 代码安全规则
sandbox_allowlist_add添加规则到会话白名单
sandbox_allowlist_clear清除会话白名单

审计日志 (2)

工具说明
audit_log_query查询审计日志(支持分页和筛选)
audit_log_stats获取审计日志统计

CAD 连接池 (4)

工具说明
cad_pool_discover发现所有 CAD 实例
cad_pool_switch切换活动 CAD 实例
cad_pool_health检查所有实例健康状态
cad_pool_stats获取连接池统计

MCP 资源

静态资源 (13)

URI名称说明可订阅
atlisp://cad/infoCAD InfoCAD 连接信息
atlisp://dwg/entitiesEntities实体列表/统计
atlisp://dwg/text-contentText Content文字内容与位置
atlisp://dwg/text-combinedCombined Text合并后的段落文本
atlisp://dwg/nameDWG Name当前文件名
atlisp://dwg/pathDWG Path文件完整路径
atlisp://dwg/block-refsBlock References块参照与属性
atlisp://dwg/tblTablesCAD 表数据
atlisp://cad/dwgsDWG List所有打开的 DWG
atlisp://packagesPackages已安装包列表
atlisp://platformsPlatforms支持的平台
atlisp://standards/draftingDraftingCAD 制图规范
atlisp://standards/codingCoding@lisp 编码规范

资源模板

URI 模板说明
atlisp://dwg/entity/{handle}按句柄查实体详情
atlisp://dwg/entities?type={type}&layer={layer}&bbox={bbox}过滤实体
atlisp://dwg/block-refs/{blockName}按块名过滤块参照
atlisp://dwg/tbl/{table}查询表(layer/block/textstyle/dimstyle/linetype/ucs/view/viewport/regapp/plotstyle)
atlisp://dwg/text-content?bbox={bbox}&layer={layer}&offset={offset}&limit={limit}分页文字
atlisp://packages?search={query}搜索包

MCP 根目录 (Roots)

URI说明
file://~/.atlisp@lisp 工作目录
file://~/.atlisp/projects项目目录

MCP Prompts (16)

Prompt功能参数
excel-reportExcel 报表导出visible, savePath
geometry-calc几何计算action, points
generate-dimension生成尺寸标注style
analyze-drawing分析当前图纸统计
coding-conventionsAutoLISP 编码规范
string-process字符串处理action, input
json-exchangeJSON 数据交换action, data
color-convert颜色转换action, value
pickset-filter选择集操作action, dxfType, layerName
text-process文本处理action, markdown
curve-analysis曲线分析action, distance
manage-blocks块操作action, blockName
manage-layers图层管理action, layers
export-entities导出实体统计format
batch-draw-lines批量画线段count, length
draw-residential农村民居平面图width, depth, rooms
draw-floor-plan建筑楼层平面图floor, scale

HTTP API 端点

方法路径说明
GET/health健康检查
GET/metricsPrometheus 指标
POST/mcpMCP JSON-RPC
GET/mcpMCP 信息
GET/sseSSE 长连接端点
POST/messageSSE 消息发送
WS/wsWebSocket 端点
POST/config/reload热重载配置
GET/rate-limit/status速率限制状态
POST/rate-limit/reset重置速率限制
GET/api/docsAPI 文档页面
GET/debug调试面板
GET/playground工具游乐场

环境变量

变量默认值说明
PORT8110HTTP 端口
HOST0.0.0.0HTTP 监听地址
TRANSPORThttp传输模式: http/stdio/ws
MCP_API_KEYAPI Key 认证
ENABLE_SSEtrue启用 SSE
MESSAGE_TIMEOUT60000消息超时 (ms)
HEARTBEAT_INTERVAL30000心跳间隔 (ms)
BUSY_RETRIES10CAD 忙重试次数
BUSY_DELAY500重试延迟 (ms)
ENABLE_CORStrue启用 CORS
CORS_ORIGIN*CORS 源
RATE_LIMIT_WINDOW60000速率限制窗口 (ms)
RATE_LIMIT_MAX100窗口内最大请求数
RESOURCE_CACHE_TTL5000资源缓存 TTL (ms)
FUNCTION_LIB_CACHE_TTL300000函数库缓存 TTL (ms)
DEBUGfalse调试模式
DEBUG_FILE调试日志文件路径
FUNCTION_LIB_URLhttp://s3.atlisp.cn/json/functions.json函数库 URL
CONFIG_FILE~/.atlisp/atlisp.config.json配置文件路径
METRICS_ENABLEDtrue启用 /metrics 端点
REQUEST_LOG_ENABLEDtrue启用请求日志
SSL_KEY_PATHSSL 私钥文件
SSL_CERT_PATHSSL 证书文件
LLM_API_KEYLLM API Key (sampling)
LLM_API_URLhttps://api.openai.com/v1/chat/completionsLLM API URL
LLM_MODELgpt-4o-miniLLM 模型
LLM_MAX_TOKENS4096LLM 最大 tokens
LLM_TEMPERATURE0.7LLM 温度
API_KEY_RATE_LIMIT1000API Key 速率限制

命令行参数

参数说明
--port <number>HTTP 端口
--host <address>HTTP 主机地址
--transport <mode>传输模式 (http/stdio/ws)
--stdio等价于 --transport stdio
--ws等价于 --transport ws
--config <path>配置文件路径
--ssl-key <path>SSL 私钥文件
--ssl-cert <path>SSL 证书文件

配置文件

配置文件位于 ~/.atlisp/atlisp.config.json,支持以下字段:

{
  "port": 8110,
  "host": "0.0.0.0",
  "transport": "http",
  "apiKey": "your-api-key",
  "enableSse": true,
  "messageTimeout": 60000,
  "heartbeatInterval": 30000,
  "enableCors": true,
  "corsOrigin": "*",
  "rateLimitWindow": 60000,
  "rateLimitMax": 100,
  "debug": false,
  "metricsEnabled": true,
  "requestLogEnabled": true,
  "maxPoolSize": 3,
  "apiKeys": [
    { "key": "key1", "limit": 100, "name": "user1", "role": "admin" }
  ],
  "sslKey": "/path/to/key.pem",
  "sslCert": "/path/to/cert.pem",
  "llmApiKey": "sk-xxx",
  "llmApiUrl": "https://api.openai.com/v1/chat/completions",
  "llmModel": "gpt-4o-mini",
  "llmMaxTokens": 4096,
  "llmTemperature": 0.7
}

配置变更会自动热重载。

架构与开发

架构图、项目结构、开发指南请参见 DEV.md

故障排除

问题解决方案
连接失败确保 CAD 已启动并启用 COM 接口
工具调用超时CAD 可能繁忙,稍后重试;增大 MESSAGE_TIMEOUT
中文乱码使用 encoding: gbk 参数或用 vl-prin1-to-string 处理
括号错误MCP Server 会自动检查并提示
CAD 未自动启动检查 COM 权限,以管理员身份运行
端口被占用使用 --port 指定其他端口
全局命令找不到检查 npm 全局安装路径是否在 PATH 中

许可证

ISC

Keywords

mcp

FAQs

Package last updated on 01 Jun 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts