Brings Reachy Mini to life as your coding companion in Claude Code
Reachy Claude MCP
MCP server that brings Reachy Mini to life as your coding companion in Claude Code.
Reachy reacts to your coding sessions with emotions, speech, and celebratory dances - making coding more interactive and fun!
Features
| Feature | Basic | + LLM | + Memory |
|---|---|---|---|
| Robot emotions & animations | ✅ | ✅ | ✅ |
| Text-to-speech (Piper TTS) | ✅ | ✅ | ✅ |
| Session tracking (SQLite) | ✅ | ✅ | ✅ |
| Smart sentiment analysis | ❌ | ✅ | ✅ |
| AI-generated responses | ❌ | ✅ | ✅ |
| Semantic problem search | ❌ | ❌ | ✅ |
| Cross-project memory | ❌ | ❌ | ✅ |
Requirements
- Python 3.10+
- Reachy Mini robot or the simulation (see below)
- Audio output (speakers/headphones)
Platform Support
| Platform | Basic | LLM (MLX) | LLM (Ollama) | Memory |
|---|---|---|---|---|
| macOS Apple Silicon | ✅ | ✅ | ✅ | ✅ |
| macOS Intel | ✅ | ❌ | ✅ | ✅ |
| Linux | ✅ | ❌ | ✅ | ✅ |
| Windows | ⚠️ Experimental | ❌ | ✅ | ✅ |
Quick Start
Install the package:
pip install reachy-claude-mcpStart Reachy Mini simulation (if you don't have the physical robot):
# On macOS with Apple Silicon mjpython -m reachy_mini.daemon.app.main --sim --scene minimal # On other platforms python -m reachy_mini.daemon.app.main --sim --scene minimalAdd to Claude Code (
~/.mcp.json):{ "mcpServers": { "reachy-claude": { "command": "reachy-claude" } } }Start Claude Code and Reachy will react to your coding!
(Optional) Add instructions for Claude - Copy `examples/CLAUDE.md` to your project root or
~/projects/CLAUDE.md. This teaches Claude when and how to use Reachy's tools effectively.
Installation Options
Basic (robot + TTS only)
pip install reachy-claude-mcp
Without LLM features, Reachy uses keyword matching for sentiment - still works great!
With LLM (Smart Responses)
Option A: MLX (Apple Silicon only - fastest)
pip install "reachy-claude-mcp[llm]"
Option B: Ollama (cross-platform)
# Install Ollama from https://ollama.ai
ollama pull qwen2.5:1.5b
# Then just use the basic install - Ollama is auto-detected
pip install reachy-claude-mcp
The system automatically picks the best available backend: MLX → Ollama → keyword fallback.
Full Features (requires Qdrant)
pip install "reachy-claude-mcp[all]"
# Start Qdrant vector database
docker compose up -d
Development Install
git clone https://github.com/mchardysam/reachy-claude-mcp.git
cd reachy-claude-mcp
# Install with all features
pip install -e ".[all]"
# Or specific features
pip install -e ".[llm]" # MLX sentiment analysis (Apple Silicon)
pip install -e ".[memory]" # Qdrant vector store
Running Reachy Mini
No Robot? Use the Simulation!
You don't need a physical Reachy Mini to use this. The simulation works great:
# On macOS with Apple Silicon, use mjpython for the MuJoCo GUI
mjpython -m reachy_mini.daemon.app.main --sim --scene minimal
# On Linux/Windows/Intel Mac
python -m reachy_mini.daemon.app.main --sim --scene minimal
The simulation dashboard will be available at http://localhost:8000.
Physical Robot
Follow the Reachy Mini setup guide to connect to your physical robot.
Configuration
Environment Variables
| Variable | Default | Description |
|---|---|---|
REACHY_CLAUDE_HOME |
~/.reachy-claude |
Data directory for database, memory, voice models |
| LLM Settings | ||
REACHY_LLM_MODEL |
mlx-community/Qwen2.5-1.5B-Instruct-4bit |
MLX model (Apple Silicon) |
REACHY_OLLAMA_HOST |
http://localhost:11434 |
Ollama server URL |
REACHY_OLLAMA_MODEL |
qwen2.5:1.5b |
Ollama model name |
| Memory Settings | ||
REACHY_QDRANT_HOST |
localhost |
Qdrant server host |
REACHY_QDRANT_PORT |
6333 |
Qdrant server port |
| Voice Settings | ||
REACHY_VOICE_MODEL |
(auto-download) | Path to custom Piper voice model |
MCP Tools
Basic Interactions
| Tool | Description |
|---|---|
robot_respond |
Speak a summary (1-2 sentences) + play emotion |
robot_emotion |
Play emotion animation only |
robot_celebrate |
Success animation + excited speech |
robot_thinking |
Thinking/processing animation |
robot_wake_up |
Start-of-session greeting |
robot_sleep |
End-of-session goodbye |
robot_oops |
Error acknowledgment |
robot_acknowledge |
Quick nod without speaking |
Dance Moves
| Tool | Description |
|---|---|
robot_dance |
Perform a dance move |
robot_dance_respond |
Dance while speaking |
| `ro |
Tools (10)
robot_respondSpeak a summary (1-2 sentences) + play emotionrobot_emotionPlay emotion animation onlyrobot_celebrateSuccess animation + excited speechrobot_thinkingThinking/processing animationrobot_wake_upStart-of-session greetingrobot_sleepEnd-of-session goodbyerobot_oopsError acknowledgmentrobot_acknowledgeQuick nod without speakingrobot_dancePerform a dance moverobot_dance_respondDance while speakingEnvironment Variables
REACHY_CLAUDE_HOMEData directory for database, memory, voice modelsREACHY_LLM_MODELMLX model (Apple Silicon)REACHY_OLLAMA_HOSTOllama server URLREACHY_OLLAMA_MODELOllama model nameREACHY_QDRANT_HOSTQdrant server hostREACHY_QDRANT_PORTQdrant server portREACHY_VOICE_MODELPath to custom Piper voice modelConfiguration
{
"mcpServers": {
"reachy-claude": {
"command": "reachy-claude"
}
}
}