agentee

Model Context Protocol

Der MCP-Server

agentee mcp bedient ein Projekt über stdio mit 30 Tools. Der Agent schreibt weiterhin TOML mit seinen eigenen Datei-Tools; der Server prüft, rendert, routet, simuliert und schreibt das Fertigungsdatenpaket und gibt gerenderte PNGs direkt in das Gespräch zurück.

Zu deinem Client hinzufügen

  • Claude Code

    eine Shell im Projekt

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

    ~/.codex/config.toml

    [mcp_servers.agentee]
    command = "agentee"
    args = ["mcp", "/path/to/project"]
  • Cursor, Claude Desktop und die meisten anderen Clients

    .cursor/mcp.json, claude_desktop_config.json oder die eigene Datei des Clients

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

Der Pfad ist das Projektverzeichnis, das die TOML-Dateien enthält. Kombiniere den Server mit dem Skill, der dem Agenten sagt, wann er jedes Tool aufruft und in welcher Reihenfolge.

Tools

Projekt lesen

format_reference

Die Dateiformat-Referenz für Platinen, Symbole und Footprints, mit Beispielen. Lies dies, bevor du Dateien schreibst.

list_items

Jede Platine, jedes Symbol und jeder Footprint im Projekt mit seinen Datein und Fehlerzählungen.

show_item

Das aufgelöste Modell eines Eintrags als JSON: Pins mit Positionen, expandierte Pad-Arrays, Lagenaufbau mit berechneter Leiterbahngeometrie, Impedanz und Stromanalyse.

name

check

Lade das Projekt und melde Fehler und Warnungen für jeden Eintrag oder für einen einzelnen Eintrag.

include_info item

drc

Design-Regel-Prüfungen eines Layouts. Mit list = true: jede DRC-Regel mit ihrer ID, Kategorie, Schwere und ob sie auf diese Platine zutrifft und warum. Ohne: die Diagnosen des Layouts, die eine Regel-ID tragen. Regel-IDs kommen in die [drc]-Deaktivierungsliste oder die Schwere-Tabelle der Platine.

list name

render_item

Rendere einen Eintrag als PNG, genau so wie der Viewer ihn anzeigt, und gib das Bild zurück.

canvas_only height hidden_pins hide name region save_to show unit width

stackups

Lagenaufbau-Voreinstellungen für die `stackup.preset` einer Platine: JLCPCB- und PCBWay-Aufbauten sowie generische HDI-Aufbauten mit Schichtdicken und er. Filtere die Liste oder gib name an, um die Schichten einer Voreinstellung zu erhalten.

fab layers name search thickness

Bauteile

import_kicad_symbol

Wandle ein KiCad-Symbol (Library:Name) in eine .sym.toml im Projekt um. with_footprint importiert auch den Standard-Footprint, oder gib footprint an, um einen auszuwählen.

dir footprint force spec with_footprint

import_kicad_footprint

Wandle einen KiCad-Footprint (Library:Name) in eine .fp.toml im Projekt um.

dir force spec

new_item

Schreibe eine Startdatei für eine Platine, ein Symbol, einen Footprint, einen Schaltplan, ein Layout oder eine Simulation, die du bearbeiten kannst. Eine Simulation startet als FDTD-Lauf eines Layouts oder mit sim_kind logic als Logiksimulation eines Schaltplans (Takt, Reset, eine getaktete Assertion), deren Netze du umbenennst.

dir kind name sim_kind

models

Finde die 3D-Modelle (STEP oder VRML), die die Footprints des Projekts benennen, und lade fehlende KiCad-Bibliotheksmodelle in den Cache. Meldet für jedes Modell den Pfad und die Dreieckszahl oder warum es fehlt.

Leiterbahnen

impedance

Berechne die Impedanz einer Leiterbahn auf einer Platinenlage für eine Breite (und Paarabstand) oder die Breite, die ein Ziel trifft.

board coplanar_gap gap layer target width

field_solve

