pulsonix-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@pulsonix-mcprun DRC on C:/design.pcb and list violations"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
pulsonix-mcp
MCP-сервер для Pulsonix 10.x (проверено на 10.5 build 7883) через встроенный ActiveX Scripting API. Позволяет ИИ-агентам (Claude, Codex, Cursor, Copilot, Gemini…) читать и менять схемы и платы Pulsonix: компоненты, цепи, netlist, BOM, атрибуты, ERC/DRC, CAM-выводы, библиотеки — и выполнять произвольные скрипты.
MCP server for Pulsonix 10.x PCB/schematic CAD via its legacy ActiveX scripting API (Windows, stdio).
Требования
Windows с установленным Pulsonix 10.x и лицензией, в которой есть Scripting (меню Tools → Run Script).
Python 3.10+.
Сервер работает по stdio на той же машине, где стоит Pulsonix (облачные агенты без локального доступа его не запустят).
Related MCP server: KiCad MCP Server
Установка
pip install git+https://github.com/meepo161/pulsonixMCP.gitили из клона в режиме разработки:
git clone https://github.com/meepo161/pulsonixMCP.git
cd pulsonixMCP
pip install -e .После установки появляется команда pulsonix-mcp (лежит в папке Scripts вашего Python).
Узнать полный путь:
python -c "import sysconfig; print(sysconfig.get_path('scripts'))"Если в PATH эта папка не добавлена — в конфигах ниже указывайте полный путь,
например C:\\Users\\<you>\\AppData\\Roaming\\Python\\Python314\\Scripts\\pulsonix-mcp.exe.
Вместо pulsonix-mcp везде можно использовать python -m pulsonix_mcp.
Без установки, через uv: команда uvx, аргументы
--from git+https://github.com/meepo161/pulsonixMCP.git pulsonix-mcp.
Первый запуск Pulsonix
Один раз откройте Pulsonix вручную и закройте стартовые диалоги (например, «проверять обновления?»). В скрытом режиме такой диалог заблокирует скрипт, и вызов упадёт по таймауту.
Подключение к ИИ-агентам
Во всех примерах pulsonix-mcp можно заменить полным путём к exe. Необязательные переменные окружения — в разделе
Настройки. Операция в headless-режиме занимает ~2 с, но на медленных машинах поднимите таймаут
инструмента клиента до 2–3 минут.
Claude Code
claude mcp add pulsonix --scope user -- pulsonix-mcp
claude mcp list--scope user — во всех проектах; без него — только в текущем.
Claude Desktop
Settings → Developer → Edit Config (файл %APPDATA%\Claude\claude_desktop_config.json).
Правьте, когда Claude Desktop закрыт — иначе приложение может перезаписать файл.
{
"mcpServers": {
"pulsonix": {
"command": "pulsonix-mcp",
"args": []
}
}
}OpenAI Codex CLI
codex mcp add pulsonix -- pulsonix-mcpили в ~/.codex/config.toml:
[mcp_servers.pulsonix]
command = "pulsonix-mcp"
args = []
tool_timeout_sec = 180Cursor
~/.cursor/mcp.json (глобально) или .cursor/mcp.json в проекте:
{
"mcpServers": {
"pulsonix": { "command": "pulsonix-mcp", "args": [] }
}
}VS Code (GitHub Copilot, режим Agent)
.vscode/mcp.json в проекте (или MCP: Add Server из палитры команд):
{
"servers": {
"pulsonix": { "type": "stdio", "command": "pulsonix-mcp", "args": [] }
}
}Gemini CLI
~/.gemini/settings.json:
{
"mcpServers": {
"pulsonix": { "command": "pulsonix-mcp", "args": [], "timeout": 180000 }
}
}Windsurf / Cline / LM Studio / другие
Используют тот же формат mcpServers, что и Claude Desktop:
Windsurf — ~/.codeium/windsurf/mcp_config.json, Cline — MCP Servers → Configure,
LM Studio — mcp.json в настройках программы.
Свой агент (Python MCP SDK)
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
params = StdioServerParameters(command="pulsonix-mcp")
async with stdio_client(params) as (r, w), ClientSession(r, w) as s:
await s.initialize()
res = await s.call_tool("pulsonix_bom", {"design": r"C:\path\design.sch"})Проверить сервер вручную: npx @modelcontextprotocol/inspector pulsonix-mcp.
Как это работает
Агент ──MCP/stdio──► pulsonix_mcp (Python)
│ генерирует job.jse (runtime + ops + параметры)
├─ headless: Pulsonix.exe -hidden -scriptfile job.jse (~2 с на вызов)
└─ live: DDE "Pulsonix|System" → [psx_script_file("job.jse")]
▼
Pulsonix выполняет скрипт → result.json (UTF-16) → Python → агентheadless (по умолчанию): скрытый Pulsonix открывает временную копию файла из параметра
design. Инструменты записи безsave/save_as— пробный прогон (dry run), оригинал не меняется.save=trueперезаписывает оригинал, предварительно сохранив<имя>.bak-ГГГГММДД-ччммсс.<ext>;save_asпишет результат в новый файл.live (
mode="live"): работа с уже открытым окном Pulsonix — активный документ или тот, что указан вdesign. Изменения видны в окне сразу; сохраняете сами (илиsave=true).Не сохраняйте в headless-режиме файл, который сейчас открыт в окне Pulsonix: окно останется со старой версией.
Инструменты
Чтение | Запись (dry run без save) | Вывод / прочее |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
Координаты — в миллиметрах (1 мм = 100000 DSU). Выводы в цепях — REF:PIN (например KM1:9).
pulsonix_api_reference при первом вызове извлекает справочник API из Scripting.chm вашей установки
Pulsonix (через hh.exe) в рабочую папку. Сама справка © WestDev Ltd и в репозиторий не входит.
Примеры запросов агенту:
«Сделай BOM по схеме
C:\work\board.schи сохрани в Excel»«Найди компоненты без атрибута Value и неподключённые выводы»
«Переименуй R1..R20 в R101..R120 и сохрани в
board_v2.sch»«В открытом Pulsonix передвинь C5 на (120; 45) мм»
Настройки
Переменная | По умолчанию | Назначение |
|
| путь к Pulsonix.exe |
|
| рабочая папка (скрипты, копии, кэш справки) |
|
| таймаут одной операции, с |
| — |
|
Пример с переменными (Claude Desktop / Cursor и т. п.):
"pulsonix": {
"command": "pulsonix-mcp",
"env": { "PULSONIX_EXE": "D:\\Pulsonix10.5\\Pulsonix.exe", "PULSONIX_MCP_TIMEOUT": "300" }
}Особенности Pulsonix 10.x, учтённые в сервере
COM-объект
Pulsonix.Applicationзарегистрирован, но наружу методов не отдаёт — управление только через скрипты, которые Pulsonix выполняет сам (-scriptfileили DDE-командаpsx_script_file).Движок скрипта выбирается по расширению файла через реестр Windows.
.jsчасто перехвачен редакторами (WebStorm, VS Code…) — тогда у ассоциации нет ключаScriptEngine, и скрипты молча не запускаются. Поэтому сервер пишет скрипты как.jse(движокJScript.Encodeисполняет обычный JScript).В JScript-движке Pulsonix нет объекта
JSON— сериализатор свой (pulsonix_mcp/jscript/runtime.jse).Document.Save()возвращает неtrueдаже при успехе — сохранение проверяется по времени изменения файла.Component.Padsв схеме отдаёт выводы только первого гейта; связь вывод→цепь строится по узлам цепей.DDE-клиент из
pywin32способен уронить Pulsonix (heap corruption) — в сервере собственный клиент DDEML на ctypes.
Разработка и тесты
python tests/smoke_test.py path\to\design.sch # мост, headless, только чтение
python tests/mcp_client_test.py path\to\design.sch # MCP по stdio; запись только в %TEMP%
python tests/live_test.py # нужен открытый Pulsonix с документомСтруктура:
pulsonix_mcp/
server.py MCP-инструменты (FastMCP)
bridge.py запуск скриптов: headless / live, копии, бэкапы
dde.py DDEML-клиент (ctypes, Unicode)
apidocs.py извлечение справки из Scripting.chm
jscript/runtime.jse JSON-сериализатор и хелперы для скриптов
jscript/ops.jse операции (OPS.summary, OPS.bom, ...)Новая операция = функция OPS.<имя>(D, A) в ops.jse + обёртка @mcp.tool() в server.py.
Лицензия
MIT. Pulsonix — товарный знак WestDev Ltd; проект не связан с WestDev и не содержит их документации.
This server cannot be deployed
Maintenance
Related MCP Connectors
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
Protocol-native energy infrastructure orchestration for AI data centers. Provides 46 MCP tools across 8 grid protocols (IEC-61850, DNP3, Modbus, OCPP, OpenADR, IEEE 2030.5, IEC 60870-5-104, ICCP) with 5 core API primitives: connect, dispatch, settle, comply, and intel. Enables AI agents to programmatically interact with substations, grid interfaces, and energy assets for real-time workload-grid coordination.
Automate 1,000+ services from any MCP-compatible AI agent: build Applets, run actions and queries.
Create, read and live-edit visual boards, Kanban plans, Gantt timelines and diagrams with AI agents.
Related MCP Servers
- AlicenseCqualityCmaintenanceEnables AI coding assistants to control JLCPCB EDA for PCB automation, exposing 39 tools for component manipulation, routing, copper pour, DRC, and more. Includes a built-in PCB agent for orchestrating multi-step tasks.59243MIT
- AlicenseCqualityDmaintenanceEnables LLMs to inspect, edit, analyze, and render PCB layouts in real-time using the KiCad IPC API, providing tools for board configuration, footprints, tracks, zones, nets, text, shapes, dimensions, exports, screenshots, and CLI automation.1001MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to read and modify KiCAD PCB designs through the KiCAD IPC API, providing tools for board queries, footprint placement, track creation, DRC, and export.14MIT
- AlicenseBqualityBmaintenanceEnables AI assistants to interact with KiCAD for PCB design automation, including schematic editing, component placement, routing, DRC/ERC, and export.10024 npm1MIT