{"name":"io.github.gal-a/qikly","slug":"gal-a-qikly","title":"qikly","description":"Generates tests from acceptance criteria, then converges code with an agent that never sees them.","url":"https://mcp.market/server/gal-a-qikly","rating":null,"grade":"B","score":74,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":43,"stars":12,"forks":0,"downloads_week":663,"last_push_at":"2026-09-16T18:49:36.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/gal-a/qikly","website":"https://test.qikly.com/","version":"0.4.6","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"qikly","version":"0.4.6","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"qikly[mcp]==0.4.6","type":"named","name":"--from"},{"value":"qikly-mcp","type":"positional"}],"environmentVariables":[{"description":"The folder holding your tasks, the one with inputs_private/. Set it when your editor has a different folder open, which is common.","name":"QIKLY_PROJECT_ROOT"}]}],"tools":[],"scan":{"score":74,"grade":"B","scanned_at":"2026-09-19T09:58:16.268Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T09:58:16.235Z","components":{"code":{"score":13,"max":25,"notes":["77 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 3 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"env.dump","severity":"high","component":"code","title":"Whole environment serialized (possible credential exfil)","evidence":"qikly-0.4.6/src/qikly/mcp_tools.py: … if provider or model: env = dict(os.environ) if provider: env[\"L…"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"qikly","version":"0.4.6","found":true,"weeklyDownloads":663,"license":"Apache-2.0","dependencyCount":9,"publishedAt":"2026-09-16T18:48:49.185736Z","repositoryUrl":"https://github.com/gal-a/qikly"}],"repo":{"found":true,"owner":"gal-a","repo":"qikly","archived":false,"pushedAt":"2026-09-16T18:49:36Z","stars":12,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/10926735?v=4","ownerCreatedAt":"2015-02-09T16:58:22Z","license":"Apache-2.0"},"icon":{"url":"https://test.qikly.com/images/qikly_icon.png","source":"registry","width":128,"height":128},"presence":{"stars":12,"forks":0,"downloadsWeek":663,"license":"Apache-2.0","lastPushAt":"2026-09-16T18:49:36.000Z","score":43}}}},"grade_history":[],"reviews":[]}