适用于macOS的LTspice MCP
模型上下文协议(MCP)服务器,允许代理和MCP客户端在macOS上控制LTspice,用于模拟、原理图生成、数据提取、验证和渲染。
该项目旨在实现实用的自动化:可靠的运行、可复制的工件和与LTspice行为紧密匹配的输出。
灵感来源:
你能做什么
- 从MCP运行LTspice模拟(
simulateNetlistFile,runSimulation,队列工具)。 - 生成并优化示意图(
createSchematic*,lint/clean/debug工具)。 - 为原理图、绘图和符号渲染真实的LTspice图像。
- 查询RAW向量和分析指标(带宽、边距、上升/下降、稳定)。
- 自动化
.meas以及断言驱动的验证工作流程。 - 使用结构化结果进行逐步和蒙特卡洛研究。
快速入门(5分钟)
1) 先决条件
- 安装了LTspice的macOS(
/Applications/LTspice.app默认情况下是预期的)。 - Python 3.11以上。
uv(推荐)或pip.
2) 安装
uv sync如果你喜欢pip:
python3 -m venv .venv
source .venv/bin/activate
pip install -e .3) 启动MCP守护进程
./scripts/ltspice_mcp_daemon.sh start
./scripts/ltspice_mcp_daemon.sh status默认端点:
http://127.0.0.1:8765/mcp
4) 授予macOS权限一次
需要截图/渲染和一些UI自动化功能。
./scripts/ltspice_mcp_daemon.sh trigger-initial-permissions
./scripts/ltspice_mcp_daemon.sh check-accessibility5) 运行烟雾测试
uv run python smoke_test_mcp.py \
--transport streamable-http \
--server-url http://127.0.0.1:8765/mcp客户端配置
支持URL的MCP客户端
[mcp_servers.ltspice]
url = "http://127.0.0.1:8765/mcp"
enabled = true克劳德桌面通过 mcp-remote
{
"mcpServers": {
"ltspice-mcp": {
"command": "/opt/homebrew/bin/npx",
"args": ["-y", "mcp-remote", "http://127.0.0.1:8765/mcp"]
}
}
}stdio (子流程)模式
{
"mcpServers": {
"ltspice-mcp": {
"command": "ltspice-mcp",
"args": ["--transport", "stdio"],
"cwd": "/absolute/path/to/ltspice-mcp"
}
}
}按类别划分的核心能力
设置和诊断
getLtspiceStatus,getLtspiceUiStatusdaemonDoctor,tailDaemonLog,getRecentErrors,getCaptureHealth
模拟和排队
simulateNetlist,simulateNetlistFile,runSimulationqueueSimulationJob,listJobs,jobStatus,cancelJob,listJobHistory
示意图工作流程
createSchematic,createSchematicFromNetlist,createSchematicFromTemplatevalidateSchematic,lintSchematic,autoDebugSchematicinspectSchematicVisualQuality,autoCleanSchematicLayout
数据、测量和验证
getPlotNames,getVectorsInfo,getVectorData,getLocalExtremagetBandwidth,getGainPhaseMargin,getRiseFallTime,getSettlingTimeparseMeasResults,runMeasAutomation,runVerificationPlan,runSweepStudy
原生LTspice渲染
renderLtspiceSchematicImagerenderLtspicePlotImage,renderLtspicePlotPresetImagerenderLtspiceSymbolImagestartLtspiceRenderSession,endLtspiceRenderSession
可靠性注意事项
- 流式HTTP默认值已针对兼容性进行了调整:
- json_response = true - stateless_http = true
- 默认情况下禁用UI集成(
LTSPICE_MCP_UI_ENABLED=0). - 默认情况下,启用原理图单窗口更新。
- 渲染使用LTspice+ScreenCaptureKit直接窗口捕获。
- 每次运行都会存储运行工件,以保持历史结果的稳定。
守护进程操作
./scripts/ltspice_mcp_daemon.sh start
./scripts/ltspice_mcp_daemon.sh restart
./scripts/ltspice_mcp_daemon.sh stop
./scripts/ltspice_mcp_daemon.sh status
./scripts/ltspice_mcp_daemon.sh logs --lines 200
./scripts/ltspice_mcp_daemon.sh logs --follow权限助手:
./scripts/ltspice_mcp_daemon.sh trigger-screen-recording-permission
./scripts/ltspice_mcp_daemon.sh trigger-accessibility-permission测试
运行核心测试:
PYTHONPATH=src .venv/bin/python -m unittest discover -s tests -v运行真正的ScreenCaptureKit集成测试(选择加入):
LTSPICE_MCP_RUN_REAL_SCK=1 PYTHONPATH=src .venv/bin/python -m unittest tests.test_screencapturekit_integration -v
LTSPICE_MCP_RUN_REAL_SCK=1 PYTHONPATH=src .venv/bin/python -m unittest tests.test_plot_render_mcp_real -v贡献
欢迎捐款。从以下内容开始:
- 贡献.md
- AGENT_README.md 用于特定于代理的工作流
在提交错误时,包括:
- MCP服务器版本,
- LTspice版本,
- 运输方式,
- 精确的工具调用+参数,
- 守护进程日志摘录。
文档地图
- docs/README.md
- AGENT_README.md
- 更改日志.md
- 兼容性.md
- 贡献.md
- 支持.md
- 代码_OF_CONDUCT.md
- 安全.md
- MCP资源:
docs://agent-readme - MCP工具:
readAgentGuide
重要环境变量
核心:
LTSPICE_BINARYLTSPICE_MCP_WORKDIRLTSPICE_MCP_TIMEOUTLTSPICE_MCP_TRANSPORTLTSPICE_MCP_HOSTLTSPICE_MCP_PORTLTSPICE_MCP_STREAMABLE_HTTP_PATHLTSPICE_MCP_JSON_RESPONSELTSPICE_MCP_STATELESS_HTTP
UI/渲染:
LTSPICE_MCP_UI_ENABLEDLTSPICE_MCP_SCHEMATIC_SINGLE_WINDOWLTSPICE_MCP_SCHEMATIC_LIVE_PATHLTSPICE_MCP_SCK_HELPER_DIRLTSPICE_MCP_SCK_HELPER_PATHLTSPICE_MCP_VERIFY_WINDOW_CLOSE
登录中:
LTSPICE_MCP_LOG_LEVELLTSPICE_MCP_TOOL_LOGGINGLTSPICE_MCP_TOOL_LOG_MAX_ITEMSLTSPICE_MCP_TOOL_LOG_MAX_CHARSLTSPICE_MCP_DISABLE_UVICORN_NOISE_FILTERSLTSPICE_MCP_DAEMON_LOG_DIR
