一个用于JupyterCAD的MCP服务器,允许您通过LLMs/自然语言来控制它。
https://github.com/user-attachments/assets/7edb31b2-2c80-4096-9d9c-048ae27c54e7
欢迎提出建议和贡献。
默认传输机制是stdio。要使用stdio启动服务器,请使用以下命令:
uvx --with jupytercad-mcp jupytercad-mcp
要使用streamable-http传输机制,请使用以下命令:
uvx --with jupytercad-mcp jupytercad-mcp streamable-http
一个使用OpenAI Agents SDK的例子可以在examples/openai_agents_client.py中找到。要运行它,请按照以下步骤操作:
克隆仓库并进入目录:
git clone git@github.com:asmith26/jupytercad-mcp.git
cd jupytercad-mcp
安装OpenAI Agents SDK。提供了一个Makefile目标以方便安装:
make setup-examples-env
在examples/openai_agents_client.py中更新第13行以配置一个MODEL(参见支持的模型)。
从项目的根目录运行JupyterLab:
make jupyter-lab
在JupyterLab中创建一个新的“CAD文件”并将其重命名为my_cad_design.jcad。此文件路径与示例中的默认JCAD_PATH匹配,允许您可视化由JupyterCAD MCP服务器所做的更改。
(可选)OpenAI Agents SDK支持跟踪记录事件,如LLM生成和工具调用。要启用它,请设置USE_MLFLOW_TRACING=True,并运行MLflow UI:
make mlflow-ui
使用默认指令“添加宽度/高度/深度为1的盒子”运行示例:
make example-openai-agents-client
示例包括使用OpenAI Agents SDK的REPL工具的交互式聊天界面。要启用它,请设置USE_REPL=True。
streamable-http要使用streamable-http传输机制,首先启动MCP服务器:
uvx --with jupytercad-mcp jupytercad-mcp streamable-http
然后,在客户端示例中将TRANSPORT变量设置为"streamable-http"来运行示例。
可用的工具有: