agentvibes 4.2.0 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/.agentvibes/bmad/bmad-voices.md +69 -69
  2. package/.agentvibes/config.json +12 -0
  3. package/.claude/activation-instructions +54 -54
  4. package/.claude/audio/tracks/README.md +52 -52
  5. package/.claude/commands/agent-vibes/add.md +21 -21
  6. package/.claude/commands/agent-vibes/agent-vibes.md +101 -101
  7. package/.claude/commands/agent-vibes/agent.md +79 -79
  8. package/.claude/commands/agent-vibes/background-music.md +111 -111
  9. package/.claude/commands/agent-vibes/bmad.md +198 -198
  10. package/.claude/commands/agent-vibes/clean.md +18 -18
  11. package/.claude/commands/agent-vibes/cleanup.md +18 -18
  12. package/.claude/commands/agent-vibes/commands.json +145 -145
  13. package/.claude/commands/agent-vibes/effects.md +97 -97
  14. package/.claude/commands/agent-vibes/get.md +9 -9
  15. package/.claude/commands/agent-vibes/hide.md +91 -91
  16. package/.claude/commands/agent-vibes/language.md +23 -23
  17. package/.claude/commands/agent-vibes/learn.md +67 -67
  18. package/.claude/commands/agent-vibes/list.md +13 -13
  19. package/.claude/commands/agent-vibes/mute.md +37 -37
  20. package/.claude/commands/agent-vibes/preview.md +17 -17
  21. package/.claude/commands/agent-vibes/provider.md +68 -68
  22. package/.claude/commands/agent-vibes/replay-target.md +14 -14
  23. package/.claude/commands/agent-vibes/sample.md +12 -12
  24. package/.claude/commands/agent-vibes/set-favorite-voice.md +84 -84
  25. package/.claude/commands/agent-vibes/set-pretext.md +65 -65
  26. package/.claude/commands/agent-vibes/set-speed.md +41 -41
  27. package/.claude/commands/agent-vibes/show.md +84 -84
  28. package/.claude/commands/agent-vibes/switch.md +87 -87
  29. package/.claude/commands/agent-vibes/target-voice.md +26 -26
  30. package/.claude/commands/agent-vibes/target.md +30 -30
  31. package/.claude/commands/agent-vibes/translate.md +68 -68
  32. package/.claude/commands/agent-vibes/unmute.md +45 -45
  33. package/.claude/commands/agent-vibes/verbosity.md +89 -89
  34. package/.claude/commands/agent-vibes/whoami.md +7 -7
  35. package/.claude/commands/agent-vibes-bmad-voices.md +117 -117
  36. package/.claude/commands/agent-vibes-rdp.md +24 -24
  37. package/.claude/config/agentvibes.json +1 -0
  38. package/.claude/config/audio-effects.cfg +2 -2
  39. package/.claude/config/audio-effects.cfg.sample +52 -52
  40. package/.claude/config/background-music-volume.txt +1 -0
  41. package/.claude/config/intro-text.txt +1 -0
  42. package/.claude/config/piper-speech-rate.txt +4 -0
  43. package/.claude/config/piper-target-speech-rate.txt +1 -0
  44. package/.claude/config/reverb-level.txt +1 -0
  45. package/.claude/config/tts-speech-rate.txt +4 -0
  46. package/.claude/config/tts-target-speech-rate.txt +1 -0
  47. package/.claude/docs/TERMUX_SETUP.md +408 -408
  48. package/.claude/github-star-reminder.txt +1 -1
  49. package/.claude/hooks/README-TTS-QUEUE.md +135 -135
  50. package/.claude/hooks/audio-cache-utils.sh +246 -246
  51. package/.claude/hooks/audio-processor.sh +433 -433
  52. package/.claude/hooks/background-music-manager.sh +404 -404
  53. package/.claude/hooks/bmad-speak-enhanced.sh +165 -165
  54. package/.claude/hooks/bmad-speak.sh +269 -269
  55. package/.claude/hooks/bmad-tts-injector.sh +568 -568
  56. package/.claude/hooks/bmad-voice-manager.sh +928 -928
  57. package/.claude/hooks/clawdbot-receiver-SECURE.sh +129 -129
  58. package/.claude/hooks/clawdbot-receiver.sh +107 -107
  59. package/.claude/hooks/clean-audio-cache.sh +22 -22
  60. package/.claude/hooks/cleanup-cache.sh +106 -106
  61. package/.claude/hooks/configure-rdp-mode.sh +137 -137
  62. package/.claude/hooks/download-extra-voices.sh +244 -244
  63. package/.claude/hooks/effects-manager.sh +268 -268
  64. package/.claude/hooks/github-star-reminder.sh +154 -154
  65. package/.claude/hooks/language-manager.sh +362 -362
  66. package/.claude/hooks/learn-manager.sh +492 -492
  67. package/.claude/hooks/macos-voice-manager.sh +205 -205
  68. package/.claude/hooks/migrate-background-music.sh +125 -125
  69. package/.claude/hooks/migrate-to-agentvibes.sh +161 -161
  70. package/.claude/hooks/optimize-background-music.sh +87 -87
  71. package/.claude/hooks/path-resolver.sh +60 -60
  72. package/.claude/hooks/personality-manager.sh +448 -448
  73. package/.claude/hooks/piper-download-voices.sh +225 -225
  74. package/.claude/hooks/piper-installer.sh +292 -292
  75. package/.claude/hooks/piper-multispeaker-registry.sh +171 -171
  76. package/.claude/hooks/piper-voice-manager.sh +24 -3
  77. package/.claude/hooks/play-tts-agentvibes-receiver-for-voiceless-connections.sh +90 -90
  78. package/.claude/hooks/play-tts-enhanced.sh +105 -105
  79. package/.claude/hooks/play-tts-macos.sh +368 -368
  80. package/.claude/hooks/play-tts-piper.sh +679 -679
  81. package/.claude/hooks/play-tts-soprano.sh +356 -356
  82. package/.claude/hooks/play-tts-ssh-remote.sh +167 -167
  83. package/.claude/hooks/play-tts-termux-ssh.sh +169 -169
  84. package/.claude/hooks/play-tts.sh +301 -301
  85. package/.claude/hooks/prepare-release.sh +54 -54
  86. package/.claude/hooks/provider-commands.sh +617 -617
  87. package/.claude/hooks/provider-manager.sh +399 -399
  88. package/.claude/hooks/replay-target-audio.sh +95 -95
  89. package/.claude/hooks/requirements.txt +6 -6
  90. package/.claude/hooks/sentiment-manager.sh +201 -201
  91. package/.claude/hooks/session-start-tts.sh +81 -81
  92. package/.claude/hooks/soprano-gradio-synth.py +139 -139
  93. package/.claude/hooks/speed-manager.sh +291 -291
  94. package/.claude/hooks/stop-tts.sh +84 -84
  95. package/.claude/hooks/termux-installer.sh +261 -261
  96. package/.claude/hooks/translate-manager.sh +341 -341
  97. package/.claude/hooks/translator.py +237 -237
  98. package/.claude/hooks/tts-queue-worker.sh +145 -145
  99. package/.claude/hooks/tts-queue.sh +165 -165
  100. package/.claude/hooks/verbosity-manager.sh +178 -178
  101. package/.claude/hooks/voice-manager.sh +548 -548
  102. package/.claude/hooks-windows/audio-cache-utils.ps1 +119 -119
  103. package/.claude/hooks-windows/background-music-manager.ps1 +348 -0
  104. package/.claude/hooks-windows/clean-audio-cache.ps1 +53 -0
  105. package/.claude/hooks-windows/download-extra-voices.ps1 +185 -0
  106. package/.claude/hooks-windows/effects-manager.ps1 +294 -0
  107. package/.claude/hooks-windows/language-manager.ps1 +193 -0
  108. package/.claude/hooks-windows/learn-manager.ps1 +241 -0
  109. package/.claude/hooks-windows/personality-manager.ps1 +266 -0
  110. package/.claude/hooks-windows/play-tts-piper.ps1 +209 -0
  111. package/.claude/hooks-windows/play-tts-sapi.ps1 +108 -0
  112. package/.claude/hooks-windows/play-tts-soprano.ps1 +159 -158
  113. package/.claude/hooks-windows/play-tts-windows-piper.ps1 +50 -5
  114. package/.claude/hooks-windows/play-tts-windows-sapi.ps1 +108 -108
  115. package/.claude/hooks-windows/play-tts.ps1 +344 -266
  116. package/.claude/hooks-windows/provider-manager.ps1 +29 -10
  117. package/.claude/hooks-windows/session-start-tts.ps1 +124 -124
  118. package/.claude/hooks-windows/soprano-gradio-synth.py +153 -153
  119. package/.claude/hooks-windows/speed-manager.ps1 +166 -0
  120. package/.claude/hooks-windows/verbosity-manager.ps1 +119 -0
  121. package/.claude/hooks-windows/voice-manager-windows.ps1 +92 -8
  122. package/.claude/output-styles/agent-vibes.md +202 -202
  123. package/.claude/personalities/angry.md +14 -14
  124. package/.claude/personalities/annoying.md +14 -14
  125. package/.claude/personalities/crass.md +14 -14
  126. package/.claude/personalities/dramatic.md +14 -14
  127. package/.claude/personalities/dry-humor.md +50 -50
  128. package/.claude/personalities/flirty.md +20 -20
  129. package/.claude/personalities/funny.md +14 -14
  130. package/.claude/personalities/grandpa.md +32 -32
  131. package/.claude/personalities/millennial.md +14 -14
  132. package/.claude/personalities/moody.md +14 -14
  133. package/.claude/personalities/normal.md +16 -16
  134. package/.claude/personalities/pirate.md +14 -14
  135. package/.claude/personalities/poetic.md +14 -14
  136. package/.claude/personalities/professional.md +14 -14
  137. package/.claude/personalities/rapper.md +55 -55
  138. package/.claude/personalities/robot.md +14 -14
  139. package/.claude/personalities/sarcastic.md +38 -38
  140. package/.claude/personalities/sassy.md +14 -14
  141. package/.claude/personalities/surfer-dude.md +14 -14
  142. package/.claude/personalities/zen.md +14 -14
  143. package/.claude/settings.json +15 -15
  144. package/.claude/verbosity.txt +1 -1
  145. package/.clawdbot/README.md +105 -105
  146. package/.clawdbot/skill/SKILL.md +241 -241
  147. package/.mcp.json +12 -0
  148. package/CLAUDE.md +170 -170
  149. package/README.md +2029 -2007
  150. package/RELEASE_NOTES.md +1310 -1203
  151. package/WINDOWS-SETUP.md +208 -208
  152. package/bin/agent-vibes +39 -39
  153. package/bin/agentvibes-voice-browser.js +1840 -1840
  154. package/bin/agentvibes.js +48 -2
  155. package/bin/mcp-server.js +121 -121
  156. package/bin/mcp-server.sh +206 -206
  157. package/bin/test-bmad-pr +78 -78
  158. package/mcp-server/QUICK_START.md +203 -203
  159. package/mcp-server/README.md +345 -345
  160. package/mcp-server/WINDOWS_SETUP.md +260 -260
  161. package/mcp-server/docs/troubleshooting-audio.md +313 -313
  162. package/mcp-server/examples/claude_desktop_config.json +11 -11
  163. package/mcp-server/examples/claude_desktop_config_piper.json +9 -9
  164. package/mcp-server/examples/custom_instructions.md +169 -169
  165. package/mcp-server/install-deps.js +130 -130
  166. package/mcp-server/pyproject.toml +52 -52
  167. package/mcp-server/requirements.txt +2 -2
  168. package/mcp-server/server.py +1465 -1453
  169. package/mcp-server/test_server.py +395 -395
  170. package/mcp-server/test_windows_script_parity.py +336 -0
  171. package/package.json +110 -110
  172. package/setup-windows.ps1 +815 -815
  173. package/src/bmad-detector.js +71 -71
  174. package/src/cli/list-personalities.js +110 -110
  175. package/src/cli/list-voices.js +114 -114
  176. package/src/commands/bmad-voices.js +394 -394
  177. package/src/commands/install-mcp.js +476 -476
  178. package/src/console/app.js +824 -824
  179. package/src/console/audio-env.js +20 -1
  180. package/src/console/brand-colors.js +13 -13
  181. package/src/console/constants/personalities.js +44 -44
  182. package/src/console/footer-config.js +50 -50
  183. package/src/console/modals/modal-overlay.js +247 -247
  184. package/src/console/navigation.js +62 -62
  185. package/src/console/tabs/agents-tab.js +1684 -1516
  186. package/src/console/tabs/help-tab.js +261 -261
  187. package/src/console/tabs/install-tab.js +1007 -991
  188. package/src/console/tabs/music-tab.js +22 -8
  189. package/src/console/tabs/placeholder-tab.js +53 -53
  190. package/src/console/tabs/readme-tab.js +267 -267
  191. package/src/console/tabs/receiver-tab.js +1472 -1212
  192. package/src/console/tabs/settings-tab.js +152 -79
  193. package/src/console/tabs/voices-tab.js +100 -21
  194. package/src/console/widgets/destroy-list.js +25 -25
  195. package/src/console/widgets/format-utils.js +89 -89
  196. package/src/console/widgets/notice.js +55 -55
  197. package/src/console/widgets/personality-picker.js +185 -185
  198. package/src/console/widgets/reverb-picker.js +94 -94
  199. package/src/console/widgets/track-picker.js +285 -285
  200. package/src/installer/music-file-input.js +304 -304
  201. package/src/installer.js +5882 -5829
  202. package/src/services/agent-voice-store.js +423 -423
  203. package/src/services/config-service.js +264 -264
  204. package/src/services/navigation-service.js +123 -123
  205. package/src/services/provider-service.js +132 -132
  206. package/src/services/verbosity-service.js +157 -157
  207. package/src/utils/audio-duration-validator.js +298 -298
  208. package/src/utils/audio-format-validator.js +277 -277
  209. package/src/utils/dependency-checker.js +469 -466
  210. package/src/utils/file-ownership-verifier.js +358 -358
  211. package/src/utils/list-formatter.js +194 -194
  212. package/src/utils/music-file-validator.js +285 -285
  213. package/src/utils/preview-list-prompt.js +136 -136
  214. package/src/utils/provider-validator.js +96 -12
  215. package/src/utils/secure-music-storage.js +412 -412
  216. package/templates/agentvibes-receiver.sh +482 -482
  217. package/templates/audio/welcome-music.mp3 +0 -0
  218. package/voice-assignments.json +8244 -8244
  219. package/.claude/config/background-music-position.txt +0 -1
