Tersa EDA
Model Context Protocol · Engineering Ранний доступ

Tersa MCP: контролируемые инструменты симуляции для AI-агентов.

Tersa MCP — платформа раннего доступа для проверенной симуляции, измерений, ограниченной оптимизации и анализа Touchstone. Агент может запустить ngspice, подобрать номиналы или проверить S-параметры одно- и двухпортовой сети на пассивность и взаимность. В roadmap остаются harmonic balance, EM и расширенный RF-синтез. Live-инструменты превращают проверенный netlist в детерминированную схему, а выбранные трассы завершённой симуляции аккаунта — в график. Для совместимости MCP по умолчанию возвращает PNG, а SVG доступен явно. Семь live workspace-инструментов позволяют авторизованному аккаунту получать проекты, создавать и читать канонические ревизии, а также превращать типизированный инженерный запрос в редактируемый SchematicDocument 1.0 через настоящий .NET-каталог компонентов и доменные команды Tersa. Завершённая generation-задача возвращает ссылку без токена, открывающую точную ревизию в Tersa Web.

Tersa MCP · Ранний доступ
Точка протокола · работает
Дашбоардmcp.tersaeda.com
Точка протоколаhttps://mcp-api.tersaeda.com/mcp · работает
agent> Проверь этот RC low-pass netlist, выполни transient analysis, верни time и v(out), затем объясни, соответствует ли отклик номиналам. Не меняй цепь, пока не сообщишь все validation warnings.

tool  spice_validate_netlist
result valid · analysis=tran · warnings=0
tool  spice_simulate
result completed · engine=ngspice · vectors=2

Транспорт

Streamable HTTP

Авторизация

OAuth 2.1 + PKCE

Движок

ngspice worker

Платформа для инженерных агентов

Tersa MCP — больше, чем обёртка над SPICE.

Tersa MCP — единый agent-facing control plane для инженерных процессов Tersa. SPICE, типизированные измерения, ограниченная оптимизация, Touchstone 1.x и генерация редактируемых схем уже работают в production. Гармонический баланс, EM и расширенный RF-синтез остаются в roadmap.

Live beta

SPICE-симуляция

Проверяемые .op, .dc, .ac, .tran и .noise анализы в изолированном ngspice worker с ограниченными векторами и стабильной диагностикой.

Доступно сейчас

Исследование

Гармонический баланс

Periodic steady-state и нелинейный RF-анализ через типизированные и проверяемые agent-контракты.

Roadmap платформы

Планируется

EM-анализ

Расчёты электромагнитных структур, поля и диагностика solver с явными лимитами ресурсов.

Roadmap платформы

Live beta

Оптимизация

Ограниченные переменные компонентов, явные инженерные цели, детерминированные методы, polling, отмена и evidence исходной симуляции.

Доступно сейчас

Live beta

S-параметры

Ограниченный анализ одно- и двухпортовых Touchstone 1.x с импедансом, sweep, пассивностью, взаимностью и стабильной диагностикой.

Доступно сейчас

Live beta

Редактируемая схема

Типизированная спецификация материализуется настоящим .NET-каталогом и доменными командами Tersa в неизменяемую ревизию SchematicDocument 1.0.

Доступно сейчас

Пункты roadmap показывают направление продукта и пока не являются доступными MCP tools. Названия, объём и порядок релизов могут измениться.

Ранний доступ

Публичный OAuth endpoint уже работает в early access.

Production endpoint прошёл реальный OAuth → MCP → BFF → worker → ngspice E2E с PKCE, consent, rotation и revoke токенов, account usage и ограниченными векторами результата. Нужен подтверждённый аккаунт Tersa, а доступ привязан к пользователю. Codex и ChatGPT остаются целевыми клиентами до отдельной интерактивной приёмки; shared API key не является публичной схемой входа.

Коротко

Tersa MCP: три прямых ответа

Что это?

