Token导航 LogoToken导航TokenDH.com
topologicpy MCP logo
AI代理stdio官方级别未说明来源级核验

topologicpy MCP

MCP Server

TopologicPy MCP服务器通过MCP协议将TopologicPy的空间建模能力暴露给LLM代理,支持自然语言指令创建、操作和导出3D建筑模型。

工具数

34

提示词数

0

GitHub Stars

22

资源数

0
3D建模PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Adventurous-Systems

提供方

Adventurous-Systems

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

TopologicPy MCP服务器

这能带来什么

请Claude(或任何配备MCP的LLM)通过自然语言构建架构模型:

“创建一栋3层办公楼,12m×20m,层高3.5m,然后向我展示邻接图并导出到IFC”

MCP服务器将这些请求转换为精确的TopologicPy操作,在整个对话中维护一个命名对象会话。

建筑

┌─────────────────────────────────────────────────┐
│              MCP Client (Claude Code, etc.)       │
│  Natural language ↔ tool calls                   │
└────────────────────┬────────────────────────────┘
                     │  MCP Protocol (stdio/SSE)
                     ▼
┌─────────────────────────────────────────────────┐
│            TopologicPy MCP Server                │
│  ┌───────────────────────────────────────────┐  │
│  │  Session Store (named topology objects)    │  │
│  │  • "building" → CellComplex               │  │
│  │  • "floor_0"  → Cell                      │  │
│  │  • "graph"    → Graph                     │  │
│  └───────────────────────────────────────────┘  │
│                                                  │
│  Tools: create, boolean, transform, query, I/O   │
│  Resources: session state, BREP strings          │
│  Prompts: building envelope, adjacency, grids    │
└────────────────────┬────────────────────────────┘
                     │
                     ▼
┌─────────────────────────────────────────────────┐
│                  TopologicPy                     │
│  Vertex → Edge → Wire → Face → Shell → Cell     │
│  CellComplex → Cluster → Graph → Dictionary     │
│  OpenCASCADE (BREP) • IfcOpenShell (IFC)        │
└─────────────────────────────────────────────────┘

可用工具(36个工具)

创造

工具说明
create_vertex在(x,y,z)处创建一个点
create_edge两个顶点之间的线段
create_wire有序顶点的折线
create_face_by_wire从封闭的电线上看
create_face_rectangle矩形面
create_face_circle圆形面(多边形近似)
create_cell_by_faces来自边界面的三维实体
create_cell_prism盒子/矩形棱柱
create_cell_cylinder圆柱形电池
create_cellcomplex_by_cells合并单元组件(共享边界)
create_cluster非结构化集合

布尔运算

工具说明
boolean_unionA➢B
boolean_differenceA−B
boolean_intersectA∩B
self_merge解决自身交叉问题

变换

工具说明
translate按矢量移动
rotate绕轴旋转
scale相对于原点的比例

查询与分析

工具说明
list_topologies列出会话中的所有命名对象
query_topology详细信息(计数、质心、体积、面积)
get_vertices提取顶点坐标
get_sub_topologies提取并可选择存储子元素

图的运算

工具说明
create_graph_from_topology对偶/邻接图
graph_shortest_path顶点之间的最短路径

词典(元数据)

工具说明
set_dictionary附加键值元数据
get_dictionary读取附加元数据

进口/出口

工具说明
export_brep导出到BREP字符串/文件
import_brep从BREP字符串/文件导入
export_obj导出三角网格(OBJ)
export_ifc导出到IFC(BIM)
import_ifc从IFC文件导入

会话管理

工具说明
remove_topology从会话中删除
rename_topology重命名对象
copy_topology使用新名称进行深度复制

安装

紫外线(推荐)

cd topologic-mcp-server
uv venv
source .venv/bin/activate
uv pip install -e .

使用pip

cd topologic-mcp-server
pip install -e .

用法

使用克劳德代码

添加到您的Claude Code MCP配置中(~/.claude/claude_code_config.json):

{
  "mcpServers": {
    "topologic": {
      "command": "python",
      "args": ["-m", "topologic_mcp"],
      "cwd": "/path/to/topologic-mcp-server"
    }
  }
}

或者直接使用紫外线:

{
  "mcpServers": {
    "topologic": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/topologic-mcp-server", "topologic-mcp"]
    }
  }
}

使用克劳德桌面

增添 claude_desktop_config.json:

{
  "mcpServers": {
    "topologic": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/topologic-mcp-server", "topologic-mcp"]
    }
  }
}

独立(标准传输)

python -m topologic_mcp

配备MCP检查员(用于测试)

mcp dev src/topologic_mcp/server.py

对话示例

创建一个简单的建筑

User: Create a 3-storey building, 10m × 15m, 3m floor height

Claude: [calls create_vertex, create_cell_prism × 3, translate × 2,
         create_cellcomplex_by_cells, query_topology]

Result: CellComplex "building" with 3 cells, 16 faces, 33 edges, 20 vertices

分析空间邻接性

User: Show me which floors share faces in the building

Claude: [calls create_graph_from_topology with via_shared_faces=True,
         get_sub_topologies to list cells, query each cell]

Result: Graph with 3 vertices (one per floor) and 2 edges
        (floor_0↔floor_1, floor_1↔floor_2)

布尔运算

User: Cut a 2m diameter hole through the middle of floor_1

Claude: [calls create_cell_cylinder for the hole, translate to position,
         boolean_difference to subtract from floor_1]

Result: Updated floor_1 with cylindrical void

许可证

GPL-3.0或更高版本(与TopologicPy的许可证相匹配)

贡献

该服务器包装了TopologyPy的pure-Python API。要添加新工具,请执行以下操作:

  1. 添加一个 @mcp.tool() 装饰功能 server.py
  2. 遵循命名约定: verb_noun (例如。, create_vertex, export_brep)
  3. 始终接受 ctx: Context 作为第一个参数
  4. 使用 TopologyStorectx.request_context.lifespan_context
  5. 返回描述性字符串(LLM读取这些字符串)

目录标签

目录标签

3D建模PythonClaude空间建模本地部署建筑信息模型LLM集成MCP协议

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

34

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP