Overview
What is JLCPCB Parts MCP Server?
It is an MCP server that helps search and select electronic components for JLCPCB’s PCBA (Printed Circuit Board Assembly) service. It uses an offline SQLite database from the JLC PCB SMD Assembly Component Catalogue (jlcparts) project.
How to use JLCPCB Parts MCP Server?
Set up a Python environment with MCP support. Place the server.py file and set the JLCPCB_DB_PATH environment variable to the cache.sqlite3 database file (available from the jlcparts repository as split ZIP archives, currently up to cache.z19). Then include the server in your MCP client configuration, for example in Claude Desktop as shown in the README.
Key features of JLCPCB Parts MCP Server
- Searches for PCBA parts in JLCPCB’s component catalogue.
- Uses an offline SQLite database for fast querying.
- Supports finding components in the Basic Parts category (e.g., ferrite beads).
- Provides example conversations for component selection (e.g., resistor values for a buck DC-DC converter).
Use cases of JLCPCB Parts MCP Server
- Searching for a specific part before placing a PCBA order at JLCPCB.
- Selecting passive component values (e.g., resistors for a voltage regulator).
- Browsing Basic Parts inventory without an internet connection.
FAQ from JLCPCB Parts MCP Server
What database does JLCPCB Parts MCP Server require?
It requires the cache.sqlite3 file from the JLC PCB SMD Assembly Component Catalogue.
How do I configure the database path?
Set the JLCPCB_DB_PATH environment variable to the full path of the cache.sqlite3 file.
Where can I obtain the database?
From the GitHub repository yaqwsx/jlcparts. The database is provided as split ZIP archives (currently numbered up to cache.z19).
What runtime is needed?
Python with an MCP client library. The server script is server.py.
Is there an example of this server in use?
Yes. The README shows a conversation where ferrite beads are searched, and provides a link to a Claude conversation about selecting resistor values for a buck DC‑DC converter.