If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.17.0
New features
Support stateless MCP version 2026-07-28, alongside old stateful versions, improved MCP metadata
Added an advanced part search MCP tool, for more detailed part searches
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.16.1
Bug fixes
Fixed add/withdraw dialog not working (issue #1510)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Note
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.16.0
New Features
Add a component image generator for resistors, capacitors and inductors @Sebbeben in #1435
Improved KiCAD API which should massively increase load speeds in KiCAD (after PR #1489)
Added MCP tools to get attachment contents
Added MCP tools to create, edit and delete parts, storage locations, categories, footprints, manufacturers and suppliers
Log the access_method in change logs, to see whether the change was done via WebUI, REST API or MCP
Log an unique request ID with change logs, so that all changes done in a single request can be easily grouped together
Show max_input_vars and sqlite enforce fk status in server info page
Allow to create a new lot at new location via lot move dialog @calebwest-SS in #1500
Allow to edit part BOM entries from BOM table (PR #1488)
Added "performance mode" for projects. When an project has more than 100 entries, the BOM cannot be edited via the project admin page anymore to avoid issues with too large forms.
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Important
Since this version Part-DB can enable foreign key checks for SQLite: it is recommend to do this, but it requires some manual intervention. See this announcement on how to do it: #1486
Note
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New Features
Added OAuth server capability, for easy and automatic API access to Part-DB without the need to generate an API token by hand. An application can redirect to an Part-DB page, where an user can authorise the access of the external application. This feauture is opt-in and requires some setup by hand.
With the OAuth server capability, Part-DB can now be used as an remote MCP connector for AI applications like claude.ai. Just add a custom connector with your Part-DB url, and you can authorize the access via one click. No need for fiddeling with API tokens or config files
Allow to enable foreign key checking for sqlite via an env variable. It is recommended to do this, however it requires some manual intervention.
Add Docker based development environment by @swdee in #1441
Link to update manager from homepage banner update notification
Bug fixes
Fixed that orphaned BOMEntries, APITokens and Orderdetails were possible
Fix TypeError when tree expand/collapse/search is used before the tree finished loading by @Sebbeben in #1482
Require full user authentication, when changing users or groups
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Provide MCP tools to allow AI agents access Part-DB's data (read-only for now)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Changes
Made it more clear that TRUSTED_HOST value must not be quoted in docker-compose file, both in documentation and messages (#1453)
Import: document EDA/KiCad columns, add regression tests, fix eda_invisible inversion by @Sebbeben in #1436
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.13.2
Bug fixes
Respect the attachment file limits, when Part-DB downloads a file, or a file gets uploaded base64 encoded via API
Prevent formula injection when exporting tables as excel files
Fixed problem with javascript and CSS not loading when using apache with mod_php (#1423)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.13.1
This version is identical to Part-DB 2.13.0. See Release Notes there for list of changes.
This version is to fix the build and tagging of the docker images to fix issue #1430
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.13.0
New features & Improvements
Improved password strength estimator and show time to crack estimate in tooltip
Use better library for alerts and dialogs, instead of the outdated bootbox
Improved page load error dialog
Added bootswatch*s brite theme as possible theme
Added Ollama as (local) AI provider
Allow to configure the timeout for AI providers, making it more suitable for slow local inference
This version contains security fixes, it is recommended to update to this version immediately.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.12.3
Security fixes
Fixed missing SVG sanitatization, when file was uploaded with non-svg extension
Added CSP headers to static files, to prevent script execution, should an vulnerable file be uploaded somehow
This version contains security fixes, it is recommended to update to this version immediately.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Part-DB 2.12.2
Security fixes
MEDIUM: Fixed XSS vulnerability in project BOM import
MEDIUM: Fixed XSS vulnerability in project BOM table
Fixed problem that sidebar hide state was not persisted over page reloads (PR #1404, @d-buchmann)
Do not log deprecations as the files can quickly get very large, old behavior can be reenabled via env setting. This might also give a small performance boost (fixes #1405)
This version contains critical security fixes, it is recommended to update to this version immediately.
Part-DB 2.12.1
Security fixes
CRITICAL: Fixed issue that users with editing rights could execute arbitary php code in the docker installations by uploading phar files
MEDIUM: Fixed XSS issue in unsanatized log entry extra. Due to the Content-Security-Policy this has limited impact, as no arbitrary javascript can be executed.
MEDIUM: The APP_SECRET env must be changed to prevent forgery of REMEMBERME tokens. To be doable an attacker requires to know the secret password hash of a user, which is not obtainable without another security issue. Administrators will see an warning banner on the homepage, asking to change the APP_SECRET.
Generate an new random 32 character string with openssl rand -hex 32 and put the value for APP_SECRET into your .env.local or the environment section of the docker-compose.yaml.
Other changes
Updated dependencies to fix known security issues in symfony and twig
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added browser plugin to quickly submit pages from a browser to Part-DB to create parts out of it. As it submits the browser HTML, this allows also for info extraction from pages like ebay, amazon or aliexpress. Plugin is available for Chrome and Firefox
Added an "unsaved changes" warning, on when a form contains unsaved changes and user tries to navigate away (#1368)
Changed/Unsaved fields get highlighted with a light blue border in forms
The discard changes button also now correctly works with rich text editor fields and select fields.
Bug fixes
Fixed problem with attachment referencing in API (#1370)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Updated watchtower image in watchtower config example (#1363)
Fixed problems of invalid links when AI Web Extractor encounters non-absolute links
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added AI powered website scraper to provide detailed part infos even from webshops with little structured data
Added feature to force refresh of info provider search and results, and to skip delegation to specialized providers when using "create part from URL"
Add Docker update support via Watchtower integration by @Sebbeben in #1330
Add Quick Apply and batch update to bulk info provider import by @Sebbeben in #1316
Add 'Add stock' button to part stock info page by @kernchen-brc in #1352
Added 250 and 500 entry to table lengthes menus
Bug fixes
Fix sort order after column reorder on page reload by @wschopohl in #1346
Fixed error making editing of users impossible
Fixed error with converting existing DB to postgresql database (#1362)
Fixed error that original category were changed, if category cloned and eda info changed (#1341)
Keep part table length selection across page loads (#1350)
This version requires nodejs 22+ for frontend building. Check that you have it installed, before attempting automatic upgrade.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Changes
Frontend building now requires at least nodejs 22.
For security hardening reasons Part-DB's generic web provider and the attachment download feature cannot download from local network IPs to avoid SSRF attacks. If you require internal attachment download, you can enable it via an env option.
New features
Make format06 barcode checking more resiliant for non-standard conform labels and scanners by @mkne in #1321
Implement parsing of TME QR codes by @alufers in #1324
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Improvements
Removed MPN fallback from LCSC barcode scanner, the SPN field is used instead for part matching (#1302)
Automatically detect the delimiter on generic CSV BOM imports
Fixed problem of GenericWeb info provider when used behind traefik (#1296)
Fixed 500 error, when mapping in generic CSV BOM import fails (#1298)
Fixed 500 error with displaying part prices, when a user has a currency preference different of base currency, and there is no conversion rate known for it (#1317)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New feautures
Sidebar trees keep track of page navigations. If you open a certain category, the treenode will be hightlighted
Show a "Show password" toggle on all password inputs, including login form
Made form fields wider on large monitors, to remove useless whitespace
Reset opcache after update manager update (thanks @Sebbeben, PR #1288)
Allow to create manual backups and download them from the WebUI (thanks @Sebbeben, PR #1255)
Added user_barcode_filter to API (thanks @MayNiklas, PR #1280)
Show manufacturing status in project BOM table (thanks @mkne, #1289)
Create a part lot with quantity, user barcode and order number based on digikey, lcsc or mouser barcode, to reduce amount of manual input
Bug fixes
Do not scroll sidebar to top, when clicking a tree node
Fixed description field on KiCAD 9.0.5 and 9.0.6 (#1289)
Generate correct url for part lots barcode content label placeholders (#1268)
Correctly import files, where only children elements are specified and no parent field (#1272)
Clear the input after selecting an option in tomselect (#1264)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Security hardening for some endpoints
Fixed minor unauthorized information leackage in IPN generation endpoint (#1283)
Fixed problem with creating digikey parts from barcode when it contained a CREF (#1283)
Use cache:pool:clear --all for more thorough cache clearing in update process
Moved settings cache to cache.system adapter, to ensure its cleared on cache:clear (prevents #1279)
Fixed problem that flash messages were not shown in admin pages
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Allow to add parts from barcode scans of LCSC, digikey and other vendor labels (thanks @swdee)
Allow to scan LCSC labels
Added Amazon info provider via Canopy API
Added an optional HTML sandbox for attachments, allowing to view interactive BOM HTML files inside Part-DB (#1150)
Add option to disable special character keybindings (#1251, thanks @MayNiklas)
Improve working with an external barcode scanner, allow scanning barcodes from everywhere
Make KiCad API better cachable (#1241, thanks @Sebbeben)
Make parameters and order informations visible in KiCad (#1241, thanks @Sebbeben)
Show EDA value and reference in part tables (#1266, thanks @hrueger)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Bug fixes
Fixed problem that stocktake date of part lot was required when editing part (#1250)
Fixed problem that part tables had wrong sorting on initial loading
Fixed german translations related to update manager
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Allow to set GTIN / EAN numbers for parts
Some info providers allow to provide GTIN infos
Allow to mark if supplier prices contain VAT or not. This is especially useful in combination with info providers
Allow to restrict on which element types attachment types can be applied. For example the "Avatars" attachmen type can only be shown on user attachments
Added ability to stocktake part lots from info page. This easily allows for setting a specific amount, instead of just adding/removing from an database value. The stocktake date is stored, to give a hint on how reliable the amount left is.
Delegate part retrieval to buerklin info provider when an buerklin URL is given (@mkne, PR #1235)
Added API endpoint for label generation (@MayNiklas, PR #1234)
Added functions to twig labels to retrieve associated parts. This allows to print all parts contained in a storage location (#1239)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Experimental update manager, to update Part-DB from the web interface (thanks to @Sebbeben, PR #1217)
Added Conrad info provider
Added a generic info provider, to retrieve basic part infos from many shop URLs
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Improvements
When using the "upload files" button automatically determine a fitting attachment type based on extension
Support SPN columns for all suppliers as columns in BOM imports, not only LCSC (PR#1208, thanks @MayNiklas)
Bug fixes
Disable the ID search by default, like intended in PR #1184
Use correct language for sidebar trees, even if no user is logged in
Prevent ordering of extra column in log tables, as this errors on Postgres and has no real use
Show an error popup instead of a 500 page when info provider retrieval fails
Added clear button for part select input in BOMs (#1156)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added console command to change database platform (e.g. from sqlite to mysql, or mysql to postgresql)
Added a ability to search for part IDs from searchfields (thanks @kernchen-brc, #1184)
Improvements
Do not mark new categories excluded from simulation in KiCAD, to avoid annoying symbols in KiCad (thanks @lukas-runge , #1192)
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added info provider for Buerklin (thanks to @mkne, #1151)
Show part IDs in project BOMs
Improvements
Use more performant hash algorithms for cache keys
Increase label generator PDF preview height to show PDF toolbar (@mkne , #1171)
Show info provider capabilities in fixed order
Bug fixes
Fixed exception if DigiKey has no media for a part (#1154)
After upgrade, you need to run php bin/console doctrine:migrations:migrate (or equivalent) as webserver user after upgrade.. If you are running a docker container, use sudo docker exec --user=www-data partdb php bin/console doctrine:migrations:migrate, or sudo -E inside the docker container, to ensure that the migrations are applied to the correct database.
Tip
If you like Part-DB, consider donating to support the development. Press the sponsor button on the main github page, for more info.
Important
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
New features
Added the ability to define custom part states (PR #1053, thanks to @webdevinition)
Added the ability to automatically suggest and generate IPNs (PR #1054, thanks to @webdevinition)
Added experimental ability to rename datastructure types with the new synonym system, which allows you to define domain specific names for concepts of "parts", "categories", etc. (thanks @webdevinition)
Improvements
Improved ability to determine category from info provider (#1113)
Do not require a trailing slash for DEFAULT_URI (#1118)
Define preview images for partkeepr imports (#1115)
If you are using Part-DB it would be helpful if you fill out this short survey on your usage of Part-DB (Google Forms): https://forms.gle/Q15twx3YYq3qCNfe8
Tip
You can help to translate Part-DB to other languages. See this post for more info.
New features
Load translations for Ckeditor
Added an option to select which languages should be shown in the language dropdown menu
Added hungarian translations (thanks to @Krissz, PR#1081)
Added option to configure if part tables for categories, etc. should include child categories by default (#1077)
Improved alignment of part parameter tables (#1066)
Show an better error message if Digikey provider needs OAuth reconnection
Bug fixes
Fixed problem when trying to geneate multiple labels (#1070)
Made settings category titles translatable (#1037)