Tersa EDA
Model Context Protocol · Engineering Early access

Tersa MCP: 엔지니어링 에이전트를 위한 제어형 시뮬레이션 도구

Tersa MCP는 검증된 simulation, 측정, 제한형 최적화 및 Touchstone inspection을 제공합니다. agent는 ngspice 실행, 부품 값 최적화 또는 1-port/2-port S-parameter의 passivity와 reciprocity 검사를 수행할 수 있습니다. harmonic balance, EM 및 고급 RF synthesis는 roadmap에 남아 있습니다. live image tool은 검증된 netlist를 deterministic 회로도로, account 소유의 완료된 simulation에서 선택한 trace를 plot으로 변환합니다. MCP는 폭넓은 호환성을 위해 기본적으로 PNG를 반환하며 SVG도 명시적으로 선택할 수 있습니다. 7개의 live workspace tool은 project 조회, canonical revision 생성·읽기, typed engineering request를 실제 Tersa .NET component catalog와 domain command를 통해 편집 가능한 SchematicDocument 1.0으로 변환합니다. 완료된 generation job은 정확한 revision을 Tersa Web에서 여는 token-free link를 반환합니다.

Tersa MCP · Early access
프로토콜 엔드포인트 · 운영 중
대시보드mcp.tersaeda.com
프로토콜 엔드포인트https://mcp-api.tersaeda.com/mcp · 운영 중
agent> 이 RC low-pass netlist를 검증하고 transient analysis를 실행해 time과 v(out)을 반환한 뒤 부품 값과 일치하는지 설명하세요. Warning을 보고하기 전에 회로를 바꾸지 마세요.

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 wrapper에 그치지 않습니다.

SPICE simulation, typed measurement, 제한형 optimization, Touchstone 1.x, 편집 가능한 회로 생성은 production에서 운영 중입니다. harmonic balance, EM, 더 넓은 RF synthesis는 roadmap입니다.

Live beta

SPICE 시뮬레이션

격리된 ngspice worker에서 검증된 .op/.dc/.ac/.tran/.noise 분석과 제한된 vectors, 안정적 진단을 제공합니다.

현재 사용 가능

연구

Harmonic balance

Typed contract를 통한 periodic steady-state 및 nonlinear RF 분석입니다.

플랫폼 roadmap

계획

EM 분석

명시적 리소스 제한을 갖춘 전자기 job, field 결과와 solver 진단입니다.

플랫폼 roadmap

Live beta

최적화

제한형 부품 변수, 명시적 goal, deterministic method, 진행 조회, 취소, source simulation evidence를 제공합니다.

현재 사용 가능

Live beta

S-parameters

1-port/2-port Touchstone 1.x를 bounded하게 검사하고 impedance, sweep, passivity, reciprocity 및 stable diagnostics를 제공합니다.

현재 사용 가능

Live beta

편집 가능한 회로 생성

typed spec을 실제 Tersa .NET component catalog와 domain command로 immutable SchematicDocument 1.0 revision에 materialize합니다.

현재 사용 가능

Roadmap 항목은 제품 방향이며 현재 사용할 수 있는 MCP tools가 아닙니다. 범위와 출시 순서는 변경될 수 있습니다.

Early access

Public OAuth endpoint가 early access로 운영 중입니다.

Production endpoint는 OAuth → MCP → BFF → worker → ngspice 실제 E2E와 PKCE, consent, token rotation/revoke, account usage, bounded vector를 검증했습니다. 확인된 Tersa account가 필요합니다. Codex와 ChatGPT는 interactive acceptance가 기록될 때까지 target client이며 shared API key는 공개 인증 방식이 아닙니다.

핵심 답변

세 가지 답으로 보는 Tersa MCP

무엇인가요?

통제된 SPICE 작업을 위한 remote MCP service입니다. 에이전트는 임의 shell, server file, 무제한 출력 대신 typed tools를 호출합니다.

무엇을 할 수 있나요?

Netlist 검증, limits 조회, 단일 .op/.dc/.ac/.tran/.noise 분석, vectors 반환, job poll/cancel, 알려진 오류 설명을 지원합니다.

누구를 위한가요?

OAuth 지원 remote MCP client로 재현 가능한 analog/RF 검사를 원하는 엔지니어용입니다. 완전한 desktop EDA 대체품이 아닙니다.

도구

회로 생성, project, simulation, 최적화, RF network 및 engineering visual을 위한 25개 도구

준비, 실행, 모니터링, 진단을 좁은 contract로 분리합니다. 모든 job은 인증된 Tersa account 소유이며 internal credential은 client에 노출되지 않습니다.

spice_capabilities

지원 분석, protocol, limits와 result constraints를 읽습니다.

spice_validate_netlist

