AI · MCP · Flutter · Android · React · Go
Partbench
Katalog części elektronicznych do domowego laboratorium: ile czego jest, gdzie leży, czego brakuje do projektu i gdzie to dokupić. Części dodaje się ze zdjęcia albo opisu, a Claude i ChatGPT mają do katalogu dostęp przez serwer MCP.
two71.io/projekty/partbench/ → (strona projektu)Wyzwanie
Kilkaset rodzajów części w szufladach, pudełkach i torebkach z TME, Botlandu i AliExpress. Arkusz z inwentarzem po miesiącu przestaje się zgadzać, bo każda zmiana wymaga przepisania. Efekt jest zawsze ten sam: drugie zamówienie stabilizatora, który leżał w szufladzie 5, i projekt przerwany w połowie lutowania przez brak jednego kondensatora.
Rozwiązanie
Każda część wygląda jak etykieta szufladki: wartość, nazwa, miejsce i stan zmieniany jednym dotknięciem. Ilość można liczyć w sztukach albo poziomem (brak, mało, trochę, dużo). Nowe części dodaje się ze zdjęcia (jedna część, garść albo naklejka z pudełka), z opisu albo z importu zamówienia. Model czyta nadruki i proponuje nazwę, kategorię i parametry, a nieznane oznaczenia sprawdza w katalogu TME i w internecie. Do katalogu trafia tylko to, co użytkownik zatwierdzi. Projekt to zapamiętana lista elementów z KiCada, EasyEDA albo wklejona ręcznie: pokazuje, czego brakuje, daje linki do TME i Botlandu, a przycisk „Zbudowane” zdejmuje części ze stanu. Serwer MCP z logowaniem OAuth pozwala zapytać Claude albo ChatGPT, czy wszystko jest na projekt, i zdjąć części ze stanu z poziomu rozmowy.
Zakres i technologie
Cały produkt: aplikacja na Androida we Flutterze (APK, które samo sprawdza, czy jest nowa wersja), wersja przeglądarkowa w React + TypeScript, API w Go z PostgreSQL. Każdy katalog jest odizolowany w bazie regułami dostępu do wierszy (RLS), a każda zmiana stanu ma wpis z datą, powodem i źródłem (telefon, przeglądarka, API, MCP). Integracje: modele wizyjne do rozpoznawania części, API TME, wyszukiwanie w sieci. Normalizacja wartości („10k” = „10 kΩ” = „10000”) to zwykły kod z testami, bez udziału modelu. Serwer MCP ma 14 narzędzi i własny serwer autoryzacji OAuth 2.1 (PKCE, dynamiczna rejestracja klienta), osobne uprawnienia do odczytu i zapisu, a skrypty mogą używać kluczy API. Interfejs po polsku i angielsku.