Löse einen Leiterbahnquerschnitt mit dem GPU-Feldlöser: Impedanz, effektive Permittivität, C und L pro Meter, Laufzeit. Enthält Lötstoppmaske, Dicke, koplanare Masse und Differentialpaare. Innerhalb von 0,5 % exakter Referenzen bei fine = true.

board coplanar_gap fine gap layer netclass no_mask sweep width

trace_width

Minimale Leiterbahnbreite für einen Strom (IPC-2221).

copper current internal temp_rise

serpentine

Punkte für eine Leiterbahn, die ein gerades Segment ersetzt und eine gegebene Länge als Trompeten-Bögen auf eine Seite hinzufügt. Füge sie in die Punkte der Leiterbahn ein.

add amplitude from pitch to

Layout

place

Platziere die Komponenten des Layouts automatisch als schnellen Start: Steckverbinder und Edge-Mount-Komponenten an den Platinenrändern (nie ein HF- und ein USB-Steckverbinder an einem Rand, es sei denn, es muss sein), Montagebohrungen und Fiducials in den Ecken, die größten Chips in der Nähe des Zentrums, die Entkopplungskondensatoren, der Oszillator und die Pull-ups jedes ICs gebündelt an den Pins, die sie versorgen, platziert nach gewichteter Drahtlänge, dann legalisiert auf einem 0,05-mm-Raster ohne Courtyard-Überlappungen und verfeinert durch simulated annealing. Schreibt at, rotation und side in [[footprints]] und aktualisiert die gespeicherten Füllungen. Komponenten mit locked = true bleiben an ihrem Platz.

dry_run keep_placed name parts seed side

route

Route das Ratsnest der benannten Netze eines Layouts automatisch auf einem Raster, wobei die Breite, der Abstand, die Schichten und das Via jeder Netzklasse beibehalten werden, und füge die Leiterbahnen und Vias der Layout-Datei hinzu. Vorhandenes Kupfer wird nie verschoben, außer reroute ist gesetzt.

bend_cost dry_run grid layers name nets pairs reroute via via_cost via_in_pad

tie

Verbinde jedes SMD-Pad eines Flächen-Netzes (ein Netz mit einem [[zones]]-Eintrag) mit der nächsten Flächenschicht über einen kurzen Stummel und ein Via neben dem Pad, weg vom Gehäuse der Komponente, und füge sie der Layout-Datei hinzu. Verwende dies für Masse- und Versorgungspads statt Leiterbahnen dazwischen zu routen; `route` mit einem Glob überspringt Flächen-Netze.

dry_run name nets

tune

Gleichlängenabgleich eines Layouts: Meander das kurze Netz jedes Paares über seine Skew-Grenze und jedes Match-Gruppen-Mitglied, das unter seinem Ziel liegt, auf den längsten Segmenten, wo die Bögen jedes andere Netz frei lassen, und schreibe die Punkte zurück in die Leiterbahnen.

amplitude dry_run name nets pitch

neck

Verjünge Leiterbahnenden, die in ein Pad einlaufen, das schmaler ist als die Leiterbahn, oder den Abstand in der Nähe des Pads verletzen: Das Ende wird zu einem separaten [[tracks]]-Eintrag mit expliziter Breite, dem kleinsten Wert aus der Netzklasse-Breite, der kleineren Pad-Seite und der größten Breite, die den Abstand hält, abgerundet auf 0,01 mm, nie unter min_track_width und nie länger als der Netzklasse-Verjüngung. taper verringert die Breite über eine kurze Kette von Segmenten. Gespeicherte Kupferflächenfüllungen werden aktualisiert.

dry_run name nets taper

fill

Fülle die Kupferflächen eines Layouts und speichere das Kupfer am Ende der Datei, damit Ladevorgänge und der Viewer die Füllung überspringen, bis sich das Kupfer, die Abstände oder die Nachbarn der Fläche ändern.

name

silk

