
mdvaleed7/etabs-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
A Model Context Protocol (MCP) server that connects Large Language Models (LLMs) to CSI ETABS, a premier structural engineering software.
Обзор
A Model Context Protocol (MCP) server that connects Large Language Models (LLMs) to CSI ETABS, a premier structural engineering software. This server enables AI assistants (like Claude, Cursor, etc.) to: - Create, open, and save ETABS models - Define materials, sections, and structural geometry - Apply loads and assign properties - Run structural analysis and design checks - Extract analysis results and design summaries - Query and modify ETABS database tables It uses the comtypes library in Python to interact directly with the ETABSv1 COM API, providing a seamless bridge between modern AI and legacy Windows COM applications. - (required for COM integration — comtypes does not work on macOS/Linux) - installed and licensed (v19, v20, v21, or v22) - - (recommended) or 1. Clone the repo and install the package in editable mode: 2.
README
Показан фрагмент оригинального README. Открыть оригинал.
ETABS MCP Server
A Model Context Protocol (MCP) server that connects Large Language Models (LLMs) to CSI ETABS, a premier structural engineering software.
This server enables AI assistants (like Claude, Cursor, etc.) to:
- Create, open, and save ETABS models
- Define materials, sections, and structural geometry
- Apply loads and assign properties
- Run structural analysis and design checks
- Extract analysis results and design summaries
- Query and modify ETABS database tables
It uses the comtypes library in Python to interact directly with the ETABSv1 COM API, providing a seamless bridge between modern AI and legacy Windows COM applications.
Prerequisites
- Windows OS (required for COM integration —
comtypesdoes not work on macOS/Linux) - CSI ETABS installed and licensed (v19, v20, v21, or v22)
- Python 3.10+
- uv (recommended) or pip
Repository Layout
ETABS-mcp/
├── pyproject.toml # build config & entry point
├── README.md
├── etabs_mcp_config.json # runtime config (units, auto-connect, …)
├── src/
│ └── etabs_mcp/
│ ├── __init__.py
│ ├── server.py # FastMCP entry point (run via `etabs-mcp`)
│ ├── etabs_connection.py # COM singleton manager
│ ├── helpers.py # shared utils, units, response formatting
│ └── tools/
│ ├── __init__.py
│ ├── analysis.py
│ ├── assignments.py
│ ├── database_tables.py
│ ├── design.py
│ ├── generic_api.py
│ ├── loads.py
│ ├── model_control.py
│ ├── model_geometry.py
│ ├── properties.py
│ ├── results.py
│ ├── seismic.py # IS 1893 modal + RSA + drift
│ ├── selection.py
│ ├── stiffness_modifiers.py # ACI 318 + IS 456 cracked-section presets
│ └── stories_grids.py
Installation
-
Clone the repo and install the package in editable mode:
git clone https://github.com/mdvaleed7/ETABS-mcp.git cd ETABS-mcp pip install -e .Or with
uv:uv pip install -e . -
Verify the entry point is registered:
etabs-mcp --help(The server itself only starts speaking MCP over stdio, so don’t expect pretty output — just confirm the command exists.)
Configuration for MCP Clients
Claude Desktop
Add this to your claude_desktop_config.json (usually at
%APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"etabs": {
"command": "etabs-mcp",
"args": []
}
}
}
If etabs-mcp is not on your PATH, use the full path to the script, e.g.:
{
"mcpServers": {
"etabs": {
"command": "python",
"args": ["-m", "etabs_mcp.server"]
}
}
}
Make sure you run this Python from the same virtual environment where you installed the package.
Cursor
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →Конфигурация
{
"mcpServers": {
"etabs": {
"command": "etabs-mcp",
"args": []
}
}
}