Model Context Protocol
Serwer MCP
agentee mcp obsługuje jeden projekt przez stdio z 30 narzędziami. Agent nadal zapisuje TOML własnymi narzędziami plików; serwer sprawdza, renderuje, trasa, symuluje i zapisuje pakiet produkcyjny, a zwraca wyrenderowane PNG bezpośrednio do rozmowy.
Dodaj go do swojego klienta
Claude Code
powłoka w projekcie
claude mcp add agentee -- agentee mcp "$PWD"Codex
~/.codex/config.toml
[mcp_servers.agentee] command = "agentee" args = ["mcp", "/path/to/project"]Cursor, Claude Desktop i większość innych klientów
.cursor/mcp.json, claude_desktop_config.json lub własny plik klienta
{ "mcpServers": { "agentee": { "command": "agentee", "args": ["mcp", "/path/to/project"] } } }
Ścieżka to katalog projektu, ten zawierający pliki TOML. Połącz serwer z skillem, który mówi agentowi, kiedy wywołać każde narzędzie i w jakiej kolejności.
Narzędzia
Czytanie projektu
format_referenceReferencja formatu plików dla płytek, symboli i footprintów, z przykładami. Przeczytaj to przed pisaniem plików.
list_itemsKażda płytka, symbol i footprint w projekcie z liczbą plików i błędów.
show_itemRozwiązany model jednego elementu jako JSON: piny z pozycjami, rozwinięte tablice padów, stackup z wyliczoną geometrią ścieżek, impedancją i analizą prądu.
namecheckWczytaj projekt i zgłoś błędy i ostrzeżenia dla każdego elementu lub dla jednego elementu.
include_infoitemdrcSprawdzanie zasad projektowania projektu PCB (layout). Przy list = true: każda zasada DRC z jej identyfikatorem, kategorią, wagą oraz informacją, czy dotyczy tej płytki i dlaczego. Bez tego: diagnostyka projektu PCB (layout) z identyfikatorem zasady. Identyfikatory zasad wpisuje się do listy wyłączonych [drc] lub tabeli wag w pliku płytki.
listnamerender_itemWyrenderuj element do PNG dokładnie tak, jak pokazuje to podgląd, i zwróć obraz.
canvas_onlyheighthidden_pinshidenameregionsave_toshowunitwidthstackupsPredefiniowane stackupy dla `stackup.preset` płytki: konstrukcje JLCPCB i PCBWay oraz ogólne konstrukcje HDI z grubością warstw i er. Filtrowanie listy lub podanie nazwy, aby uzyskać warstwy jednego predefiniowanego stackupu.
fablayersnamesearchthickness
Elementy
kicad_searchSzukaj w zainstalowanych bibliotekach KiCada po nazwie. Każde słowo musi pasować do Library:Name.
kindlimitqueryimport_kicad_symbolKonwertuj symbol KiCada (Library:Name) na .sym.toml w projekcie. with_footpoint importuje też jego domyślny footprint, lub podaj footprint, aby wybrać konkretny.
dirfootprintforcespecwith_footprintimport_kicad_footprintKonwertuj footprint KiCada (Library:Name) na .fp.toml w projekcie.
dirforcespecnew_itemNapisz plik startowy dla płytki, symbolu, footprintu, schematu, projektu PCB (layout) lub symulacji, do edycji. Symulacja zaczyna się jako uruchomienie FDTD projektu PCB (layout) lub, przy sim_kind logic, jako symulacja logiczna schematu (zegar, reset, asercja zegarowana), której sieci się przemianowuje.
dirkindnamesim_kindmodelsZnajdź modele 3D (STEP lub VRML), które nazwują footprinty projektu, pobierając brakujące modele biblioteki KiCad do cache. Zgłasza ścieżkę i liczbę trójkątów każdego modelu lub powód, dla którego jest brakujący.
Ścieżki
impedanceOblicz impedancję ścieżki na warstwie płytki dla danej szerokości (i odstępu pary) lub szerokość, która osiąga wartość docelową.
boardcoplanar_gapgaplayertargetwidthfield_solveRozwiąż przekrój ścieżki solverem pól GPU: impedancja, skuteczna przenikalność, C i L na metr, opóźnienie. Uwzględnia soldermaskę, grubość, masy współosiowe i pary różniczkowe. W granicach 0,5% od dokładnych referencji przy fine = true.
boardcoplanar_gapfinegaplayernetclassno_masksweepwidthtrace_widthMinimalna szerokość ścieżki dla danego prądu (IPC-2221).
coppercurrentinternaltemp_riseserpentinePunkty dla ścieżki, która zastępuje odcinek prosty i dodaje podaną długość jako wygięcia w jedną stronę. Wklej je do punktów ścieżki.
addamplitudefrompitchto
Projekt PCB
placeAutomatycznie rozmieść elementy projektu PCB (layout) jako szybki start: złącza i elementy montowane na krawędzi na krawędziach płytki (nigdy złącze RF i USB na jednej krawędzi, chyba że to konieczne), otwory montażowe i fiducjale w rogach, największe układy scalone blisko środka, kondensatory odsprzęgające, kryształ i rezystory podciągające każdego układu scalonego skupione przy pinach, które obsługują, rozmieszczone według ważonej długości przewodów, a następnie skorygowane na siatce 0,05 mm bez nakładania się courtyardów i udoskonalone przez symulowane wyżarzanie. Zapisuje at, rotation i side do [[footprints]] i odświeża zapisane wypełnienia. Elementy z locked = true pozostają na miejscu.
dry_runkeep_placednamepartsseedsiderouteAutomatycznie poprowadź ratsnest nazwanych sieci projektu PCB (layout) na siatce, zachowując szerokość, odstęp, warstwy i przelotki każdej klasy, i dopisz ścieżki i przelotki do pliku projektu PCB (layout). Istniejąca miedź nigdy nie jest przesuwana, chyba że ustawiono reroute.
bend_costdry_rungridlayersnamenetspairsrerouteviavia_costvia_in_padtiePołącz każdy pad SMD sieci płaszczyznowej (sieci z wpisem [[zones]]) z najbliższą warstwą płaszczyznową krótkim odcinkiem i przelotką obok padu, z dala od korpusu elementu, i dopisz je do pliku projektu PCB (layout). Używaj tego dla padów masy i zasilania zamiast prowadzenia ścieżek między nimi; `route` z globem pomija sieci płaszczyznowe.
dry_runnamenetstuneDopasuj długości w projekcie PCB (layout): wyginaj krótszą sieć każdej pary powyżej jej limitu przesunięcia oraz każdego członka grupy dopasowania poniżej celu, na najdłuższych odcinkach, gdzie wygięcia nie kolidują z żadną inną siecią, i zapisz punkty z powrotem do ścieżek.
amplitudedry_runnamenetspitchneckZwęż końce ścieżek, które wchodzą w pad węższy niż ścieżka lub łamią odstęp w pobliżu padu: koniec staje się osobnym wpisem [[tracks]] z jawną szerokością, najmniejszą z szerokości klasy, węższej strony padu i najszerszej, która zachowuje odstęp, zaokrągloną w dół do 0,01 mm, nigdy poniżej min_track_width i nigdy dłuższą niż neckdown klasy. taper stopniowo zmniejsza szerokość na krótkim łańcuchu odcinków. Zapisane wypełnienia stref są odświeżane.
dry_runnamenetstaperfillWypełnij strefy projektu PCB (layout) i zapisz miedź na końcu pliku, aby wczytywanie i podgląd pomijały wypełnienie, dopóki miedź, odstępy lub sąsiedzi strefy się nie zmienią.
namesilkPrzesuń każdą etykietę sitodruku, którą sprawdzanie flaguje, do wolnego miejsca, które sugeruje, powtarzając, aż etykiety się ustabilizują, i opcjonalnie ukryj te, które nie mają gdzie się znaleźć. Zapisuje label = { at, rotation } lub hide = true do footprintów.
dry_runhidenametestpointsDodaj pad testowy do każdej sieci, która potrzebuje dostępu sondy i nie ma go: element TestPoint (footprint TestPoint_Pad_D1.0mm, oba zapisywane do projektu, jeśli brak), footprint na stronie sondy w wolnej przestrzeni blisko miedzi sieci oraz automatycznie poprowadzona ścieżka i przelotka od miedzi sieci. Sieci domyślnie pochodzą z [test] nets projektu PCB (layout); sieci impedancyjne i parowe są pomijane.
dry_runnamenetspitchsidelayoutUruchom silnik projektu PCB (layout): skonfigurowane fazy [engine] po kolei, a następnie wynik dla każdego członu z najgorszymi naruszeniami. Fazy, które nie są jeszcze zaimplementowane, są wymieniane jako pominięte.
dry_runfromnameonlyto
Symulacja
run_simUruchom symulację (*.sim.toml): uruchomienie FDTD projektu PCB (layout) na GPU (porty na padach, modele skupione dla elementów biernych, parametry S zapisywane jako JSON i Touchstone obok specyfikacji), inny typ (dc, termiczna, kaskada, kanał, pdn) lub symulacja logiczna listy połączeń schematu (bodźce, asercje, setup i hold, VCD obok specyfikacji). Wyrenderuj symulację później, aby zobaczyć wykres lub przebiegi.
namesparamAnalizuj gotową symulację lub kaskadę: pasywność i odwzajemnialność, TDR jednego portu (impedancja w funkcji czasu z krawędzią gaussowską), tryb mieszany Sdd/Scc/Scd dla pary podanej jako IN+,IN-,OUT+,OUT- oraz krzyżowe sprzężenie FROM,TO w funkcji częstotliwości i jako skok.
namepairrisetdrxtalk
Wyjście
fabZapisz pakiet produkcyjny dla projektu PCB do folderu: Gerbery RS-274X (X2) dla każdej warstwy miedzi, maski, pasty, opisów i krawędzi, wiertła Excellon, archiwum zip z tymi plikami do przesłania, BOM (ogólny i JLCPCB), plik pick-and-place, notatki produkcyjne i rysunki montażu. Odmawia, gdy projekt PCB ma błędy.
nameoutexportZapisz projekt PCB jako jedno zgrupowanie STEP dla CAD obudowy: płytka jako bryła z nawierconymi otworami i wycięciami, wbudowany i umieszczony model STEP każdego elementu oraz modele VRML, wygenerowane i brakujące jako powierzchnie lub bryły. Spód płytki na z = 0, osie X i Y zgodne z projektem PCB, z osią Y skierowaną w górę.
nameoutpartsWyceni BOM projektu PCB lub schematu w Mouser i Farnell i znajdź tańsze zamienniki: ten sam element u innego dystrybutora, rezystory i kondensatory ceramiczne o tej samej wartości, obudowie, tolerancji, napięciu i dielektryku (nigdy obniżenie parametrów), elementy dyskretne ogólnego przeznaczenia (2N7002, S1D, SS14, SMAJ..) po nazwie i obudowie, diody sygnalizacyjne po kolorze i obudowie oraz proponowany przez dystrybutora zamiennik dla elementów wycofywanych z produkcji. Koszty są dla wymaganej ilości, z zakupem do progu cenowego, gdy to tańsze. Klucze pochodzą z ~/.config/agentee/distributors.toml ([mouser] api_key, [farnell] api_key i store).
alternativesboardsdistributorsfarnell_storenamerefs