Verschiebe jede Bestückungsdruck-Referenz, die die Prüfung markiert, an den freien Platz, den sie vorschlägt, wiederholt, bis die Beschriftungen sich einpendeln, und verstecke optional die, die keinen Platz haben. Schreibt label = { at, rotation } oder hide = true in die Footprints.

dry_run hide name

testpoints

Füge ein Testpad zu jedem Netz hinzu, das Probe-Zugang benötigt und keines hat: eine TestPoint-Komponente (TestPoint_Pad_D1.0mm-Footprint, beide in das Projekt geschrieben, falls fehlend), verbunden mit dem Netz im Schaltplan-Blatt, das es auflistet, ein Footprint auf der Probe-Seite in freiem Raum in der Nähe des Netzkupfers und eine automatisch geroutete Leiterbahn und ein Via vom Netzkupfer. Netze standardmäßig auf die [test]-Netze des Layouts; Impedanz- und Paar-Netze werden übersprungen.

dry_run name nets pitch side

layout

Führe die Layout-Engine auf einem Layout aus: die konfigurierten [engine]-Phasen in der Reihenfolge, dann die Punktzahl pro Term mit den schlimmsten Übertretungen. Noch nicht implementierte Phasen werden als übersprungen aufgelistet.

dry_run from name only to

Simulation

run_sim

Führe eine Simulation (*.sim.toml) aus: ein FDTD-Lauf eines Layouts auf der GPU (Ports auf Pads, Lumped-Modelle für passive Komponenten, S-Parameter als JSON und Touchstone neben der Spezifikation gespeichert), eine andere Art (dc, thermal, cascade, channel, pdn) oder eine Logiksimulation der Schaltplan-Netlist (Stimuli, Assertions, Setup und Hold, ein VCD neben der Spezifikation). Rendere die Simulation anschließend, um den Plot oder die Wellenformen zu sehen.

name

sparam

Analysiere eine fertige Simulation oder Kaskade: Passivität und Reziprozität, ein TDR eines Ports (Impedanz über die Zeit mit Gaußkante), Mixed-Mode Sdd/Scc/Scd für ein Paar, angegeben als IN+,IN-,OUT+,OUT-, und Störsignal FROM,TO im Frequenzbereich und als Sprungantwort.

name pair rise tdr xtalk

Ausgabe

fab

Schreibe das Fertigerpaket für ein Layout in einen Ordner: RS-274X Gerber (X2) pro Kupfer-, Lötstoppmaske-, Lötlot-, Bestückungsdruck- und Kantenlage, Excellon-Bohrungen, ein Zip-Archiv davon zum Hochladen, BOM (generisch und JLCPCB), Pick-and-Place, Fertigerhinweise und Montagezeichnungen. Verweigert, solange das Layout Fehler hat.

name out

export

Schreibe ein Layout als eine STEP-Versammlung für Gehäuse-CAD: die Platine als Festkörper mit ihren gebohrten Löchern und Ausschnitten, das STEP-Modell jedes Bauteils eingebettet und platziert, sowie VRML, generierte und fehlende Modelle als Flächen oder Boxen. Platinenunterseite bei z = 0, X und Y wie im Layout mit Y nach oben.

name out

parts

Bewerte die BOM eines Layouts oder Schaltplans bei Mouser und Farnell und finde günstigere Äquivalente: denselben Bauteil beim anderen Distributor, Widerstände und Keramikkondensatoren mit gleichem Wert, Gehäuse, Toleranz, Spannung und Dielektrikum (nie ein Downgrade), generische diskrete Bauteile (2N7002, S1D, SS14, SMAJ..) nach Name und Gehäuse, Anzeigedioden nach Farbe und Gehäuse, und den vom Distributor vorgeschlagenen Ersatz für Bauteile, die auslaufen. Kosten gelten für die benötigte Stückzahl, mit Kauf bis zum Preisstufenbruch, wenn das günstiger ist. Schlüssel kommen aus ~/.config/agentee/distributors.toml ([mouser] api_key, [farnell] api_key und store).

alternatives boards distributors farnell_store name refs