Удалённый MCP-сервис для контролируемых SPICE-задач. Агент вызывает типизированные tools вместо произвольных shell-команд, файлов сервера и разбора неограниченного вывода симулятора.

Что он умеет?

Проверять netlist, сообщать доступные анализы и лимиты, выполнять один .op, .dc, .ac, .tran или .noise анализ, возвращать векторы, опрашивать и отменять задачи, объяснять известные ошибки.

Для кого?

Для инженеров и команд с OAuth-совместимым remote MCP client, которым нужна воспроизводимая помощь агента в analog/RF-проверках. Это сфокусированный сервис, а не замена полноценному desktop EDA.

Инструменты

Двадцать пять инструментов для генерации схем, проектов, симуляции, оптимизации, RF-сетей и инженерной графики

У каждого tool узкий контракт: подготовка, выполнение, мониторинг и диагностика разделены. Задачи принадлежат авторизованному аккаунту Tersa; внутренний сервисный ключ никогда не передаётся пользователю или агенту.

spice_capabilities

Показывает поддерживаемые анализы, версии протокола, серверные лимиты и ограничения результата.

spice_validate_netlist

Проверяет входные данные без запуска ngspice и заранее блокирует опасные директивы, несколько анализов и файловые операции.

spice_submit_simulation

Создаёт асинхронную задачу с нужными векторами и опциональным idempotency key для безопасного повтора.

spice_get_simulation

Возвращает только принадлежащую текущему аккаунту задачу: статус, ограниченный результат или диагностический код.

spice_cancel_simulation

Запрашивает отмену эксперимента, который ещё стоит в очереди или уже выполняется.

spice_simulate

Запускает анализ и коротко ждёт; при необходимости возвращает job reference для дальнейшего polling.

spice_explain_failure

Преобразует стабильный код в понятную корректировку для следующей попытки агента.

spice_measure_result

Вычисляет типизированные измерения по сохранённым векторам завершённой задачи без повторного запуска ngspice.

optimize_circuit

Запустите ограниченную оптимизацию номиналов с явными переменными, диапазонами, инженерными целями, методом, бюджетом вычислений и seed.

get_optimization

Получайте прогресс своей задачи, лучшие значения, доказательства по каждой цели, готовый netlist и ссылку на исходную симуляцию.

cancel_optimization

Запросите безопасную отмену ожидающей или выполняемой оптимизации, не затрагивая задачи других аккаунтов.

network_submit_touchstone

Отправьте ограниченный Touchstone 1.x набор S-параметров одно- или двухпортовой сети в формате RI, MA или DB.

network_get_analysis

Получите для своей задачи импеданс, границы sweep, пассивность, взаимность и стабильную диагностику.

network_cancel_analysis

Отмените ожидающую Touchstone-проверку до начала обработки worker-ом.

render_circuit_schematic

Отрисуйте проверенный ограниченный SPICE netlist как детерминированную схему с метаданными связности: PNG по умолчанию или SVG по запросу.

render_simulation_plot

Постройте ограниченный PNG- или SVG-график выбранных real или complex трасс своей завершённой симуляции без повторного запуска ngspice.

get_render

Получите статус своей render-задачи, ограниченные метаданные и готовый PNG или SVG как MCP image block.

cancel_render

Отмените ожидающую render-задачу до начала обработки worker-ом.

project_list

Получите список кратких данных своих проектов без документов схемы и других project payloads.

project_get

Прочитайте ограниченные метаданные своего проекта, включая краткие данные листов, графиков и моделей, но без содержимого документов.

project_create

Идемпотентно создайте пустой проект аккаунта со стабильным clientRequestId: повтор вернёт тот же проект, а конфликтующее переиспользование будет отклонено.

project_get_document

Прочитайте ревизию канонического SchematicDocument 1.0 своего аккаунта вместе с неизменяемым идентификатором ревизии.

project_save_revision

