agentee

Model Context Protocol

Il server MCP

agentee mcp serve un progetto tramite stdio con 30 strumenti. L'agente scrive ancora TOML con i propri strumenti di file; il server verifica, renderizza, instrada, simula e scrive il pacchetto per il produttore, e restituisce i PNG renderizzati direttamente nella conversazione.

Aggiungilo al tuo client

  • Claude Code

    una shell nel progetto

    claude mcp add agentee -- agentee mcp "$PWD"
  • Codex

    ~/.codex/config.toml

    [mcp_servers.agentee]
    command = "agentee"
    args = ["mcp", "/path/to/project"]
  • Cursor, Claude Desktop e la maggior parte degli altri client

    .cursor/mcp.json, claude_desktop_config.json o il file proprio del client

    {
      "mcpServers": {
        "agentee": {
          "command": "agentee",
          "args": ["mcp", "/path/to/project"]
        }
      }
    }

Il percorso è la directory del progetto, quella che contiene i file TOML. Abbina il server con la skill, che dice all'agente quando chiamare ogni tool e in che ordine.

Strumenti

Lettura del progetto

format_reference

Il riferimento del formato file per schede, simboli e footprint, con esempi. Leggi questo prima di scrivere file.

list_items

Ogni scheda, simbolo e footprint nel progetto con il suo file e i conteggi di errori.

show_item

Il modello risolto di un elemento in JSON: pin con posizioni, array di piazzole espansi, stackup con geometria delle piste calcolata, impedenza e analisi della corrente.

name

check

Carica il progetto e riporta errori e avvisi per ogni elemento, o per un singolo elemento.

include_info item

drc

Verifiche delle regole di progettazione di un layout. Con list = true: ogni regola DRC con il suo id, categoria, gravità e se si applica a questa scheda e perché. Senza: le diagnostiche del layout che portano un id di regola. Gli id delle regole vanno nella lista di disattivazione [drc] o nella tabella di gravità della scheda.

list name

render_item

Rende un elemento in PNG esattamente come lo mostra il visualizzatore e restituisce l'immagine.

canvas_only height hidden_pins hide name region save_to show unit width

stackups

Preset di stackup per lo `stackup.preset` di una scheda: configurazioni JLCPCB e PCBWay e configurazioni HDI generiche con spessori dei layer e er. Filtra l'elenco, o fornisci name per ottenere i layer di un preset.

fab layers name search thickness

Componenti

import_kicad_symbol

Converte un simbolo KiCad (Library:Name) in un .sym.toml nel progetto. with_footprint importa anche il suo footprint predefinito, o fornisci footprint per sceglierne uno.

dir footprint force spec with_footprint

import_kicad_footprint

Converte un footprint KiCad (Library:Name) in un .fp.toml nel progetto.

dir force spec

new_item

