release_moku
Disconnect from a Moku device and release ownership to enable handoff between different interfaces like CLI, iPad, or LLM.
Instructions
Disconnect from Moku and release ownership
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/moku_mcp/server.py:243-287 (handler)The implementation of the `release_moku` method which disconnects from the Moku device, relinquishes ownership, and clears internal state.
async def release_moku(self): """ Disconnect from Moku and release ownership. Returns: { "status": "disconnected", "device": "192.168.1.100" } Implementation: See IMPLEMENTATION_GUIDE.md Section 3.3 """ if not self.moku_instance: return { "status": "not_connected", "message": "No active connection to release", } try: # Store device info before releasing device = self.connected_device # Release ownership self.moku_instance.relinquish_ownership() # Clear internal state self.moku_instance = None self.connected_device = None self.last_config = None logger.info(f"Released Moku at {device}") return {"status": "disconnected", "device": device} except Exception as e: logger.error(f"Failed to release Moku: {e}") # Clear state anyway to avoid stuck connections self.moku_instance = None self.connected_device = None self.last_config = None return { "status": "error", "message": "Error releasing device, but cleared internal state", "details": str(e), }