Идемпотентно сохраните ограниченную каноническую ревизию: обновление требует актуальный baseRevisionId, а конфликтующее переиспользование отклоняется.

project_generate_circuit

Отправьте ограниченную типизированную спецификацию схемы: настоящий .NET-каталог Tersa выполнит размещение, соединения, анализы, валидацию и каноническую сериализацию.

get_project_generation

Получайте статус своей generation-задачи, неизменяемый revision ID, ограниченные счётчики и ссылку без токена для Tersa Web без сохранения документа в activity logs.

Какие типизированные измерения уже доступны в Tersa MCP?

Контракт spice_measure_result 1.8.0 вычисляет измерения по сохранённым векторам результата без повторного запуска ngspice. Сейчас доступны шестнадцать алгоритмов с явными параметрами, evidence исходного вектора и стабильными кодами ошибок.

Скалярные измерения и измерения по ряду

VALUE_AT_X, MINIMUM, MAXIMUM, MEAN, RMS, CROSSING и BANDWIDTH уже доступны для ограниченных векторов результата. CROSSING и BANDWIDTH используют явно заданный threshold, а не вычисленный по догадке уровень.

Rise time, fall time и settling window

RISE_TIME и FALL_TIME требуют явные lowThreshold и highThreshold. SETTLING_WINDOW требует конечный target и положительный абсолютный tolerance. Всем трём алгоритмам нужен настоящий вектор времени.

Sampled overshoot и undershoot

OVERSHOOT и UNDERSHOOT требуют явные target и startTime. Они возвращают sampled peak или trough и величину отклонения в точках на startTime или после него, без придуманной интерполяции экстремума.

Delay от явной точки отсчёта

DELAY требует threshold и referenceTime. На referenceTime или после него должно быть ровно одно пересечение threshold; delay равен crossingTime минус referenceTime.

Period, frequency и duty cycle

PERIOD и FREQUENCY усредняют все полные rising-to-rising циклы для явного threshold. DUTY_CYCLE использует те же циклы и требует ровно один falling crossing внутри каждого включённого цикла.

Неоднозначность приводит к явной ошибке

Отсутствующее пересечение возвращает insufficient-data failure, лишние подходящие пересечения — AMBIGUOUS_CROSSING. Tersa MCP не выбирает удобный фронт для rise/fall, DELAY, CROSSING, BANDWIDTH или periodic duty measurement.

Архитектура

Как запрос превращается в измеренные данные

MCP-адаптер сам не запускает симулятор и не подключается к БД. Публичный протокол, авторизация, состояние задач и native process разделены, поэтому у каждого слоя одна проверяемая ответственность.

1. Клиент авторизует запрос

Совместимый клиент откроет вход и consent Tersa. Email/password и Google ведут к одной модели аккаунта. OAuth scopes разделят чтение capabilities, validation и simulation.

2. MCP обрабатывает typed tool call

Адаптер валидирует JSON-RPC и аргументы, определяет пользователя, применяет origin/rate policy и вызывает BFF с отдельным внутренним credential. User token в simulation network не пересылается.

3. BFF записывает ограниченную задачу

Проверяются netlist, число анализов, векторы, owner, concurrency и idempotency. PostgreSQL хранит очередь и статусы через Hibernate/JPA, поэтому клиент может переподключиться.

4. Изолированный worker запускает ngspice

ngspice работает дочерним процессом в приватной временной папке с лимитами времени, CPU, памяти, процессов и точек результата. Структурированный ответ возвращается через BFF и MCP.

Подключение

Quick start для раннего доступа

Создайте и подтвердите аккаунт Tersa, откройте приватный dashboard и добавьте https://mcp-api.tersaeda.com/mcp в совместимый remote client. OAuth discovery, PKCE, consent, refresh rotation и revoke уже работают; приёмка каждого именованного клиента остаётся отдельной проверкой.

Пример запроса агенту

