{"name":"io.github.mpopovych-thinkhome/larnitech-mcp","slug":"mpopovych-thinkhome-larnitech-mcp","title":"Larnitech","description":"Read, watch and safely control Larnitech smart-home controllers over the API2 protocol.","url":"https://mcp.market/server/mpopovych-thinkhome-larnitech-mcp","rating":null,"grade":"A","score":89,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":18,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-09T07:29:38.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/mpopovych-thinkhome/larnitech-mcp","website":"https://github.com/mpopovych-thinkhome/larnitech-mcp#readme","version":"1.3.2-beta","remotes":[],"packages":[{"registryType":"pypi","identifier":"larnitech-mcp","version":"1.3.2b0","transport":{"type":"stdio"}}],"tools":[{"name":"add_docs_note","description":"Record a new Larnitech finding in the device-type wiki, permanently.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_preference","description":"Record a standing user preference about how to work, permanently.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_connection","description":"Connect and authorize against an object, and report what it answers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"confirm_set","description":"Execute a write prepared by `set_device`, then confirm it settled.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_device","description":"Current status of one device by `addr` (format `MODULE:ADDR`, e.g. `1:101`).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_docs","description":"Reference docs for interpreting or writing a device's `status`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_devices","description":"Full device snapshot from an object, optionally filtered.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_objects","description":"List configured Larnitech objects. Never returns API keys.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_snapshots","description":"Snapshots saved for one object, or a summary across all of them.","write_action":false,"price_micros":0,"input_schema":null},{"name":"object_add","description":"Register an object. `mode` is \"cloud\" (needs `serial`) or \"local\" (needs `host`).","write_action":false,"price_micros":0,"input_schema":null},{"name":"object_remove","description":"Remove an object from the registry and delete its stored key.","write_action":true,"price_micros":0,"input_schema":null},{"name":"object_set_key","description":"Store the API key for an object in the OS credential store.","write_action":false,"price_micros":0,"input_schema":null},{"name":"read_snapshot","description":"Read a saved snapshot back, by the filename `list_snapshots` reports.","write_action":false,"price_micros":0,"input_schema":null},{"name":"report_bug","description":"Turn a bug the user hit into a ready-to-file GitHub issue.","write_action":false,"price_micros":0,"input_schema":null},{"name":"save_snapshot","description":"Keep a slice of controller data on disk, for later.","write_action":false,"price_micros":0,"input_schema":null},{"name":"set_device","description":"Validate a write and return a preview plus a confirmation token.","write_action":false,"price_micros":0,"input_schema":null},{"name":"watch_list","description":"Active watches, with how long each has run and how much it has seen.","write_action":false,"price_micros":0,"input_schema":null},{"name":"watch_read","description":"Drain everything that changed since the last read. Never blocks.","write_action":false,"price_micros":0,"input_schema":null},{"name":"watch_start","description":"Begin watching status changes. Returns immediately with a `watch_id`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"watch_stop","description":"Stop a watch and close its socket. Any undrained changes are returned.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":89,"grade":"A","scanned_at":"2026-09-19T21:33:04.046Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-19T21:33:04.042Z","components":{"code":{"score":25,"max":25,"notes":["12 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 11 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"larnitech-mcp","version":"1.3.2b0","found":true,"license":"MIT","dependencyCount":2,"publishedAt":"2026-09-09T07:30:19.671698Z","repositoryUrl":"https://github.com/mpopovych-thinkhome/larnitech-mcp"}],"repo":{"found":true,"owner":"mpopovych-thinkhome","repo":"larnitech-mcp","archived":false,"pushedAt":"2026-09-09T07:29:38Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/257232141?v=4","ownerCreatedAt":"2026-01-26T05:32:46Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/257232141?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-09T07:29:38.000Z","score":18}}}},"grade_history":[],"reviews":[]}