Questa MCP
by chinn-choppa
README.md
# questa-mcp
[English](README.en.md) · [Участие в разработке](CONTRIBUTING.md) · [Безопасность](SECURITY.md)
Локальный MCP-сервер для детерминированного запуска регрессий и анализа симуляций Questa/ModelSim.
> **Статус: bootstrap / экспериментальный (0.0.1).** Проект содержит проверяемый каркас MCP, безвредное обнаружение установленного инструмента и ограниченный разбор текстовых диагностик. Он **пока не запускает** синтез или симуляцию и не может подтверждать работоспособность коммерческих инструментов. См. [план](docs/ROADMAP.md).
## Для чего нужен
Поддержка существующих DO/Tcl-сценариев, машинно-читаемых результатов и работы с осциллограммами.
**Принципы:** отдельно от `agent-dev-toolkit`; свободная установка из исходников; никаких встроенных EDA-бинарников, лицензий, облачных запросов и непрошеных изменений файлов проекта. Каждая команда имеет ограниченную область доступа и возвращает наблюдаемые доказательства, а не догадки.
## Быстрый старт
Нужен Python 3.11+ и установленный `uv`. Для самого MCP-сервера нужен совместимый MCP SDK v2.3.0; SDK будет установлен в локальное виртуальное окружение при выполнении `uv sync`.
```bash
git clone https://github.com/chinn-choppa/questa-mcp.git
cd questa-mcp
uv sync
uv run questa-mcp
```
Локальная конфигурация клиента MCP (пример структуры; конкретный путь к `uv`/проекту и формат конфигурации зависят от клиента):
```json
{
"mcpServers": {
"questa-mcp": {
"command": "uv",
"args": ["--directory", "/absolute/path/to/questa-mcp", "run", "questa-mcp"]
}
}
}
```
Это пример для клиентов с ключом `mcpServers`; Codex и OpenCode используют собственные схемы. Все пути должны указывать на доверенную локальную копию.
## Доступные инструменты прототипа
| Tool | Назначение | Граница |
| --- | --- | --- |
| `server_info` | Идентификатор сервера, состояние, ограничения | Только чтение |
| `tool_status` | Поиск установленного `vsim` или пути из переменной `QUESTA_MCP_EXECUTABLE` | Не запускает EDA-продукт |
| `parse_diagnostics` | Выделение диагностических сообщений из переданного текста | До 1 МиБ и 200 записей |
Первый выпуск только готовит интерфейс: запуск лицензируемой симуляции и интерпретация coverage будут добавлены после безопасной приёмки.
## Воспроизводимые проверки
```bash
python -m unittest discover -s tests -v
python -m compileall -q src tests
```
После `uv sync` проверьте запуск `uv run questa-mcp` с MCP Inspector или настоящим MCP-клиентом. Одна лишь установка или `tools/list` **не доказывает** успешное выполнение EDA-команды. До появления соответствующих реализаций состояние таких проверок — `NOT_RUN`.
## Ограничения
Questa/ModelSim — коммерческие инструменты. Запуск может потребовать лицензии; сервер не поставляет симулятор, модель лицензирования и конфиденциальные RTL-исходники.
См. [архитектуру](docs/ARCHITECTURE.md), [совместимость](docs/COMPATIBILITY.md), [контракт результатов](docs/TOOL_CONTRACT.md), [тестирование](docs/TESTING.md) и [дорожную карту](docs/ROADMAP.md).
## Лицензия
Apache License 2.0. Настоящий репозиторий не связан с производителем Siemens Questa / ModelSim и не является его официальным продуктом.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessSyncing