tekla_mcp_server
An MCP server for Tekla that facilitates interaction with Tekla Structures, allowing users to speed-up modeling processes
claude mcp add --transport stdio teknovizier-tekla_mcp_server python -m tekla_mcp_server \ --env TEKLA_PATH="C:\\Program Files\\Tekla Structures\\2022.0\\bin" \ --env SETTINGS_PATH="config/settings.json" \ --env EMBEDDINGS_MODEL="all-MiniLM-L6-v2" \ --env EMBEDDINGS_ENABLED="true" \ --env EMBEDDINGS_THRESHOLD="0.6"
How to use
Tekla MCP Server exposes a set of AI-assisted tools to interact with Tekla Structures via the Model Context Protocol (MCP). The server integrates semantic attribute mapping using sentence-transformers to convert natural language queries into Tekla operations, enabling you to check Tekla connectivity, insert and modify components, filter and select elements, and visualize results in the Tekla viewport. The included tools cover connection checks, component insertion with semantic mapping, component removal, element selection by filters or GUID, assembly handling, labeling and viewing controls, and advanced operations like cutting, converting cut parts, and retrieving or comparing element data. Use these tools to automate common Tekla workflows through natural-language style prompts backed by structured commands. The server is designed to work with Tekla Structures 2022 and is verified with clients like DeepChat and chatmcp, as well as several language models listed in the README.
How to install
Prerequisites:\n- Python 3.11 or newer installed on your system.\n- Git installed to clone the repository.\n- Internet connection to install Python dependencies.\n\nStep 1: Clone the repository\ngit clone https://github.com/teknovizier/tekla_mcp_server.git cd tekla_mcp_server\n\nStep 2: Create and activate a Python virtual environment (optional but recommended)\n```
python -m venv venv
Windows
venv\Scripts\activate.bat
macOS/Linux
source venv/bin/activate
\n\nStep 3: Install dependencies\n
pip install -r requirements.txt
\n\nStep 4: Prepare configuration\n- Rename config/settings.sample.json to config/settings.json and adjust values as needed.\n- Ensure Tekla path and embeddings settings match your environment.\n\nStep 5: Run the MCP server\n
uvx # if using uvicorn-based runner, or run via Python module as shown below
If launching directly via Python module
python -m tekla_mcp_server
Additional notes
Environment variables and configuration notes:\n- TEKLA_PATH should point to your Tekla Structures installation directory.\n- SETTINGS_PATH should point to your config/settings.json if you keep settings separate.\n- The embeddings-related settings control semantic mapping behavior; disable embeddings if you only need exact/normalized matches.\n- If you encounter a naming conflict with the clr package, consider the workaround mentioned in the README (rename/delete the local clr folder in site-packages).\n- The server targets Tekla Structures 2022 compatibility; verify your Tekla version before use.\n- Ensure your Python environment has the required permissions to access Tekla paths and to render in Tekla’s active view.\n- For production deployment, consider setting explicit environment variables for security and clarity (e.g., HIDDEN_API_KEYS, LOG_LEVEL).
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP