{"name":"io.github.AparajeetS/traintools","slug":"aparajeets-traintools","title":"TrainTools","description":"Recommend paper-backed diagnostics for PyTorch and Hugging Face training problems.","url":"https://mcp.market/server/aparajeets-traintools","rating":null,"grade":"B","score":77,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":13,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-07-22T12:29:20.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/AparajeetS/Traintools","website":"https://github.com/AparajeetS/Traintools","version":"0.6.2","remotes":[],"packages":[{"registryType":"pypi","identifier":"traintools","version":"0.6.2","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"mcp","type":"named","name":"--with"}],"packageArguments":[{"value":"mcp","type":"positional"}]}],"tools":[{"name":"explain_training_diagnostic","description":"Explain one diagnostic, including when not to trust it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_training_integration","description":"Generate a minimal PyTorch or Hugging Face integration snippet.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_training_diagnostics","description":"List TrainTools capabilities, requirements, and limitations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"recommend_training_diagnostics","description":"Recommend diagnostics for a concrete ML training symptom.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":77,"grade":"B","scanned_at":"2026-09-25T21:43:12.148Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-25T21:43:12.137Z","components":{"code":{"score":20,"max":25,"notes":["25 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":12,"max":15,"notes":["last push 65 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"traintools-0.6.2/traintools/callbacks/huggingface.py: …aptured batch (the model is switched to eval() during estimation to exclude dropout/B…"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"traintools","version":"0.6.2","found":true,"license":"MIT","dependencyCount":11,"publishedAt":"2026-07-16T21:55:21.503123Z","repositoryUrl":"https://github.com/AparajeetS/Traintools"}],"repo":{"found":true,"owner":"AparajeetS","repo":"Traintools","archived":false,"pushedAt":"2026-07-22T12:29:20Z","stars":0,"forks":0,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/279419711?v=4","ownerCreatedAt":"2026-04-26T08:39:08Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/279419711?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-07-22T12:29:20.000Z","score":13}}}},"grade_history":[],"reviews":[]}