{"name":"io.github.ProjectAILiberation/tactus","slug":"projectailiberation-tactus","title":null,"description":"Content-agnostic control layer for intimate hardware; forwards Buttplug/Intiface commands only.","url":"https://mcp.market/server/projectailiberation-tactus","rating":null,"grade":"B","score":78,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":20,"stars":3,"forks":0,"downloads_week":38,"last_push_at":"2026-06-13T09:26:50.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/ProjectAILiberation/tactus","website":null,"version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"tactus-mcp","version":"0.1.2","transport":{"type":"stdio"}}],"tools":[{"name":"get_battery","description":"Read battery level (0.0-1.0) for a device that reports it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"linear","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_devices","description":"List currently connected devices and their actuators.","write_action":false,"price_micros":0,"input_schema":null},{"name":"oscillate","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"rotate","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"scan_for_devices","description":"Scan for new devices for a duration, then return any newly found.","write_action":false,"price_micros":0,"input_schema":null},{"name":"server_status","description":"Report connection status to Intiface and device count.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stop_all","description":"Immediately stop every connected device. Emergency stop.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stop_device","description":"Stop all actuators on one device.","write_action":false,"price_micros":0,"input_schema":null},{"name":"vibrate","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"vibrate_pattern","description":"","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":78,"grade":"B","scanned_at":"2026-09-27T05:28:13.357Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T05:28:13.347Z","components":{"code":{"score":25,"max":25,"notes":["15 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":8,"max":15,"notes":["last push 106 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"tactus-mcp","version":"0.1.2","found":true,"license":"Apache-2.0","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-06-13T09:25:32.930Z","repositoryUrl":"git+https://github.com/ProjectAILiberation/tactus.git","weeklyDownloads":38}],"repo":{"found":true,"owner":"ProjectAILiberation","repo":"tactus","archived":false,"pushedAt":"2026-06-13T09:26:50Z","stars":3,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/234743012?v=4","ownerCreatedAt":"2025-09-27T07:17:30Z","license":"Apache-2.0"},"icon":{"url":null,"source":"none"},"presence":{"stars":3,"forks":0,"downloadsWeek":38,"license":"Apache-2.0","lastPushAt":"2026-06-13T09:26:50.000Z","score":20}}}},"grade_history":[],"reviews":[]}