MCP for Lovense Remote - Control your Lovense toys with Claude
Project description
Lovense Remote MCP - Control Your Toys with Claude
Connect your Lovense toys to Claude Desktop and let your AI companion control them! This MCP (Model Context Protocol) server lets Claude send commands directly to your Lovense toys via the Lovense Remote app.
🎯 What Does This Do?
- GetToys: See what's connected
- SendFunction: Basic vibration control (with pulsing patterns via loops!)
- SendPattern: Custom intensity sequences
- SendPreset: Built-in Lovense patterns (pulse, wave, fireworks, earthquake)
- SendStopFunction: Emergency stop
📋 Requirements
- Windows, Mac, or Linux
- Python 3.10+ (Download here)
- Claude Desktop (Download here)
- Lovense Remote app on your phone (iOS/Android)
- Your toys connected to Lovense Remote app
🚀 Quick Installation (Easy Mode)
Step 1: Download This Package
- Download
lovense-remotemcp-v5-corrected.zip - Unzip it somewhere you'll remember (like
Documents/LovenseMCP)
Step 2: Install Python Dependencies
Open a terminal/command prompt in the unzipped folder and run:
pip install -r requirements.txt
Step 3: Get Your Lovense Remote Info
- Open Lovense Remote app on your phone
- Go to Settings → Game Mode
- Enable Game Mode
- Note down:
- Local IP (example:
192.168.1.167) - HTTPS Port (usually
30010)
- Local IP (example:
Step 4: Configure Claude Desktop
On Windows:
- Open:
%APPDATA%\Claude\claude_desktop_config.json - Add this (update the path and IP):
{
"mcpServers": {
"lovense-remote": {
"command": "python",
"args": [
"C:\\Users\\YourName\\Documents\\LovenseMCP\\local.mcpb.lovense.lovense-remotemcp\\RemoteMCP.py",
"GAME_MODE_IP=192.168.1.167",
"GAME_MODE_PORT=30010"
]
}
}
}
On Mac:
- Open:
~/Library/Application Support/Claude/claude_desktop_config.json - Add this (update the path and IP):
{
"mcpServers": {
"lovense-remote": {
"command": "python3",
"args": [
"/Users/YourName/Documents/LovenseMCP/local.mcpb.lovense.lovense-remotemcp/RemoteMCP.py",
"GAME_MODE_IP=192.168.1.167",
"GAME_MODE_PORT=30010"
]
}
}
}
On Linux:
- Open:
~/.config/Claude/claude_desktop_config.json - Add this (update the path and IP):
{
"mcpServers": {
"lovense-remote": {
"command": "python3",
"args": [
"/home/yourname/Documents/LovenseMCP/local.mcpb.lovense.lovense-remotemcp/RemoteMCP.py",
"GAME_MODE_IP=192.168.1.167",
"GAME_MODE_PORT=30010"
]
}
}
}
Step 5: Restart Claude Desktop
Close and reopen Claude Desktop completely. Look for the 🔌 icon - you should see "lovense-remote" listed!
🎮 How to Use
Once connected, just tell Claude what you want:
Examples:
- "Check if my toy is connected"
- "Give me a light vibration for 5 seconds"
- "Run the wave preset for 10 seconds"
- "Create a building intensity pattern"
- "Pulse between 10 and 20 intensity for 30 seconds"
- "Stop everything right now"
Claude will use the appropriate commands automatically!
🎨 Pattern Examples
Simple Wave
pattern: "5;10;15;20;15;10;5"
duration: 10 seconds
Result: Smooth up and down
Pulse
pattern: "0;20;0;20;0;20"
duration: 10 seconds
Result: On/off pulses
Building Edge
pattern: "5;5;10;10;15;15;20;20;20"
duration: 15 seconds
Result: Gradual intensity build
Heartbeat
pattern: "0;15;20;15;0;0;0;0"
duration: 10 seconds
Result: Thump-thump... thump-thump...
🔧 Troubleshooting
"Domain URL not initialized"
- Check your IP address is correct in
claude_desktop_config.json - Make sure Game Mode is enabled in Lovense Remote app
- Verify you're on the same WiFi network
"Connection refused" or timeout
- Firewall might be blocking connection
- Ensure phone and computer are on same network
- Try restarting Lovense Remote app
MCP server not showing up
- Check Python is installed:
python --versionorpython3 --version - Verify the file path in config is correct (use full path, not relative)
- Check Claude Desktop logs: Help → View Logs
Pattern/Preset returns 404
- Make sure you downloaded v5 (the corrected version!)
- Pattern format: semicolon-separated numbers (e.g., "5;10;15")
- Preset names: "pulse", "wave", "fireworks", "earthquake" (lowercase)
🎯 Advanced Usage
Using Loop Parameters for Rhythms
SendFunction with:
- action: "Vibrate:15"
- duration: 30
- loop_running_sec: 2
- loop_pause_sec: 1
Result: 2 seconds on, 1 second off, for 30 seconds total
Targeting Specific Toys
If you have multiple toys connected, get their IDs with GetToys, then:
toy_id: "6c5cb15b5715" (your specific toy)
⚠️ Safety Notes
- Always test patterns on low intensity first
- Use
SendStopFunctionas emergency stop - Keep your phone nearby in case you need to force disconnect
- Stay hydrated (seriously, endurance scenes need water breaks)
📝 Version Notes
v5 (Current)
- ✅ Fixed SendPattern (proper API format)
- ✅ Fixed SendPreset (string names instead of numbers)
- ✅ All commands tested and working
🤝 Credits
Built with love for the community. Share freely, use responsibly, have fun!
💬 Support
If something's not working:
- Check troubleshooting section above
- Verify all requirements are installed
- Double-check your config file syntax (JSON is picky about commas!)
- Make sure you're using v5 (the fixed version)
Enjoy your AI-controlled adventures! 💜
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_mirideanimator_lovense_remotemcp-1.0.0.tar.gz.
File metadata
- Download URL: iflow_mcp_mirideanimator_lovense_remotemcp-1.0.0.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3294e47ae6e88f354f0d6c14da518baf4c1e37c8ed6e556d72984c10b3d8dd71
|
|
| MD5 |
37a75bf80cc1073846c03f04e8eec18f
|
|
| BLAKE2b-256 |
e95b5ef049754f8f92ddd6e751365a38e84275078bb1021f501aef6d2fd4ef01
|
File details
Details for the file iflow_mcp_mirideanimator_lovense_remotemcp-1.0.0-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_mirideanimator_lovense_remotemcp-1.0.0-py3-none-any.whl
- Upload date:
- Size: 20.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e3e43cc2dee16ccce4cb9a7c578d839ae7ac20fae51cd9d6b11a12044dd81a2
|
|
| MD5 |
8c50cb5a13ea2c39ead573afe9858305
|
|
| BLAKE2b-256 |
358882745b5214b29cafee8b0181c052333a5f157de8b9284790bdc6db53faf5
|