ngspice 없이 unsafe directives, 복수 분석, file operations를 차단합니다.

spice_submit_simulation

vectors와 선택적 idempotency key로 비동기 job을 만듭니다.

spice_get_simulation

현재 account 소유 job의 status, bounded result, diagnostic만 반환합니다.

spice_cancel_simulation

대기 또는 실행 중인 실험의 cancel을 요청합니다.

spice_simulate

짧게 기다린 뒤 result 또는 polling reference를 반환합니다.

spice_explain_failure

stable error code를 다음 시도용 수정 안내로 변환합니다.

spice_measure_result

완료된 job의 보존된 vectors에서 ngspice 재실행 없이 typed measurements를 계산합니다.

optimize_circuit

명시적 변수, 범위, engineering goal, method, 평가 budget, deterministic seed로 제한형 부품 값 최적화를 제출합니다.

get_optimization

account 소유 최적화를 조회해 진행률, best values, goal별 evidence, 구체화 netlist, source simulation lineage를 받습니다.

cancel_optimization

다른 account 작업에 영향 없이 queued 또는 running 최적화의 협조적 취소를 요청합니다.

network_submit_touchstone

RI, MA 또는 DB 형식의 1-port/2-port Touchstone 1.x S-parameter 데이터를 제한형 job으로 제출합니다.

network_get_analysis

account 소유 job에서 reference impedance, sweep 범위, passivity, reciprocity 및 stable diagnostics를 조회합니다.

network_cancel_analysis

worker 실행 전에 queued Touchstone inspection을 취소합니다.

render_circuit_schematic

검증된 bounded SPICE netlist를 connectivity metadata가 포함된 deterministic 회로도로 render합니다. 기본 형식은 PNG이며 SVG도 선택할 수 있습니다.

render_simulation_plot

account 소유의 완료된 simulation에서 선택한 real 또는 complex trace를 ngspice 재실행 없이 bounded PNG 또는 SVG plot으로 render합니다.

get_render

account 소유 render job을 조회해 bounded metadata와 완료된 PNG 또는 SVG를 MCP image block으로 받습니다.

cancel_render

worker 실행 전에 queued render를 취소합니다.

project_list

schematic document나 다른 project payload를 반환하지 않고 account 소유 project summary를 나열합니다.

project_get

document 내용 없이 account 소유 project의 sheet, plot, model summary를 포함한 bounded metadata를 읽습니다.

project_create

stable clientRequestId로 빈 account 소유 project를 idempotent하게 생성합니다. replay는 같은 project를 반환하고 충돌하는 재사용은 거부됩니다.

project_get_document

account 소유 canonical SchematicDocument 1.0 revision을 immutable revision ID와 함께 읽습니다.

project_save_revision

bounded canonical revision을 idempotent하게 저장합니다. update에는 최신 baseRevisionId가 필요하며 충돌하는 replay는 거부됩니다.

project_generate_circuit

bounded typed circuit spec을 제출해 실제 Tersa .NET component catalog, placement, conductor, analysis, validation 및 canonical serialization으로 materialize합니다.

get_project_generation

account 소유 generation job을 조회해 document를 activity log에 저장하지 않고 immutable revision ID, bounded count, token-free Tersa Web editor URL을 받습니다.

Tersa MCP에서 현재 사용할 수 있는 typed measurement는 무엇인가요?

spice_measure_result tool contract 1.8.0은 ngspice를 다시 실행하지 않고 보존된 result vectors를 평가합니다. 현재 16개 algorithm이 명시적 parameters, source-vector evidence, 안정적인 failure code와 함께 제공됩니다.

Scalar 및 series measurement

VALUE_AT_X, MINIMUM, MAXIMUM, MEAN, RMS, CROSSING, BANDWIDTH를 제한된 result vectors에 사용할 수 있습니다. CROSSING과 BANDWIDTH는 추정값이 아닌 명시적 threshold를 사용합니다.

Transient rise, fall, settling

RISE_TIME과 FALL_TIME에는 명시적 lowThreshold/highThreshold가 필요합니다. SETTLING_WINDOW에는 유한 target과 양의 absolute tolerance가 필요합니다. 세 algorithm 모두 실제 time vector를 요구합니다.

Sampled overshoot 및 undershoot

OVERSHOOT와 UNDERSHOOT에는 명시적 target/startTime이 필요합니다. startTime 시점 또는 이후의 sampled peak/trough와 excursion amount를 반환하며 보간된 extremum을 추측하지 않습니다.

명시적 기준 시점으로부터의 delay

DELAY에는 threshold와 referenceTime이 필요합니다. referenceTime 시점 또는 이후에 threshold crossing이 정확히 하나 있어야 하며 delay는 crossingTime에서 referenceTime을 뺀 값입니다.

