Offer Python with the Windows installer, for the MCP server

Most Windows users have no Python, which the MCP server needs. The
installer now offers "Python for the AI assistant", unticked by default:
the official embeddable package from python.org (3.14.7, ~12 MB, no
registry, removed with QElectroTech), in <folder>\mcp\python. The
portable folder and the MSI, which pack all of files/, carry it.

The workflow downloads it pinned by version and by python.org's own
sha256 for the file (checked against python.org's download API), and
fails the build on a mismatch. The script stays plain text beside it.

Checked under Wine (64-bit, qet-wine-smoke image), on an installer built
with makensis 3.10 (0 warnings, strings in all 29 languages):
- a silent default install puts mcp\qet_mcp.py in place and no Python;
  the same installer with the section ticked by default installs it, so
  the check tells the two apart;
- the installed Python runs the installed server: 15 tools listed,
  qet_project_info on an example answers as on Linux, and the server
  finds bin\QElectroTech.exe and elements\ by itself.
Not checked: a real Windows machine; the CI download step (fork run).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ispyisail
2026-09-29 13:00:30 +13:00
parent ac952d3df6
commit 6b9c5189b1
6 changed files with 115 additions and 30 deletions
+14
View File
@@ -230,6 +230,20 @@ jobs:
# The MCP server finds bin/QElectroTech.exe and elements/ from mcp/.
mkdir -p "$FILES/mcp"
cp "$GITHUB_WORKSPACE/misc/qet-mcp/qet_mcp.py" "$GITHUB_WORKSPACE/misc/qet-mcp/README.md" "$FILES/mcp/"
# Python for it, so Windows users need not install one: the official
# embeddable package, pinned by version and checksum (python.org's
# own sha256 for this file). The installer offers it unticked; the
# portable folder and the MSI carry it.
PY_EMBED_VERSION=3.14.7
PY_EMBED_SHA256=d297e5ff019966817ad8502465176139f2d3d840fa4ed84b13bed399a6ab1f15
PY_ZIP="$GITHUB_WORKSPACE/python-embed.zip"
curl -fsSL -o "$PY_ZIP" \
"https://www.python.org/ftp/python/$PY_EMBED_VERSION/python-$PY_EMBED_VERSION-embed-amd64.zip"
echo "$PY_EMBED_SHA256 $PY_ZIP" | sha256sum -c - \
|| { echo "ERROR: embeddable Python checksum mismatch"; exit 1; }
python3 -m zipfile -e "$PY_ZIP" "$FILES/mcp/python"
[ -f "$FILES/mcp/python/python.exe" ] \
|| { echo "ERROR: python.exe missing from the embeddable package"; exit 1; }
# --- Translations ---
# Since PR #751 the .qm files are no longer tracked in git: lrelease
+9
View File
@@ -281,6 +281,14 @@ Section "$(Mcp)" SEC06
File /nonfatal "./files/mcp/*"
SectionEnd
; Python for the MCP server, from python.org (about 12 MB). Unticked by
; default: only someone setting up an AI assistant needs it, and then only
; without a Python of their own. Uninstall removes it with $INSTDIR.
Section /o "$(McpPython)" SEC07
SetOutPath "$INSTDIR\mcp\python"
File /nonfatal /r "./files/mcp/python/*"
SectionEnd
;--------------------------------
; Component descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
@@ -290,6 +298,7 @@ SectionEnd
!insertmacro MUI_DESCRIPTION_TEXT ${SEC04} $(var4)
!insertmacro MUI_DESCRIPTION_TEXT ${SEC05} $(var5)
!insertmacro MUI_DESCRIPTION_TEXT ${SEC06} $(var6)
!insertmacro MUI_DESCRIPTION_TEXT ${SEC07} $(var7)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
;--------------------------------
+48 -16
View File
@@ -20,7 +20,9 @@
LangString var4 ${LANG_ENGLISH} "Examples of diagrams"
LangString var5 ${LANG_ENGLISH} "Fonts"
LangString Mcp ${LANG_ENGLISH} "AI assistant (MCP)"
LangString var6 ${LANG_ENGLISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_ENGLISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_ENGLISH} "Python for the AI assistant"
LangString var7 ${LANG_ENGLISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_ENGLISH} "Uninstallation of the previous version failed.$\nPlease uninstall ${SOFT_NAME} manually before continuing."
@@ -46,7 +48,9 @@
LangString var4 ${LANG_KOREAN} "도면 예제"
LangString var5 ${LANG_KOREAN} "글꼴"
LangString Mcp ${LANG_KOREAN} "AI assistant (MCP)"
LangString var6 ${LANG_KOREAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_KOREAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_KOREAN} "Python for the AI assistant"
LangString var7 ${LANG_KOREAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_KOREAN} "이전 버전을 제거하지 못했습니다.$\n계속하기 전에 ${SOFT_NAME}을(를) 수동으로 제거해 주세요."
@@ -72,7 +76,9 @@
LangString var4 ${LANG_POLISH} "Przykłady schematów"
LangString var5 ${LANG_POLISH} "Czcionki"
LangString Mcp ${LANG_POLISH} "AI assistant (MCP)"
LangString var6 ${LANG_POLISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_POLISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_POLISH} "Python for the AI assistant"
LangString var7 ${LANG_POLISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_POLISH} "Odinstalowanie poprzedniej wersji nie powiodło się.$\nPrzed kontynuowaniem odinstaluj ręcznie program ${SOFT_NAME}."
@@ -98,7 +104,9 @@
LangString var4 ${LANG_GREEK} "Παραδείγματα διαγραμμάτων"
LangString var5 ${LANG_GREEK} "Γραμματοσειρές"
LangString Mcp ${LANG_GREEK} "AI assistant (MCP)"
LangString var6 ${LANG_GREEK} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_GREEK} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_GREEK} "Python for the AI assistant"
LangString var7 ${LANG_GREEK} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_GREEK} "Η απεγκατάσταση της προηγούμενης έκδοσης απέτυχε.$\nΠαρακαλώ απεγκαταστήστε χειροκίνητα το ${SOFT_NAME} πριν συνεχίσετε."
@@ -124,7 +132,9 @@
LangString var4 ${LANG_CZECH} "Příklady schémat"
LangString var5 ${LANG_CZECH} "Písma"
LangString Mcp ${LANG_CZECH} "AI assistant (MCP)"
LangString var6 ${LANG_CZECH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_CZECH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_CZECH} "Python for the AI assistant"
LangString var7 ${LANG_CZECH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_CZECH} "Odinstalování předchozí verze se nezdařilo.$\nPřed pokračováním prosím odinstalujte ${SOFT_NAME} ručně."
@@ -150,7 +160,9 @@
LangString var4 ${LANG_SPANISH} "Ejemplos de esquemas"
LangString var5 ${LANG_SPANISH} "Fuentes"
LangString Mcp ${LANG_SPANISH} "AI assistant (MCP)"
LangString var6 ${LANG_SPANISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SPANISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SPANISH} "Python for the AI assistant"
LangString var7 ${LANG_SPANISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SPANISH} "La desinstalación de la versión anterior ha fallado.$\nPor favor, desinstale ${SOFT_NAME} manualmente antes de continuar."
@@ -176,7 +188,9 @@
LangString var4 ${LANG_GERMAN} "Schaltplan-Beispiele"
LangString var5 ${LANG_GERMAN} "Schriften"
LangString Mcp ${LANG_GERMAN} "AI assistant (MCP)"
LangString var6 ${LANG_GERMAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_GERMAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_GERMAN} "Python for the AI assistant"
LangString var7 ${LANG_GERMAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_GERMAN} "Die Deinstallation der vorherigen Version ist fehlgeschlagen.$\nBitte deinstallieren Sie ${SOFT_NAME} manuell, bevor Sie fortfahren."
@@ -202,7 +216,9 @@
LangString var4 ${LANG_RUSSIAN} "Примеры схем"
LangString var5 ${LANG_RUSSIAN} "Шрифты"
LangString Mcp ${LANG_RUSSIAN} "AI assistant (MCP)"
LangString var6 ${LANG_RUSSIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_RUSSIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_RUSSIAN} "Python for the AI assistant"
LangString var7 ${LANG_RUSSIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_RUSSIAN} "Удаление предыдущей версии завершилось с ошибкой.$\nПожалуйста, удалите ${SOFT_NAME} вручную перед продолжением."
@@ -228,7 +244,9 @@
LangString var4 ${LANG_ARABIC} "أمثلة على المخططات"
LangString var5 ${LANG_ARABIC} "الخطوط"
LangString Mcp ${LANG_ARABIC} "AI assistant (MCP)"
LangString var6 ${LANG_ARABIC} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_ARABIC} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_ARABIC} "Python for the AI assistant"
LangString var7 ${LANG_ARABIC} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_ARABIC} "فشل إلغاء تثبيت الإصدار السابق. يرجى إلغاء تثبيت ${SOFT_NAME} يدويًا قبل المتابعة."
@@ -254,7 +272,9 @@
LangString var4 ${LANG_CATALAN} "Exemples d'esquemes"
LangString var5 ${LANG_CATALAN} "Tipus de lletra"
LangString Mcp ${LANG_CATALAN} "AI assistant (MCP)"
LangString var6 ${LANG_CATALAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_CATALAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_CATALAN} "Python for the AI assistant"
LangString var7 ${LANG_CATALAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_CATALAN} "La desinstal·lació de la versió anterior ha fallat.$\nSi us plau, desinstal·leu ${SOFT_NAME} manualment abans de continuar."
@@ -280,7 +300,9 @@
LangString var4 ${LANG_ITALIAN} "Schemi di esempio"
LangString var5 ${LANG_ITALIAN} "Caratteri"
LangString Mcp ${LANG_ITALIAN} "AI assistant (MCP)"
LangString var6 ${LANG_ITALIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_ITALIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_ITALIAN} "Python for the AI assistant"
LangString var7 ${LANG_ITALIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_ITALIAN} "La disinstallazione della versione precedente non è riuscita.$\nSi prega di disinstallare ${SOFT_NAME} manualmente prima di continuare."
@@ -306,7 +328,9 @@
LangString var4 ${LANG_PORTUGUESE} "Exemplos de esquemas"
LangString var5 ${LANG_PORTUGUESE} "Fontes"
LangString Mcp ${LANG_PORTUGUESE} "AI assistant (MCP)"
LangString var6 ${LANG_PORTUGUESE} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_PORTUGUESE} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_PORTUGUESE} "Python for the AI assistant"
LangString var7 ${LANG_PORTUGUESE} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_PORTUGUESE} "A desinstalação da versão anterior falhou.$\nPor favor, desinstale ${SOFT_NAME} manualmente antes de continuar."
@@ -332,7 +356,9 @@
LangString var4 ${LANG_ROMANIAN} "Exemple de scheme"
LangString var5 ${LANG_ROMANIAN} "Fonturi"
LangString Mcp ${LANG_ROMANIAN} "AI assistant (MCP)"
LangString var6 ${LANG_ROMANIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_ROMANIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_ROMANIAN} "Python for the AI assistant"
LangString var7 ${LANG_ROMANIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_ROMANIAN} "Dezinstalarea versiunii anterioare a eșuat.$\nVă rugăm să dezinstalați ${SOFT_NAME} manual înainte de a continua."
@@ -358,7 +384,9 @@
LangString var4 ${LANG_CROATIAN} "Primjeri shema"
LangString var5 ${LANG_CROATIAN} "Fontovi"
LangString Mcp ${LANG_CROATIAN} "AI assistant (MCP)"
LangString var6 ${LANG_CROATIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_CROATIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_CROATIAN} "Python for the AI assistant"
LangString var7 ${LANG_CROATIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_CROATIAN} "Deinstalacija prethodne verzije nije uspjela.$\nMolimo deinstalirajte ${SOFT_NAME} ručno prije nastavka."
@@ -384,7 +412,9 @@
LangString var4 ${LANG_DUTCH} "Voorbeelden van schema's"
LangString var5 ${LANG_DUTCH} "Lettertypen"
LangString Mcp ${LANG_DUTCH} "AI assistant (MCP)"
LangString var6 ${LANG_DUTCH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_DUTCH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_DUTCH} "Python for the AI assistant"
LangString var7 ${LANG_DUTCH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_DUTCH} "Het verwijderen van de vorige versie is mislukt.$\nVerwijder ${SOFT_NAME} handmatig voordat u verdergaat."
@@ -410,7 +440,9 @@
LangString var4 ${LANG_DANISH} "Diagram eksempler"
LangString var5 ${LANG_DANISH} "Skrifttyper"
LangString Mcp ${LANG_DANISH} "AI assistant (MCP)"
LangString var6 ${LANG_DANISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_DANISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_DANISH} "Python for the AI assistant"
LangString var7 ${LANG_DANISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_DANISH} "Afinstallation af den tidligere version mislykkedes.$\nAfinstaller venligst ${SOFT_NAME} manuelt, inden du fortsætter."
+3 -1
View File
@@ -20,5 +20,7 @@
LangString var4 ${LANG_FRENCH} "Exemples de schémas"
LangString var5 ${LANG_FRENCH} "Polices"
LangString Mcp ${LANG_FRENCH} "Assistant IA (MCP)"
LangString var6 ${LANG_FRENCH} "Permet à un assistant IA d'ouvrir, vérifier et modifier vos schémas (nécessite Python)"
LangString var6 ${LANG_FRENCH} "Permet à un assistant IA d'ouvrir, vérifier et modifier vos schémas. Nécessite Python : le vôtre, ou celui proposé ci-dessous"
LangString McpPython ${LANG_FRENCH} "Python pour l'assistant IA"
LangString var7 ${LANG_FRENCH} "Python de python.org, utilisé uniquement par le composant Assistant IA. Inutile si Python est déjà installé (environ 12 Mo)"
LangString uninstFailed ${LANG_FRENCH} "La désinstallation de la version précédente a échoué.$\nVeuillez désinstaller ${SOFT_NAME} manuellement avant de continuer."
+36 -12
View File
@@ -26,7 +26,9 @@
LangString var4 ${LANG_HUNGARIAN} "Kapcsolási rajz példák"
LangString var5 ${LANG_HUNGARIAN} "Betűtípusok"
LangString Mcp ${LANG_HUNGARIAN} "AI assistant (MCP)"
LangString var6 ${LANG_HUNGARIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_HUNGARIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_HUNGARIAN} "Python for the AI assistant"
LangString var7 ${LANG_HUNGARIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_HUNGARIAN} "Az előző verzió eltávolítása nem sikerült.$\nKérjük, távolítsa el manuálisan a ${SOFT_NAME} programot, mielőtt folytatná."
@@ -55,7 +57,9 @@
LangString var4 ${LANG_JAPANESE} "回路図の例"
LangString var5 ${LANG_JAPANESE} "フォント"
LangString Mcp ${LANG_JAPANESE} "AI assistant (MCP)"
LangString var6 ${LANG_JAPANESE} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_JAPANESE} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_JAPANESE} "Python for the AI assistant"
LangString var7 ${LANG_JAPANESE} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_JAPANESE} "前のバージョンのアンインストールに失敗しました。$\n続行する前に、${SOFT_NAME} を手動でアンインストールしてください。"
@@ -84,7 +88,9 @@
LangString var4 ${LANG_MONGOLIAN} "Схемийн жишээнүүд"
LangString var5 ${LANG_MONGOLIAN} "Фонт"
LangString Mcp ${LANG_MONGOLIAN} "AI assistant (MCP)"
LangString var6 ${LANG_MONGOLIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_MONGOLIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_MONGOLIAN} "Python for the AI assistant"
LangString var7 ${LANG_MONGOLIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_MONGOLIAN} "Өмнөх хувилбарыг устгаж чадсангүй.$\nҮргэлжлүүлэхийн өмнө ${SOFT_NAME}-г гараар устгана уу."
@@ -113,7 +119,9 @@
LangString var4 ${LANG_NORWEGIAN} "Eksempler på skjemaer"
LangString var5 ${LANG_NORWEGIAN} "Skrifttyper"
LangString Mcp ${LANG_NORWEGIAN} "AI assistant (MCP)"
LangString var6 ${LANG_NORWEGIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_NORWEGIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_NORWEGIAN} "Python for the AI assistant"
LangString var7 ${LANG_NORWEGIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_NORWEGIAN} "Avinstallasjon av forrige versjon mislyktes.$\nVennligst avinstaller ${SOFT_NAME} manuelt før du fortsetter."
@@ -152,7 +160,9 @@
LangString var4 ${LANG_PORTUGUESEBR} "Exemplos de esquemas"
LangString var5 ${LANG_PORTUGUESEBR} "Fontes"
LangString Mcp ${LANG_PORTUGUESEBR} "AI assistant (MCP)"
LangString var6 ${LANG_PORTUGUESEBR} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_PORTUGUESEBR} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_PORTUGUESEBR} "Python for the AI assistant"
LangString var7 ${LANG_PORTUGUESEBR} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_PORTUGUESEBR} "A desinstalação da versão anterior falhou.$\nPor favor, desinstale ${SOFT_NAME} manualmente antes de continuar."
@@ -181,7 +191,9 @@
LangString var4 ${LANG_SERBIAN} "Примери шема"
LangString var5 ${LANG_SERBIAN} "Фонтови"
LangString Mcp ${LANG_SERBIAN} "AI assistant (MCP)"
LangString var6 ${LANG_SERBIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SERBIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SERBIAN} "Python for the AI assistant"
LangString var7 ${LANG_SERBIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SERBIAN} "Деинсталација претходне верзије није успела.$\nМолимо деинсталирајте ${SOFT_NAME} ручно пре наставка."
@@ -210,7 +222,9 @@
LangString var4 ${LANG_SLOVAK} "Príklady schém"
LangString var5 ${LANG_SLOVAK} "Písma"
LangString Mcp ${LANG_SLOVAK} "AI assistant (MCP)"
LangString var6 ${LANG_SLOVAK} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SLOVAK} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SLOVAK} "Python for the AI assistant"
LangString var7 ${LANG_SLOVAK} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SLOVAK} "Odinštalovanie predchádzajúcej verzie zlyhalo.$\nPred pokračovaním odinštalujte ${SOFT_NAME} ručne."
@@ -239,7 +253,9 @@
LangString var4 ${LANG_SLOVENIAN} "Primeri shem"
LangString var5 ${LANG_SLOVENIAN} "Pisave"
LangString Mcp ${LANG_SLOVENIAN} "AI assistant (MCP)"
LangString var6 ${LANG_SLOVENIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SLOVENIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SLOVENIAN} "Python for the AI assistant"
LangString var7 ${LANG_SLOVENIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SLOVENIAN} "Odstranitev prejšnje različice ni uspela.$\nPred nadaljevanjem ročno odstranite ${SOFT_NAME}."
@@ -268,7 +284,9 @@
LangString var4 ${LANG_SWEDISH} "Exempel på scheman"
LangString var5 ${LANG_SWEDISH} "Teckensnitt"
LangString Mcp ${LANG_SWEDISH} "AI assistant (MCP)"
LangString var6 ${LANG_SWEDISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SWEDISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SWEDISH} "Python for the AI assistant"
LangString var7 ${LANG_SWEDISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SWEDISH} "Avinstallationen av den föregående versionen misslyckades.$\nAvinstallera ${SOFT_NAME} manuellt innan du fortsätter."
@@ -297,7 +315,9 @@
LangString var4 ${LANG_TURKISH} "Şema örnekleri"
LangString var5 ${LANG_TURKISH} "Yazı Tipleri"
LangString Mcp ${LANG_TURKISH} "AI assistant (MCP)"
LangString var6 ${LANG_TURKISH} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_TURKISH} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_TURKISH} "Python for the AI assistant"
LangString var7 ${LANG_TURKISH} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_TURKISH} "Önceki sürümün kaldırılması başarısız oldu.$\nDevam etmeden önce lütfen ${SOFT_NAME}'i manuel olarak kaldırın."
@@ -326,7 +346,9 @@
LangString var4 ${LANG_UKRAINIAN} "Приклади схем"
LangString var5 ${LANG_UKRAINIAN} "Шрифти"
LangString Mcp ${LANG_UKRAINIAN} "AI assistant (MCP)"
LangString var6 ${LANG_UKRAINIAN} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_UKRAINIAN} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_UKRAINIAN} "Python for the AI assistant"
LangString var7 ${LANG_UKRAINIAN} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_UKRAINIAN} "Видалення попередньої версії завершилося помилкою.$\nБудь ласка, видаліть ${SOFT_NAME} вручну перед продовженням."
@@ -355,5 +377,7 @@
LangString var4 ${LANG_SIMPCHINESE} "图纸示例"
LangString var5 ${LANG_SIMPCHINESE} "字体"
LangString Mcp ${LANG_SIMPCHINESE} "AI assistant (MCP)"
LangString var6 ${LANG_SIMPCHINESE} "Lets an AI assistant open, check and edit your drawings (needs Python)"
LangString var6 ${LANG_SIMPCHINESE} "Lets an AI assistant open, check and edit your drawings. Needs Python: your own, or the one offered below"
LangString McpPython ${LANG_SIMPCHINESE} "Python for the AI assistant"
LangString var7 ${LANG_SIMPCHINESE} "Python from python.org, used only by the AI assistant component. Not needed if Python is already installed (about 12 MB)"
LangString uninstFailed ${LANG_SIMPCHINESE} "卸载旧版本失败。$\n请在继续之前手动卸载 ${SOFT_NAME}。"
+5 -1
View File
@@ -93,9 +93,13 @@ there it finds that QElectroTech and its element collection by itself:
| Windows installer, MSI, portable folder | `<folder>\mcp\qet_mcp.py` (the "AI assistant (MCP)" component) | `<folder>\bin\QElectroTech.exe`, `<folder>\elements` |
So a client configuration needs only the path to the server and the
workspace, for example on Windows:
workspace. On Windows, the installer also offers **Python for the AI
assistant** (unticked by default; always in the portable folder and the
MSI): Python from python.org in `<folder>\mcp\python`, for anyone without
a Python of their own. Then:
```json
"command": "C:\\Program Files\\QElectroTech\\mcp\\python\\python.exe",
"args": ["C:\\Program Files\\QElectroTech\\mcp\\qet_mcp.py"]
```