{"name":"io.github.oaslananka/kicad-mcp-pro","slug":"oaslananka-kicad-mcp-pro","title":"KiCad MCP Pro","description":"Production-grade MCP server for KiCad EDA—PCB design, DRC, simulation, BOM, DFM, and manufacturing.","url":"https://mcp.market/server/oaslananka-kicad-mcp-pro","rating":null,"grade":"A","score":89,"certified":false,"status":"active","category":"media","tags":["media"],"presence":{"score":50,"stars":95,"forks":14,"downloads_week":499,"last_push_at":"2026-09-18T17:20:11.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"mixed","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/oaslananka/kicad-mcp-pro","website":"https://oaslananka.github.io/kicad-mcp-pro","version":"3.34.6","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"kicad-mcp-pro","version":"3.34.6","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"kicad-mcp-pro","type":"positional"}],"packageArguments":[{"description":"Transport protocol (stdio or streamable-http). Legacy SSE disabled by default.","default":"stdio","type":"named","name":"--transport"},{"description":"Host to bind the HTTP server to","default":"127.0.0.1","type":"named","name":"--host"},{"description":"Port to bind the HTTP server to","default":"3334","type":"named","name":"--port"}],"environmentVariables":[{"description":"Logging level (DEBUG, INFO, WARNING, ERROR)","default":"INFO","name":"KICAD_MCP_LOG_LEVEL"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"kicad-mcp-pro","version":"3.34.6","runtimeHint":"npx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"-y","type":"positional"}],"environmentVariables":[{"description":"Override the Python package version pinned by the npm wrapper","name":"KICAD_MCP_PRO_PYPI_VERSION"}]},{"registryType":"oci","identifier":"ghcr.io/oaslananka/kicad-mcp-pro:3.34.6","runtimeHint":"docker","transport":{"type":"stdio"},"runtimeArguments":[{"value":"run","type":"positional"},{"value":"--rm","type":"positional"},{"value":"-i","type":"positional"}],"packageArguments":[{"description":"Docker image to run","isRequired":true,"default":"ghcr.io/oaslananka/kicad-mcp-pro:3.34.6","type":"positional","valueHint":"image"}]}],"tools":[{"name":"dfm_calculate_manufacturing_cost","description":"Estimate fabrication cost from board area, layers, and via count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"dfm_load_manufacturer_profile","description":"Load a bundled manufacturer DFM profile for subsequent checks.","write_action":false,"price_micros":0,"input_schema":null},{"name":"dfm_run_manufacturer_check","description":"Run a manufacturer-aware DFM review using the active bundled profile.","write_action":true,"price_micros":0,"input_schema":null},{"name":"emc_check_decoupling_placement","description":"Review whether ICs have nearby decoupling capacitors.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_differential_pair_symmetry","description":"Review diff-pair skew and width symmetry.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_ground_plane_voids","description":"Review GND plane presence and a simple void-risk proxy.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_high_speed_routing_rules","description":"Review a high-speed net class for a short-stub proxy.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_return_path_continuity","description":"Check EMC return-path continuity for a signal or all critical high-speed nets.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_split_plane_crossing","description":"Warn when routed signals share layers with split non-ground planes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_check_via_stitching","description":"Estimate via-stitching density from existing ground vias.","write_action":false,"price_micros":0,"input_schema":null},{"name":"emc_run_full_compliance","description":"Run a lightweight EMC sweep with at least ten heuristic checks.","write_action":true,"price_micros":0,"input_schema":null},{"name":"export_3d_render","description":"Render a 3D view of the active PCB board to a PNG image.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_bom","description":"Export a bill of materials.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_drill","description":"Export drill files.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_dxf","description":"Export a board layer to DXF when supported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_gerber","description":"Export Gerber manufacturing files.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_ipc2581","description":"Export the active PCB to IPC-2581 format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_manufacturing_package","description":"Generate the gated manufacturing release package.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_netlist","description":"Export a KiCad schematic netlist.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_odb","description":"Export the active PCB to ODB++ format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_pcb_pdf","description":"Export the PCB to PDF.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_pick_and_place","description":"Export pick and place (CPL) data for the active PCB.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_sch_dxf","description":"Export the schematic to DXF when supported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_sch_pdf","description":"Export the schematic to PDF.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_sch_python_bom","description":"Export the schematic BOM using KiCad's Python BOM engine.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_sch_svg","description":"Export the schematic to SVG when supported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_spice_netlist","description":"Export a SPICE netlist.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_svg","description":"Export a board layer to SVG when supported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_board_stats","description":"Export board statistics and return a readable preview.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kicad_capability_parity","description":"Report how much of KiCad's programmatic surface this server can drive.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kicad_get_server_info","description":"Return versioned server information and capability diagnostics for clients.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_assign_footprint","description":"Assign a footprint property to a schematic symbol.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_assign_lcsc_to_symbol","description":"Assign an LCSC part code to a schematic symbol property.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_bind_part_to_symbol","description":"Assign a live part (LCSC/MPN) to a schematic symbol and optionally its footprint.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_certify_footprint","description":"Certify a footprint against package, documentation, and standard checks (#201).","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_check_derating","description":"Check a part choice for reliability derating and approved-vendor (AVL) compliance.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_check_sourcing_policy","description":"Return a structured sourcing policy verdict for one live part.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_check_stock_availability","description":"Check live stock availability by schematic reference or part number.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_create_custom_symbol","description":"Create a simple custom symbol in the active project directory.","write_action":true,"price_micros":0,"input_schema":null},{"name":"lib_find_alternative_parts","description":"Find nearby alternative parts for the supplied LCSC code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_generate_footprint_ipc7351","description":"Generate an IPC-7351B compliant KiCad footprint (.kicad_mod) and save it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_generate_symbol_from_pintable","description":"Generate a KiCad symbol (.kicad_sym) from a pin table and save it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_bom_with_pricing","description":"Generate a live BOM summary with unit and extended pricing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_component_details","description":"Return live component detail for a specific LCSC code or MPN.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_datasheet_url","description":"Return a datasheet URL from the symbol library when available.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_footprint_3d_model","description":"Return the configured 3D model path for a footprint.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_footprint_info","description":"Return details for a single footprint.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_get_symbol_info","description":"Return details for a single symbol.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_list_footprints","description":"List footprints in a specific library.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_list_libraries","description":"List configured symbol and footprint libraries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_rebuild_index","description":"Rebuild the in-memory symbol search index.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_recommend_part","description":"Recommend a purchasable part given electrical requirements.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_search_components","description":"Search live component sources for purchasable parts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_search_footprints","description":"Search footprint libraries by footprint name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_search_symbols","description":"Search symbol libraries by name, description, or keywords.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_validate_footprint_ipc7351","description":"Validate a two-terminal chip footprint against its IPC-7351B nominal (hard gate).","write_action":false,"price_micros":0,"input_schema":null},{"name":"lib_verify_component_contract","description":"Verify a placed component's symbol, footprint, and pins actually match.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_check_import_support","description":"Report whether the detected KiCad CLI advertises a given board-import format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_correct_cpl_rotations","description":"Apply JLCPCB CPL rotation corrections to a KiCad-exported pick-and-place CSV.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_create_release_evidence","description":"Generate a machine-readable manufacturing release evidence bundle.","write_action":true,"price_micros":0,"input_schema":null},{"name":"mfg_generate_release_manifest","description":"Generate a SHA256-signed release manifest for the manufacturing package.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_generate_test_plan","description":"Generate a bring-up test plan from the project design intent.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_import_allegro","description":"Import an Allegro board into a KiCad project directory.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_import_geda","description":"Import a gEDA PCB into a KiCad project directory.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_import_pads","description":"Import a PADS PCB into a KiCad project directory.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_import_specctra","description":"Import a Specctra DSN/SES file into a KiCad project directory.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mfg_panelize","description":"Panelize the active PCB using KiKit.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_barcode","description":"Add a production barcode marker to the board file using KiCad's native barcode format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_bitmap_board_art","description":"Import a bitmap/logo as deterministic board-art rectangles on a PCB layer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_blind_via","description":"Add a blind or buried via between the requested copper layers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_circle","description":"Add a board graphic circle.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_microvia","description":"Add a microvia between adjacent copper layers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_rectangle","description":"Add a board graphic rectangle.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_segment","description":"Add a board graphic segment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_text","description":"Add board text.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_track","description":"Add a single track segment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_tracks_bulk","description":"Add multiple tracks in a single operation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_add_via","description":"Add a via.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_check_creepage_clearance","description":"Run a heuristic creepage clearance review against pad spacing.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pcb_delete_items","description":"Delete items by UUID.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pcb_delete_object","description":"Delete a single PCB object by UUID through KiCad IPC.","write_action":true,"price_micros":0,"input_schema":null},{"name":"pcb_export_3d_pdf","description":"Export the PCB to a 3D PDF.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_export_stats","description":"Export board statistics (net count, component count, layer count, etc.) via the KiCad CLI ``pcb export stats`` command.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_get_design_rules","description":"Read the active board design rules file when available.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_get_impedance_for_trace","description":"Estimate trace impedance for the supplied width on the named stackup layer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_get_net_statistics","description":"Return statistical data about all nets in the active PCB.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_get_ratsnest","description":"Report currently unconnected board items using the latest DRC view.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_import_board","description":"Import a non-KiCad PCB file to KiCad format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_net_inspector","description":"Inspect every detail about a specific net in the PCB.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_route_trace","description":"Route a trace segment through the KiCad IPC-backed track tool.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_save","description":"Save the active board.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_set_board_outline","description":"Draw a rectangular board outline on Edge.Cuts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pcb_set_design_rules","description":"Write board-level manufacturing constraints into the active .kicad_dru file.","write_action":true,"price_micros":0,"input_schema":null},{"name":"project_embed_file","description":"Embed an external file into the KiCad project as project metadata.","write_action":false,"price_micros":0,"input_schema":null},{"name":"project_extract_embedded_file","description":"Extract an embedded file from the project and write it to disk.","write_action":false,"price_micros":0,"input_schema":null},{"name":"project_list_embedded_files","description":"List all embedded (project-embedded) files in the active project.","write_action":false,"price_micros":0,"input_schema":null},{"name":"project_remove_embedded_file","description":"Remove an embedded file entry from the project metadata.","write_action":true,"price_micros":0,"input_schema":null},{"name":"reference_compare_manufacturing_snapshots","description":"Compare the two fixed manufacturing snapshot manifests after byte revalidation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"reference_generate_manufacturing_snapshot","description":"Generate one of two fixed fresh manufacturing snapshots for benchmark evidence.","write_action":false,"price_micros":0,"input_schema":null},{"name":"studio_push_context","description":"Update the active IDE context pushed by KiCad Studio.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":89,"grade":"A","scanned_at":"2026-09-19T21:08:31.528Z","report":{"scannerVersion":"0.1.8","scannedAt":"2026-09-19T21:08:31.515Z","components":{"code":{"score":25,"max":25,"notes":["346 source files scanned","2 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"kicad-mcp-pro","version":"3.34.6","found":true,"license":"MIT","dependencyCount":54,"publishedAt":"2026-09-13T18:06:39.786508Z","repositoryUrl":"https://github.com/oaslananka/kicad-mcp-pro"},{"registryType":"npm","identifier":"kicad-mcp-pro","version":"3.34.6","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":0,"publishedAt":"2026-09-13T18:45:59.799Z","repositoryUrl":"git+https://github.com/oaslananka/kicad-mcp-pro.git"}],"repo":{"found":true,"owner":"oaslananka","repo":"kicad-mcp-pro","archived":false,"pushedAt":"2026-09-18T17:20:11Z","stars":95,"forks":14,"openIssues":8,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/285490571?v=4","ownerCreatedAt":"2026-05-17T19:11:03Z","license":"MIT"},"icon":{"url":"https://oaslananka.github.io/kicad-mcp-pro/assets/icon-512.png","source":"registry","width":512,"height":512},"presence":{"stars":95,"forks":14,"downloadsWeek":499,"license":"MIT","lastPushAt":"2026-09-18T17:20:11.000Z","score":50}}}},"grade_history":[{"kind":"restore","fromGrade":"C","toGrade":"A","reason":"score 89","createdAt":"2026-09-19T21:08:32.238Z"}],"reviews":[]}