Scrivi un file di partenza per una scheda, un simbolo, un footprint, uno schema, un layout o una simulazione, da cui modificare. Una simulazione parte come una simulazione FDTD di un layout, o con sim_kind logic come una simulazione logica di uno schema (orologio, reset, un'assertion pilotata) le cui net puoi rinominare.

dir kind name sim_kind

models

Trova i modelli 3D (STEP o VRML) che i footprint del progetto indicano, scaricando i modelli mancanti delle librerie KiCad nella cache. Segnala il percorso e il numero di triangoli di ogni modello, oppure perché manca.

Piste

impedance

Calcola l'impedenza di una pista su un layer della scheda per una larghezza (e distanza di coppia), oppure la larghezza che raggiunge un valore target.

board coplanar_gap gap layer target width

field_solve

Risolvi una sezione trasversale di una pista con il solver di campo GPU: impedenza, permittività effettiva, C e L per metro, ritardo. Include solder mask, spessore, masse coplanari e coppie differenziali. Entro lo 0,5% dai riferimenti esatti con fine = true.

board coplanar_gap fine gap layer netclass no_mask sweep width

trace_width

Larghezza minima di pista per una corrente (IPC-2221).

copper current internal temp_rise

serpentine

Punti per una pista che sostituisce un segmento rettilineo e aggiunge una lunghezza data come gobbe trombone su un lato. Incollali nei punti della pista.

add amplitude from pitch to

Layout

place

Posiziona automaticamente i componenti del layout come avvio rapido: connettori e componenti a bordo sulla bordatura della scheda (mai un connettore RF e un connettore USB sullo stesso bordo a meno che non sia necessario), fori di montaggio e fiduciali negli angoli, i chip più grandi vicino al centro, i condensatori di disaccoppiamento, il cristallo e i pull-up di ogni IC raggruppati ai pin che servono, posizionati per lunghezza di filo ponderata, poi legalizzati su una griglia di 0,05 mm senza sovrapposizioni di courtyard e rifiniti con simulated annealing. Scrive at, rotation e side in [[footprints]] e aggiorna i riempimenti salvati. I componenti con locked = true restano fermi.

dry_run keep_placed name parts seed side

route

Instrada automaticamente il ratsnest delle net nominate di un layout su una griglia, mantenendo la larghezza, il distacco, i layer e la via di ogni classe, e aggiunge le piste e le vie al file di layout. Il rame esistente non viene mai spostato a meno che reroute non sia impostato.

bend_cost dry_run grid layers name nets pairs reroute via via_cost via_in_pad

tie

Collega ogni piazzola SMD di una net di piano (una net con un'entry [[zones]]) al layer di piano più vicino con uno stub corto e una via accanto alla piazzola, lontano dal corpo del componente, e aggiungili al file di layout. Usa questo per le piazzole di massa e alimentazione invece di instradare piste tra di esse; `route` con un glob salta le net di piano.

dry_run name nets

tune

Abbina la lunghezza di un layout: meandra la net corta di ogni coppia oltre il suo limite di skew e ogni membro del gruppo di abbinamento corto rispetto al suo target, sui segmenti più lunghi dove le gobbe lasciano spazio a ogni altra net, e scrive i punti di nuovo nelle piste.

amplitude dry_run name nets pitch

neck

Riduce le estremità delle piste che entrano in una piazzola più stretta della pista o che violano il distacco vicino alla piazzola: l'estremità diventa un'entry [[tracks]] separata con una larghezza esplicita, la più piccola tra la larghezza della classe, il lato più corto della piazzola e la più larga che mantiene il distacco, arrotondata per difetto a 0,01 mm, mai sotto min_track_width e mai più lunga del neckdown della classe. taper riduce la larghezza su una corta catena di segmenti. I riempimenti di area salvati vengono aggiornati.

dry_run name nets taper

fill

Riempe le aree di un layout e salva il rame alla fine del suo file, in modo che i caricamenti e il visualizzatore saltino il riempimento finché il rame, i distacchi o i vicini dell'area non cambiano.

name

silk

Sposta ogni riferimento serigrafico che la verifica segnala nel punto libero che suggerisce, ripetendo finché le etichette non si stabilizzano, e opzionalmente nasconde quelle che non hanno spazio. Scrive label = { at, rotation } o hide = true nei footprint.

dry_run hide name

testpoints

Aggiunge una piazzola di test a ogni net che ha bisogno di accesso alla sonda e non ne ha: un componente TestPoint (footprint TestPoint_Pad_D1.0mm, entrambi scritti nel progetto se mancanti) collegato alla net nella foglio di schema che la elenca, un footprint sul lato della sonda in spazio libero vicino al rame della net, e una pista e una via instradate automaticamente dal rame della net. Le net predefinite sono le [test] nets del layout; le net di impedenza e di coppia sono saltate.

dry_run name nets pitch side

layout

Esegue il motore di layout su un layout: le fasi [engine] configurate in ordine, poi il punteggio per termine con i peggiori trasgressori di ciascuno. Le fasi non ancora implementate sono elencate come saltate.

dry_run from name only to

Simulazione

run_sim

Esegue una simulazione (*.sim.toml): una simulazione FDTD di un layout sulla GPU (porti sulle piazzole, modelli lumped per i passivi, parametri S salvati come JSON e Touchstone accanto alla specifica), un altro tipo (dc, termico, cascata, canale, pdn), o una simulazione logica della lista di net dello schema (stimoli, assertion, setup e hold, un VCD accanto alla specifica). Rendi la simulazione dopo per vedere il grafico o le forme d'onda.

name

sparam

Analizza una simulazione o un cascade completi: passività e reciprocità, TDR di un singolo net (impedenza in funzione del tempo con fronte gaussiano), S-parameters in modalità mista Sdd/Scc/Scd per una coppia specificata come IN+,IN-,OUT+,OUT-, e crosstalk FROM,TO in frequenza e come risposta al gradino.

name pair rise tdr xtalk

Output

fab

Scrivi il pacchetto di produzione per un layout in una cartella: Gerber RS-274X (X2) per ogni layer di rame, solder mask, pasta, serigrafia e bordo, forature Excellon, un zip di questi file per il caricamento, BOM (generica e JLCPCB), pick-and-place, note di produzione e disegni di assemblaggio. Rifiuta se il layout ha errori.

name out

export

Scrivi un layout come un singolo assemblaggio STEP per la CAD dell'involucro: la scheda come solido con i suoi fori e le sue incisioni, il modello STEP di ogni componente incorporato e posizionato, e i modelli VRML, generati e mancanti come superfici o box. Fondo della scheda a z = 0, X e Y come nel layout con Y verso l'alto.

name out

parts

Calcola il costo della BOM di un layout o di uno schema presso Mouser e Farnell e trova equivalenti più economici: lo stesso componente presso l'altro distributore, resistori e condensatori ceramici con stesso valore, footprint, tolleranza, tensione e dielettrico (mai un downgrade), componenti discreti generici (2N7002, S1D, SS14, SMAJ..) per nome e footprint, LED indicatori per colore e footprint, e la sostituzione suggerita dal distributore per i componenti in fase di obsolescenza. I costi sono alla quantità necessaria, acquistando fino a una soglia di prezzo se risulta più economico. Le chiavi provengono da ~/.config/agentee/distributors.toml ([mouser] api_key, [farnell] api_key e store).

alternatives boards distributors farnell_store name refs