{"name":"io.github.SourceParts/parts-mcp","slug":"sourceparts-parts-mcp","title":"Source Parts","description":"Electronic component sourcing, BOM management, and PCB design workflows.","url":"https://mcp.market/server/sourceparts-parts-mcp","rating":null,"grade":"A","score":93,"certified":false,"status":"active","category":"media","tags":["media"],"presence":{"score":36,"stars":2,"forks":1,"downloads_week":47,"last_push_at":"2026-10-19T13:49:34.000Z","license":"Apache-2.0"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T05:35:48.810Z","last_ok_at":"2026-11-04T05:35:48.810Z","latency_ms":92},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/SourceParts/parts-mcp","website":"https://source.parts","version":"0.5.3","remotes":[{"type":"streamable-http","url":"https://mcp.source.parts/"}],"packages":[{"registryType":"pypi","identifier":"parts-mcp","version":"0.5.3","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"description":"Source Parts API key (get one at https://source.parts/docs/api)","isRequired":true,"isSecret":true,"type":"environment"}]}],"tools":[],"scan":{"score":93,"grade":"A","scanned_at":"2026-11-03T14:23:13.718Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-03T14:23:13.646Z","components":{"code":{"score":20,"max":25,"notes":["57 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1064ms (auth required)"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (endpoint requires auth); not counted"]},"auth":{"score":15,"max":15,"notes":["OAuth resource metadata advertised on 401"]},"maintenance":{"score":15,"max":15,"notes":["last push 15 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.shell-true","severity":"medium","component":"code","title":"subprocess with shell=True","evidence":"parts_mcp-0.5.3/parts_mcp/tools/cli.py: …l metacharacters (we use list args, not shell=True) dangerous = set(\";|&$`\\\\\\\"\\n\\r…"}],"inputs":{"probes":[{"url":"https://mcp.source.parts/","reachable":true,"authRequired":true,"latencyMs":1064,"authScheme":"oauth"}],"packages":[{"registryType":"pypi","identifier":"parts-mcp","version":"0.5.3","found":true,"weeklyDownloads":47,"license":"MIT","dependencyCount":21,"publishedAt":"2026-08-16T09:38:21.800892Z","repositoryUrl":"https://github.com/SourceParts/parts-mcp"}],"repo":{"found":true,"owner":"SourceParts","repo":"parts-mcp","archived":false,"pushedAt":"2026-10-19T13:49:34Z","stars":2,"forks":1,"openIssues":1,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/109857157?v=4","ownerCreatedAt":"2022-07-23T12:01:23Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/109857157?v=4&s=128","source":"registry","width":114,"height":114},"presence":{"stars":2,"forks":1,"downloadsWeek":47,"license":"Apache-2.0","lastPushAt":"2026-10-19T13:49:34.000Z","score":36}}}},"grade_history":[],"reviews":[]}