boardrepo
Server Details
Search and review real KiCad and Altium PCB designs: schematics, BOMs, netlists, DRC/ERC.
The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 59.7% over 63 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- flintt-dev/boardrepo-plugin
- GitHub Stars
- 0
TDQS
Scored across 12 tools
Each tool has a distinct purpose and the descriptions carefully police boundaries, especially among read_file, read_pcb, read_schematic, query_design, and search_board. The main risk is that several content-access tools exist in the same domain, so a less careful agent could pick the wrong reader, though the descriptions largely prevent this.
All names follow a consistent lowercase snake_case verb_noun pattern: get_*, list_*, read_*, search_*, plus query_design and run_checks. The plural search_boards is also clearly differentiated from the singular search_board, and each verb accurately reflects the tool's action.
Twelve tools is well within the ideal scope for this domain and each tool earns its place: metadata lookup, file listing, raw reads, two specialized readers, structure queries, BOM access, DRC/ERC checks, and fab profiles. There is no obvious redundancy or bloat.
The read/analyze lifecycle is well covered: search, board metadata, file access, schematic and PCB analysis, BOM, and both stored and runnable checks. The main gap is that get_board references list_my_boards, but no such tool is exposed, leaving a minor hole for private-board enumeration.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
get_board1 field changed- changed
Output schema / oneOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "board": { - "type": "string" - }, - "found": { - "const": false - }, - "message": { - "type": "string" - } - }, - "required": [ - "found", - "board", - "message" - ], - "type": "object" - }, - { - "additionalProperties": true, - "properties": { - "capabilities": { - "additionalProperties": false, - "properties": { - "bom": { - "type": "boolean" - }, - "gerbers": { - "type": "boolean" - }, - "pcb": { - "type": "boolean" - }, - "schematic": { - "type": "boolean" - } - }, - "required": [ - "schematic", - "pcb" - ], - "type": "object" - }, - "createdAt": { - "type": "string" - }, - "downloadCount": { - "type": "integer" - }, - "fileCount": { - "type": "integer" - }, - "found": { - "const": true - }, - "handle": { - "type": "string" - }, - "name": { - "type": "string" - }, - "saveCount": { - "type": "integer" - }, - "slug": { - "type": "string" - }, - "updatedAt": { - "type": "string" - }, - "url": { - "type": "string" - } - }, - "required": [ - "found", - "handle", - "slug", - "name", - "capabilities", - "fileCount", - "downloadCount", - "saveCount", - "createdAt", - "updatedAt", - "url" - ], - "type": "object" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "board": { + "type": "string" + }, + "found": { + "const": false + }, + "message": { + "type": "string" + } + }, + "required": [ + "found", + "board", + "message" + ], + "type": "object" + }, + { + "additionalProperties": true, + "properties": { + "capabilities": { + "additionalProperties": false, + "properties": { + "bom": { + "type": "boolean" + }, + "gerbers": { + "type": "boolean" + }, + "pcb": { + "type": "boolean" + }, + "schematic": { + "type": "boolean" + } + }, + "required": [ + "schematic", + "pcb" + ], + "type": "object" + }, + "createdAt": { + "type": "string" + }, + "downloadCount": { + "type": "integer" + }, + "fileCount": { + "type": "integer" + }, + "found": { + "const": true + }, + "handle": { + "type": "string" + }, + "name": { + "type": "string" + }, + "saveCount": { + "type": "integer" + }, + "slug": { + "type": "string" + }, + "stars": { + "type": "integer" + }, + "updatedAt": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "found", + "handle", + "slug", + "name", + "capabilities", + "fileCount", + "downloadCount", + "saveCount", + "createdAt", + "updatedAt", + "url" + ], + "type": "object" + } +]
3 tool updates
- Changed
get_checks1 field changed- changed
Input schema / properties / vendor / descriptionPrevious value: -"Optional fab house id from list_fab_profiles. Returns that fab's manufacturability verdict for this board instead of the board's own DRC/ERC. Do not invent an id."New value: +"Optional fab house id from list_fab_profiles. Returns geometric checks against that fab's stored profile for this board instead of the board's own DRC/ERC. Do not invent an id."
- Changed
query_design1 field changed- changed
Input schema / properties / select / descriptionPrevious value: -"Node names from the root downward, e.g. [\"kicad_pcb\",\"layers\"] or [\"kicad_sch\",\"lib_symbols\",\"symbol\"]. The first entry is the file's root node."New value: +"Node names from the root downward, e.g. [\"kicad_pcb\",\"layers\"], [\"kicad_pcb\",\"via\"], [\"kicad_pcb\",\"zone\"], or [\"kicad_sch\",\"lib_symbols\",\"symbol\"]. The first entry is the file's root node."
- Added
read_pcb
1 tool update
- Changed
get_checks1 field changed- changed
Input schema / properties / vendor / descriptionPrevious value: -"Optional fab house id. Returns that fab's manufacturability verdict for this board instead of the board's own DRC/ERC. Do not guess an id - if your tool list includes one for listing fab profiles, get the id from there; if it does not, use `rules` with explicit millimetre limits instead."New value: +"Optional fab house id from list_fab_profiles. Returns that fab's manufacturability verdict for this board instead of the board's own DRC/ERC. Do not invent an id."
9 tool updates
- Changed
get_board1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Discover public boards with search_boards, personal or authorised organisation boards with list_my_boards."
- Changed
get_bom1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
get_checks1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
list_board_files1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
query_design1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
read_file1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
read_schematic1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
run_checks1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
- Changed
search_board1 field changed- changed
Input schema / properties / board / descriptionPrevious value: -"A public board: handle/slug (e.g. alice/keezyboost40) or a boardrepo.com URL. Discover it with search_boards; do not invent one."New value: +"A board: handle/slug or a boardrepo.com URL. Use search_boards for public boards or list_my_boards for personal and authorised organisation boards. Do not invent references."
1 tool update
- Changed
search_board2 fields changed- added
Output schema / properties / bytesTruncatedAdded value: +{ + "type": "boolean" +} - changed
Output schema / requiredPrevious value: -[ - "query", - "matches", - "filesScanned", - "filesSkipped", - "filesTruncated", - "hasMore" -]New value: +[ + "query", + "matches", + "filesScanned", + "filesSkipped", + "filesTruncated", + "bytesTruncated", + "hasMore" +]
1 tool update
- Changed
search_boards2 fields changed- changed
Input schema / properties / query / descriptionPrevious value: -"Free text and/or qualifiers, e.g. \"esp32 keyboard component:esp32 tag:keyboard has:schematic author:alice\". Omit to list recent public boards."New value: +"Free text and/or qualifiers, e.g. \"esp32 keyboard component:esp32 tag:keyboard has:schematic author:alice\". Free-text words are ANDed, so every extra word can only NARROW the results — measured on the live corpus, \"esp32\" matches 748 boards, \"esp32 keyboard\" 23, and \"esp32 keyboard lora\" 1. Start with the ONE most distinctive word (a part number, chip family, or brand) and add terms only to narrow a result set that is too large. At most 6 distinct free-text words; more is rejected. Omit to list recent public boards." - added
Output schema / properties / hintAdded value: +{ + "type": "string" +}
4 tool updates
- Removed
get_findings - Removed
list_my_boards - Removed
review_board - Removed
verify_claim
15 tool updates
- First observed
get_board - First observed
get_bom - First observed
get_checks - First observed
get_findings - First observed
list_board_files - First observed
list_fab_profiles - First observed
list_my_boards - First observed
query_design - First observed
read_file - First observed
read_schematic - First observed
review_board - First observed
run_checks - First observed
search_board - First observed
search_boards - First observed
verify_claim
Related MCP Connectors
Design, route, check, review and export manufacturable PCBs from plain language; KiCad import.
Verified KiCad footprints, symbols & 3D models for AI agents. No signup, CC-BY-4.0, quality-gated.
Design a KiCad PCB from a prompt: parts, schematic checks, routing, KiCad DRC and Gerbers.
Search real parts with datasheet-provenance specs, check compatibility and compose priced BOMs.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables analysis of KiCad electronic schematics through natural language queries to search components, trace signal paths, explore connections, and analyze multi-board systems.301MIT
- AlicenseNot gradedqualityAmaintenanceAI copilot for PCB design: search real JLCPCB/LCSC parts, build schematics, run ERC, auto-place and autoroute 2-layer boards with DRC, export Gerbers/BOM/pick-and-place, and generate 3D-printable enclosures. Changes appear live in the CircuitPilot browser editor.4Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables natural language interaction with KiCad projects, schematics, and PCBs, supporting project management, design rule checking, netlist extraction, and datasheet RAG search.2MIT
- AlicenseNot gradedqualityDmaintenanceEnables natural language search and exploration of KiCad component symbol libraries with fast full-text search across 20,000+ components including metadata like datasheets, footprints, and descriptions.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.