@@ -1,345 +1,345 @@
1
- # AgentVibes MCP Server
2
-
3
- **Give Claude Desktop a Voice!** 🎤✨
4
-
5
- An MCP (Model Context Protocol) server that brings AgentVibes text-to-speech capabilities to Claude Desktop and other MCP clients.
6
-
7
- ## Features
8
-
9
- - 🎤 **Text-to-Speech**: Convert any text to natural-sounding speech
10
- - 🎭 **Personalities**: Choose from flirty, sarcastic, pirate, robot, zen, and more!
11
- - 🌍 **Multi-language**: Speak in 25+ languages (Spanish, French, German, etc.)
12
- - 🎵 **Multiple Voices**: Access 30+ premium Piper TTS voices or free Piper voices
13
- - 🔄 **Two Providers**: Piper TTS (premium AI) or Piper (free, offline)
14
- - ⚙️ **Full Configuration**: Manage voices, personalities, and languages
15
-
16
- ## Prerequisites
17
-
18
- Before using the MCP server, you need AgentVibes installed:
19
-
20
- ```bash
21
- # Clone AgentVibes (if you haven't already)
22
- git clone https://github.com/paulpreibisch/AgentVibes.git
23
- cd AgentVibes
24
-
25
- # Install dependencies (choose one):
26
- # Option 1: Piper TTS (premium, requires API key)
27
-
28
- # Option 2: Piper (free, offline)
29
- pipx install piper-tts
30
- ```
31
-
32
- ## Installation
33
-
34
- ### 1. Install Python Dependencies
35
-
36
- **For macOS/Linux:**
37
-
38
- ```bash
39
- cd mcp-server
40
- pip install -r requirements.txt
41
- ```
42
-
43
- Or using uv (recommended):
44
-
45
- ```bash
46
- uv pip install -r requirements.txt
47
- ```
48
-
49
- **For Windows:**
50
-
51
- Open PowerShell or Command Prompt and run:
52
-
53
- ```powershell
54
- cd C:\path\to\AgentVibes\mcp-server
55
- pip install -r requirements.txt
56
- ```
57
-
58
- **IMPORTANT for Windows users:** Make sure you install the `mcp` package globally on your Windows Python:
59
-
60
- ```powershell
61
- pip install mcp
62
- ```
63
-
64
- If you have multiple Python versions, use:
65
-
66
- ```powershell
67
- python -m pip install mcp
68
- ```
69
-
70
- Verify installation:
71
-
72
- ```powershell
73
- python -c "import mcp; print('MCP installed successfully!')"
74
- ```
75
-
76
- ### 2. Configure Claude Desktop
77
-
78
- Edit your Claude Desktop configuration file:
79
-
80
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
81
-
82
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
83
-
84
- **Linux:** `~/.config/Claude/claude_desktop_config.json`
85
-
86
- Add the AgentVibes MCP server:
87
-
88
- ```json
89
- {
90
- "mcpServers": {
91
- "agentvibes": {
92
- "command": "python",
93
- "args": ["/absolute/path/to/AgentVibes/mcp-server/server.py"],
94
- "env": {
95
- }
96
- }
97
- }
98
- }
99
- ```
100
-
101
- **Note:** Replace `/absolute/path/to/AgentVibes/` with the actual path to your AgentVibes installation.
102
-
103
- ### 3. Restart Claude Desktop
104
-
105
- Close and reopen Claude Desktop for changes to take effect.
106
-
107
- ## Usage
108
-
109
- Once configured, Claude Desktop will have access to these AgentVibes tools:
110
-
111
- ### Basic Text-to-Speech
112
-
113
- ```
114
- You: "Say hello using TTS"
115
- Claude: [Calls text_to_speech tool]
116
- [Your computer speaks: "Hello!"]
117
- ```
118
-
119
- ### With Personality
120
-
121
- ```
122
- You: "Acknowledge my request with a pirate personality"
123
- Claude: [Calls text_to_speech with personality="pirate"]
124
- [Your computer speaks: "Arr matey, I'll handle that fer ye!"]
125
- ```
126
-
127
- ### Multi-language
128
-
129
- ```
130
- You: "Say welcome in Spanish"
131
- Claude: [Calls text_to_speech with text="Bienvenido", language="spanish"]
132
- [Your computer speaks in Spanish: "Bienvenido"]
133
- ```
134
-
135
- ### Voice Control
136
-
137
- ```
138
- You: "List available voices"
139
- Claude: [Calls list_voices tool]
140
- Shows: Aria, Northern Terry, Cowboy Bob, etc.
141
-
142
- You: "Switch to Northern Terry"
143
- Claude: [Calls set_voice with voice_name="Northern Terry"]
144
- ✅ Voice switched to: Northern Terry
145
- ```
146
-
147
- ## Available Tools
148
-
149
- ### Core TTS
150
-
151
- - **`text_to_speech(text, voice?, personality?, language?)`**
152
- - Convert text to speech with optional customization
153
- - Supports all voices, personalities, and languages
154
-
155
- ### Voice Management
156
-
157
- - **`list_voices()`** - List all available voices
158
- - **`set_voice(voice_name)`** - Switch to a different voice
159
-
160
- ### Personality Management
161
-
162
- - **`list_personalities()`** - Show available personalities
163
- - **`set_personality(personality)`** - Set personality style
164
- - Options: flirty, sarcastic, pirate, robot, zen, dramatic, millennial, etc.
165
-
166
- ### Language Support
167
-
168
- - **`set_language(language)`** - Set TTS language
169
- - Supports: spanish, french, german, italian, portuguese, chinese, japanese, and 18+ more
170
-
171
- ### Configuration
172
-
173
- - **`get_config()`** - View current voice, personality, language, and provider
174
- - **`replay_audio(n?)`** - Replay recently generated TTS audio (1-10)
175
-
176
- ## Custom Instructions for Auto-TTS
177
-
178
- Want Claude Desktop to automatically speak acknowledgments and completions? Add this to your Claude Desktop **custom instructions**:
179
-
180
- ```markdown
181
- # Voice Acknowledgement Protocol
182
-
183
- When I give you a task:
184
- 1. Use text_to_speech to acknowledge before starting work
185
- 2. Perform the task
186
- 3. Use text_to_speech to confirm completion
187
-
188
- Keep spoken messages brief (under 150 characters).
189
-
190
- Example:
191
- - User: "Search for Python files"
192
- - You: [Call text_to_speech("Looking for Python files now")]
193
- [Do the search]
194
- [Call text_to_speech("Found 23 Python files")]
195
- ```
196
-
197
- ### With Personality
198
-
199
- ```markdown
200
- # Voice Protocol with Personality
201
-
202
- Before starting any task, check my personality:
203
- 1. Call get_config() to see current personality
204
- 2. Generate unique acknowledgment in that personality style
205
- 3. Use text_to_speech with the generated message
206
- 4. Do the work
207
- 5. Generate unique completion message
208
- 6. Use text_to_speech again
209
-
210
- Never repeat the same phrases! Each response should be creative and unique.
211
-
212
- Examples for "flirty" personality:
213
- - "I'll handle that for you, sweetheart"
214
- - "Ooh, I love when you ask me to do that"
215
- - "My pleasure, darling"
216
-
217
- Examples for "sarcastic" personality:
218
- - "Oh what a treat, another task"
219
- - "How delightful, more work"
220
- - "Well isn't this fun"
221
- ```
222
-
223
- ## Example Workflow in Claude Desktop
224
-
225
- ```
226
- You: "Find all TODO comments in my codebase"
227
-
228
- Claude Desktop:
229
- 🎵 [Calls text_to_speech("Looking for TODO comments now")]
230
- [Searches codebase using grep tools]
231
-
232
- Found 47 TODO comments across 12 files:
233
- - src/main.py:15 - TODO: Refactor this function
234
- - src/utils.py:42 - TODO: Add error handling
235
- ...
236
-
237
- 🎵 [Calls text_to_speech("Found 47 TODO comments in your codebase")]
238
- ```
239
-
240
- ## Troubleshooting
241
-
242
- ### MCP Server Not Showing in Claude Desktop
243
-
244
- 1. Check that the path in `claude_desktop_config.json` is absolute
245
- 2. Verify Python is in your PATH: `which python` or `python --version`
246
- 3. Check Claude Desktop logs:
247
- - **macOS:** `~/Library/Logs/Claude/mcp*.log`
248
- - **Windows:** `%APPDATA%\Claude\logs\mcp*.log`
249
-
250
- ### Audio Not Playing
251
-
252
- 1. **Piper TTS users:** Check your API key is set in the config
253
- 2. **Piper users:** Ensure Piper is installed: `piper --version`
254
- 3. **WSL users:** Make sure audio is configured (see AgentVibes main README)
255
- 4. Test TTS directly:
256
- ```bash
257
- cd /path/to/AgentVibes
258
- .claude/hooks/play-tts.sh "Test message"
259
- ```
260
-
261
- ### Voice/Personality Not Working
262
-
263
- The MCP server uses your AgentVibes installation. Check settings:
264
-
265
- ```bash
266
- # Check current voice
267
- .claude/hooks/voice-manager.sh get
268
-
269
- # Check current personality
270
- cat .claude/tts-personality.txt
271
-
272
- # Switch voice
273
- .claude/hooks/voice-manager.sh switch "Aria"
274
-
275
- # Set personality
276
- .claude/hooks/personality-manager.sh set flirty
277
- ```
278
-
279
- ## Advanced Configuration
280
-
281
- ### Using Project-Specific Settings
282
-
283
- AgentVibes supports project-local configuration. Each project can have its own voice, personality, and language:
284
-
285
- ```bash
286
- # In your project directory
287
- mkdir -p .claude
288
- echo "Northern Terry" > .claude/tts-voice.txt
289
- echo "pirate" > .claude/tts-personality.txt
290
- echo "spanish" > .claude/tts-language.txt
291
- ```
292
-
293
- ### Using Piper (Free, Offline) Instead of Piper TTS
294
-
295
- ```bash
296
- # Switch to Piper provider
297
- .claude/hooks/provider-manager.sh switch piper
298
-
299
- # Install a voice model
300
- pipx install piper-tts
301
-
302
- # Voice will download automatically on first use
303
- ```
304
-
305
- ### Custom Personalities
306
-
307
- Create your own personality:
308
-
309
- ```bash
310
- .claude/hooks/personality-manager.sh add mycustom
311
- # Edit: .claude/personalities/mycustom.md
312
-
313
- # Use it
314
- .claude/hooks/personality-manager.sh set mycustom
315
- ```
316
-
317
- ## Integration with Other MCP Clients
318
-
319
- This server works with any MCP-compatible client, not just Claude Desktop:
320
-
321
- - ✅ Claude Desktop (macOS, Windows, Linux)
322
- - ✅ Claude Code CLI (already built-in)
323
- - ✅ Custom MCP clients
324
- - ✅ Future MCP-compatible tools
325
-
326
- ## Contributing
327
-
328
- Found a bug or have a feature request? Open an issue on GitHub!
329
-
330
- ## License
331
-
332
- MIT License - see the main AgentVibes repository for details.
333
-
334
- ## Links
335
-
336
- - **AgentVibes GitHub:** https://github.com/paulpreibisch/AgentVibes
337
- - **MCP Protocol:** https://modelcontextprotocol.io
338
- - **Piper TTS:** https://piper.io
339
- - **Piper TTS:** https://github.com/rhasspy/piper
340
-
341
- ---
342
-
343
- **Made with ❤️ by the AgentVibes community**
344
-
345
- 🎤 *Now Claude Desktop can finally speak!*
1
+ # AgentVibes MCP Server
2
+
3
+ **Give Claude Desktop a Voice!** 🎤✨
4
+
5
+ An MCP (Model Context Protocol) server that brings AgentVibes text-to-speech capabilities to Claude Desktop and other MCP clients.
6
+
7
+ ## Features
8
+
9
+ - 🎤 **Text-to-Speech**: Convert any text to natural-sounding speech
10
+ - 🎭 **Personalities**: Choose from flirty, sarcastic, pirate, robot, zen, and more!
11
+ - 🌍 **Multi-language**: Speak in 25+ languages (Spanish, French, German, etc.)
12
+ - 🎵 **Multiple Voices**: Access 30+ premium Piper TTS voices or free Piper voices
13
+ - 🔄 **Two Providers**: Piper TTS (premium AI) or Piper (free, offline)
14
+ - ⚙️ **Full Configuration**: Manage voices, personalities, and languages
15
+
16
+ ## Prerequisites
17
+
18
+ Before using the MCP server, you need AgentVibes installed:
19
+
20
+ ```bash
21
+ # Clone AgentVibes (if you haven't already)
22
+ git clone https://github.com/paulpreibisch/AgentVibes.git
23
+ cd AgentVibes
24
+
25
+ # Install dependencies (choose one):
26
+ # Option 1: Piper TTS (premium, requires API key)
27
+
28
+ # Option 2: Piper (free, offline)
29
+ pipx install piper-tts
30
+ ```
31
+
32
+ ## Installation
33
+
34
+ ### 1. Install Python Dependencies
35
+
36
+ **For macOS/Linux:**
37
+
38
+ ```bash
39
+ cd mcp-server
40
+ pip install -r requirements.txt
41
+ ```
42
+
43
+ Or using uv (recommended):
44
+
45
+ ```bash
46
+ uv pip install -r requirements.txt
47
+ ```
48
+
49
+ **For Windows:**
50
+
51
+ Open PowerShell or Command Prompt and run:
52
+
53
+ ```powershell
54
+ cd C:\path\to\AgentVibes\mcp-server
55
+ pip install -r requirements.txt
56
+ ```
57
+
58
+ **IMPORTANT for Windows users:** Make sure you install the `mcp` package globally on your Windows Python:
59
+
60
+ ```powershell
61
+ pip install mcp
62
+ ```
63
+
64
+ If you have multiple Python versions, use:
65
+
66
+ ```powershell
67
+ python -m pip install mcp
68
+ ```
69
+
70
+ Verify installation:
71
+
72
+ ```powershell
73
+ python -c "import mcp; print('MCP installed successfully!')"
74
+ ```
75
+
76
+ ### 2. Configure Claude Desktop
77
+
78
+ Edit your Claude Desktop configuration file:
79
+
80
+ **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
81
+
82
+ **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
83
+
84
+ **Linux:** `~/.config/Claude/claude_desktop_config.json`
85
+
86
+ Add the AgentVibes MCP server:
87
+
88
+ ```json
89
+ {
90
+ "mcpServers": {
91
+ "agentvibes": {
92
+ "command": "python",
93
+ "args": ["/absolute/path/to/AgentVibes/mcp-server/server.py"],
94
+ "env": {
95
+ }
96
+ }
97
+ }
98
+ }
99
+ ```
100
+
101
+ **Note:** Replace `/absolute/path/to/AgentVibes/` with the actual path to your AgentVibes installation.
102
+
103
+ ### 3. Restart Claude Desktop
104
+
105
+ Close and reopen Claude Desktop for changes to take effect.
106
+
107
+ ## Usage
108
+
109
+ Once configured, Claude Desktop will have access to these AgentVibes tools:
110
+
111
+ ### Basic Text-to-Speech
112
+
113
+ ```
114
+ You: "Say hello using TTS"
115
+ Claude: [Calls text_to_speech tool]
116
+ [Your computer speaks: "Hello!"]
117
+ ```
118
+
119
+ ### With Personality
120
+
121
+ ```
122
+ You: "Acknowledge my request with a pirate personality"
123
+ Claude: [Calls text_to_speech with personality="pirate"]
124
+ [Your computer speaks: "Arr matey, I'll handle that fer ye!"]
125
+ ```
126
+
127
+ ### Multi-language
128
+
129
+ ```
130
+ You: "Say welcome in Spanish"
131
+ Claude: [Calls text_to_speech with text="Bienvenido", language="spanish"]
132
+ [Your computer speaks in Spanish: "Bienvenido"]
133
+ ```
134
+
135
+ ### Voice Control
136
+
137
+ ```
138
+ You: "List available voices"
139
+ Claude: [Calls list_voices tool]
140
+ Shows: Aria, Northern Terry, Cowboy Bob, etc.
141
+
142
+ You: "Switch to Northern Terry"
143
+ Claude: [Calls set_voice with voice_name="Northern Terry"]
144
+ ✅ Voice switched to: Northern Terry
145
+ ```
146
+
147
+ ## Available Tools
148
+
149
+ ### Core TTS
150
+
151
+ - **`text_to_speech(text, voice?, personality?, language?)`**
152
+ - Convert text to speech with optional customization
153
+ - Supports all voices, personalities, and languages
154
+
155
+ ### Voice Management
156
+
157
+ - **`list_voices()`** - List all available voices
158
+ - **`set_voice(voice_name)`** - Switch to a different voice
159
+
160
+ ### Personality Management
161
+
162
+ - **`list_personalities()`** - Show available personalities
163
+ - **`set_personality(personality)`** - Set personality style
164
+ - Options: flirty, sarcastic, pirate, robot, zen, dramatic, millennial, etc.
165
+
166
+ ### Language Support
167
+
168
+ - **`set_language(language)`** - Set TTS language
169
+ - Supports: spanish, french, german, italian, portuguese, chinese, japanese, and 18+ more
170
+
171
+ ### Configuration
172
+
173
+ - **`get_config()`** - View current voice, personality, language, and provider
174
+ - **`replay_audio(n?)`** - Replay recently generated TTS audio (1-10)
175
+
176
+ ## Custom Instructions for Auto-TTS
177
+
178
+ Want Claude Desktop to automatically speak acknowledgments and completions? Add this to your Claude Desktop **custom instructions**:
179
+
180
+ ```markdown
181
+ # Voice Acknowledgement Protocol
182
+
183
+ When I give you a task:
184
+ 1. Use text_to_speech to acknowledge before starting work
185
+ 2. Perform the task
186
+ 3. Use text_to_speech to confirm completion
187
+
188
+ Keep spoken messages brief (under 150 characters).
189
+
190
+ Example:
191
+ - User: "Search for Python files"
192
+ - You: [Call text_to_speech("Looking for Python files now")]
193
+ [Do the search]
194
+ [Call text_to_speech("Found 23 Python files")]
195
+ ```
196
+
197
+ ### With Personality
198
+
199
+ ```markdown
200
+ # Voice Protocol with Personality
201
+
202
+ Before starting any task, check my personality:
203
+ 1. Call get_config() to see current personality
204
+ 2. Generate unique acknowledgment in that personality style
205
+ 3. Use text_to_speech with the generated message
206
+ 4. Do the work
207
+ 5. Generate unique completion message
208
+ 6. Use text_to_speech again
209
+
210
+ Never repeat the same phrases! Each response should be creative and unique.
211
+
212
+ Examples for "flirty" personality:
213
+ - "I'll handle that for you, sweetheart"
214
+ - "Ooh, I love when you ask me to do that"
215
+ - "My pleasure, darling"
216
+
217
+ Examples for "sarcastic" personality:
218
+ - "Oh what a treat, another task"
219
+ - "How delightful, more work"
220
+ - "Well isn't this fun"
221
+ ```
222
+
223
+ ## Example Workflow in Claude Desktop
224
+
225
+ ```
226
+ You: "Find all TODO comments in my codebase"
227
+
228
+ Claude Desktop:
229
+ 🎵 [Calls text_to_speech("Looking for TODO comments now")]
230
+ [Searches codebase using grep tools]
231
+
232
+ Found 47 TODO comments across 12 files:
233
+ - src/main.py:15 - TODO: Refactor this function
234
+ - src/utils.py:42 - TODO: Add error handling
235
+ ...
236
+
237
+ 🎵 [Calls text_to_speech("Found 47 TODO comments in your codebase")]
238
+ ```
239
+
240
+ ## Troubleshooting
241
+
242
+ ### MCP Server Not Showing in Claude Desktop
243
+
244
+ 1. Check that the path in `claude_desktop_config.json` is absolute
245
+ 2. Verify Python is in your PATH: `which python` or `python --version`
246
+ 3. Check Claude Desktop logs:
247
+ - **macOS:** `~/Library/Logs/Claude/mcp*.log`
248
+ - **Windows:** `%APPDATA%\Claude\logs\mcp*.log`
249
+
250
+ ### Audio Not Playing
251
+
252
+ 1. **Piper TTS users:** Check your API key is set in the config
253
+ 2. **Piper users:** Ensure Piper is installed: `piper --version`
254
+ 3. **WSL users:** Make sure audio is configured (see AgentVibes main README)
255
+ 4. Test TTS directly:
256
+ ```bash
257
+ cd /path/to/AgentVibes
258
+ .claude/hooks/play-tts.sh "Test message"
259
+ ```
260
+
261
+ ### Voice/Personality Not Working
262
+
263
+ The MCP server uses your AgentVibes installation. Check settings:
264
+
265
+ ```bash
266
+ # Check current voice
267
+ .claude/hooks/voice-manager.sh get
268
+
269
+ # Check current personality
270
+ cat .claude/tts-personality.txt
271
+
272
+ # Switch voice
273
+ .claude/hooks/voice-manager.sh switch "Aria"
274
+
275
+ # Set personality
276
+ .claude/hooks/personality-manager.sh set flirty
277
+ ```
278
+
279
+ ## Advanced Configuration
280
+
281
+ ### Using Project-Specific Settings
282
+
283
+ AgentVibes supports project-local configuration. Each project can have its own voice, personality, and language:
284
+
285
+ ```bash
286
+ # In your project directory
287
+ mkdir -p .claude
288
+ echo "Northern Terry" > .claude/tts-voice.txt
289
+ echo "pirate" > .claude/tts-personality.txt
290
+ echo "spanish" > .claude/tts-language.txt
291
+ ```
292
+
293
+ ### Using Piper (Free, Offline) Instead of Piper TTS
294
+
295
+ ```bash
296
+ # Switch to Piper provider
297
+ .claude/hooks/provider-manager.sh switch piper
298
+
299
+ # Install a voice model
300
+ pipx install piper-tts
301
+
302
+ # Voice will download automatically on first use
303
+ ```
304
+
305
+ ### Custom Personalities
306
+
307
+ Create your own personality:
308
+
309
+ ```bash
310
+ .claude/hooks/personality-manager.sh add mycustom
311
+ # Edit: .claude/personalities/mycustom.md
312
+
313
+ # Use it
314
+ .claude/hooks/personality-manager.sh set mycustom
315
+ ```
316
+
317
+ ## Integration with Other MCP Clients
318
+
319
+ This server works with any MCP-compatible client, not just Claude Desktop:
320
+
321
+ - ✅ Claude Desktop (macOS, Windows, Linux)
322
+ - ✅ Claude Code CLI (already built-in)
323
+ - ✅ Custom MCP clients
324
+ - ✅ Future MCP-compatible tools
325
+
326
+ ## Contributing
327
+
328
+ Found a bug or have a feature request? Open an issue on GitHub!
329
+
330
+ ## License
331
+
332
+ MIT License - see the main AgentVibes repository for details.
333
+
334
+ ## Links
335
+
336
+ - **AgentVibes GitHub:** https://github.com/paulpreibisch/AgentVibes
337
+ - **MCP Protocol:** https://modelcontextprotocol.io
338
+ - **Piper TTS:** https://piper.io
339
+ - **Piper TTS:** https://github.com/rhasspy/piper
340
+
341
+ ---
342
+
343
+ **Made with ❤️ by the AgentVibes community**
344
+
345
+ 🎤 *Now Claude Desktop can finally speak!*