Проверь этот RC low-pass netlist, выполни transient analysis, верни time и v(out), затем объясни, соответствует ли отклик номиналам. Не меняй цепь, пока не сообщишь все validation warnings.

  1. 1

    Создайте один аккаунт Tersa

    Зарегистрируйтесь по почте или через Google. Одна identity предназначена для отдельного MCP dashboard, будущего Web CAD, mobile-приложений и MCP grants; отдельный MCP-аккаунт не нужен.

  2. 2

    Откройте MCP dashboard

    Отдельное приложение mcp.tersaeda.com — control plane для early-access статуса, подключений, grants, revoke, числа выполнений и ежедневного использования. Dashboard приватный и не индексируется.

  3. 3

    Подключите совместимый remote client

    Добавьте https://mcp-api.tersaeda.com/mcp. Клиент обнаружит metadata, начнёт OAuth 2.1 authorization code + PKCE и вернётся на свой callback после consent.

  4. 4

    Сформулируйте ограниченную задачу

    Начинайте с capabilities или validation, задавайте один анализ и только нужные векторы. Если короткого ожидания мало, агент должен продолжить polling асинхронной задачи.

Совместимость клиентов

Целевой transport — remote Streamable HTTP по HTTPS с user-scoped OAuth 2.1 и PKCE. Совместимость определяется протоколом. Публичное подтверждение появится только после initialize, tools/list, validate, simulate, poll, cancel, refresh и revoke приёмки.

  • Codex — целевой клиент; remote MCP и OAuth конфигурация предусмотрены, production acceptance ещё не завершён.
  • ChatGPT — целевой клиент для тарифов и workspace, где доступны custom remote MCP apps; production acceptance ещё не завершён.
  • Другой совместимый клиент подойдёт при поддержке заявленной MCP-версии, HTTPS remote transport, discovery, PKCE и ротации refresh token.

Аккаунт, приватность и границы выполнения

Регистрация обязательна: симуляции потребляют compute, а grant, задача, результат и usage event должны иметь владельца. Узкие контракты не позволяют превратить netlist в общий доступ к серверу.

  • Access/refresh credentials — случайные opaque values; сохраняются только SHA-256 hashes, refresh одноразовый, replay отзывает всю family.
  • Google ID token проверяется на сервере по allow-list client IDs. Client secret не попадает в Nuxt, mobile app, MCP request или netlist.
  • Разрешён один поддерживаемый анализ. File read, произвольные includes, control blocks, shell, code models и выбранные caller output paths блокируются.
  • Worker запускает ngspice вне JVM: read-only container, private temp files, dropped capabilities и явные timeout/memory/CPU/PID/output limits.
  • Логи могут содержать job ID и error code, но не полный netlist, project content, email, OAuth assertion, token или внутренний key.

Что beta представляет — и чем не является

Tersa MCP создаётся как воспроизводимый RF/analog notebook для агентов, а не unrestricted remote compute. Явные ограничения делают результат предсказуемым и безопасным.

  • Один inline анализ: .op, .dc, .ac, .tran или .noise. Произвольная интерактивная ngspice control session не входит в launch scope.
  • Нет caller-provided .include и .lib. Курируемая server-side model library потребует отдельного registry и review.
  • Результаты ограничены. Большие sweep следует сокращать до нужного диапазона, векторов и числа точек.
  • Сервис дополняет схемы, plots, measurements и tuning Tersa, но не позиционируется как замена ADS, AWR или full desktop EDA.
  • Доступность endpoint, quotas, список клиентов и beta terms могут меняться до завершения OAuth и remote acceptance.

Смотрите также

Изучите SPICE workflow, руководство по RF matching или приватный MCP dashboard. Эти страницы связывают протокол с продуктом и измерительной задачей.

Tersa MCP

Подготовьте аккаунт к раннему доступу Tersa MCP.

Создайте одну Tersa identity, изучите симулятор и следите за доступностью через dashboard. Если нужен конкретный client или analysis, расскажите нам о workflow.