Period, frequency, duty cycle

PERIOD와 FREQUENCY는 명시적 threshold에서 완전한 rising-to-rising cycle 전체의 평균을 냅니다. DUTY_CYCLE은 같은 cycle을 사용하며 각 포함 cycle 안에 falling crossing이 정확히 하나 필요합니다.

모호한 파형은 명시적으로 실패

Crossing이 없으면 insufficient-data, eligible crossing이 더 있으면 AMBIGUOUS_CROSSING을 반환합니다. Rise/fall, DELAY, CROSSING, BANDWIDTH, periodic duty에서 편리한 edge를 임의 선택하지 않습니다.

아키텍처

요청이 측정 데이터가 되는 과정

MCP adapter는 ngspice나 DB에 직접 접근하지 않습니다. Public protocol, identity, job state, native process를 분리합니다.

1. Client authorization

Tersa sign-in과 consent를 열고 email/password와 Google을 한 account로 연결합니다. Scopes는 read, validate, simulate를 구분합니다.

2. Typed tool call

JSON-RPC, arguments, origin, rate를 검증하고 user token 대신 별도 internal credential로 BFF를 호출합니다.

3. Bounded job

BFF가 netlist, analysis, vectors, owner, concurrency, idempotency를 검사하고 Hibernate/JPA로 저장합니다.

4. Isolated ngspice

Worker가 private directory에서 child process를 실행하고 time, CPU, memory, PID, result points를 제한합니다.

연결

Early-access quick start

Tersa account를 확인하고 private dashboard를 연 뒤 호환 remote client에 https://mcp-api.tersaeda.com/mcp를 추가합니다. Discovery, PKCE, consent, refresh rotation, revoke가 운영 중입니다.

에이전트 요청 예시

이 RC low-pass netlist를 검증하고 transient analysis를 실행해 time과 v(out)을 반환한 뒤 부품 값과 일치하는지 설명하세요. Warning을 보고하기 전에 회로를 바꾸지 마세요.

  1. 1

    Tersa account 만들기

    Email 또는 Google로 등록합니다. 같은 identity를 web, 향후 Web CAD, mobile, MCP grants에 사용합니다.

  2. 2

    MCP dashboard 열기

    Status, connections, grants, revoke, executions, daily usage를 관리하는 private control plane입니다.

  3. 3

    Remote client 연결

    https://mcp-api.tersaeda.com/mcp를 추가하고 OAuth 2.1 authorization code + PKCE를 완료합니다.

  4. 4

    Bounded task 요청

    Capabilities 또는 validation부터 시작하고 분석 하나와 필요한 vectors만 요청하며 긴 job은 polling합니다.

Client compatibility

HTTPS remote Streamable HTTP와 user-scoped OAuth 2.1 + PKCE가 목표입니다. initialize, tools/list, validate, simulate, poll, cancel, refresh, revoke 검증 후 지원을 공표합니다.

  • Codex는 목표 client이며 production acceptance는 아직입니다.
  • ChatGPT는 custom remote MCP apps 지원 plan/workspace에서 목표이며 acceptance는 아직입니다.
  • 다른 client도 MCP, HTTPS, discovery, PKCE, refresh rotation을 지원하면 가능합니다.

Account, privacy, execution boundaries

Compute, grants, jobs, results의 owner를 정하기 위해 등록이 필수입니다. Netlist가 일반 server access가 되지 않도록 제한합니다.

  • Opaque tokens는 SHA-256 hash만 저장하며 replay 시 family를 revoke합니다.
  • Google ID token은 server-side 검증하며 client secret은 Nuxt, mobile, MCP에 넣지 않습니다.
  • 분석 하나만 허용하고 file reads, arbitrary include, control, shell, code models를 막습니다.
  • ngspice는 격리 환경과 resource limits로 실행합니다.
  • Logs에 full netlist, email, OAuth assertions, tokens, keys를 남기지 않습니다.

Beta 범위

에이전트를 위한 재현 가능한 RF/analog notebook이며 unrestricted remote compute가 아닙니다.

  • 요청당 .op/.dc/.ac/.tran/.noise 분석 하나입니다.
  • Caller 제공 .include/.lib는 지원하지 않습니다.
  • Sweeps와 results는 필요한 범위로 제한합니다.
  • ADS, AWR 또는 완전한 desktop EDA를 대체하지 않습니다.
  • Endpoint, quota, client list, beta terms는 바뀔 수 있습니다.

관련 콘텐츠

SPICE workflow, RF matching guide 또는 private MCP dashboard를 확인하세요.

Tersa MCP

Tersa MCP early access를 준비하세요.

Tersa identity를 만들고 simulator를 살펴본 뒤 dashboard에서 공개 상태를 확인하세요.