@kajidog/mcp-tts-voicevox 0.4.0 → 0.6.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.
package/README.md CHANGED
@@ -9,15 +9,35 @@ A text-to-speech MCP server using VOICEVOX
9
9
  ## What You Can Do
10
10
 
11
11
  - **Make your AI assistant speak** — Text-to-speech from MCP clients like Claude Desktop
12
+ - **UI Audio Player (MCP Apps)** — Play audio directly in the chat with an interactive player
12
13
  - **Multi-character conversations** — Switch speakers per segment in a single call
13
14
  - **Smooth playback** — Queue management, immediate playback, prefetching, streaming
14
15
  - **Cross-platform** — Works on Windows, macOS, Linux (including WSL)
15
16
 
17
+ ## UI Audio Player (MCP Apps)
18
+
19
+ ![Single track player](docs/images/single-player.png)
20
+
21
+ The `speak_player` tool uses [MCP Apps](https://github.com/modelcontextprotocol/ext-apps) to render an interactive audio player directly inside the chat. Unlike the standard `speak` tool which plays audio on the server, **audio is played on the client side (in the browser/app)** — no audio device needed on the server.
22
+
23
+ ### Features
24
+
25
+ - **Client-side playback** — Audio plays in Claude Desktop's chat, not on the server. Works even over remote connections.
26
+ - **Play/Pause controls** — Full playback controls embedded in the conversation
27
+ - **Multi-speaker dialogue** — Sequential playback of multiple speakers in one player with track navigation
28
+ - **Speaker switching** — Change the voice of any segment directly from the player UI
29
+
30
+ | Multi-speaker playback | Track list | Speaker selection |
31
+ |:---:|:---:|:---:|
32
+ | ![Multi-speaker player](docs/images/multi-player.png) | ![Track list](docs/images/list-player.png) | ![Speaker selection](docs/images/select-player.png) |
33
+
34
+ > **Note:** `speak_player` requires a host that supports MCP Apps (e.g., Claude Desktop). In hosts without MCP Apps support, the tool is not available and `speak` (server-side playback) can be used instead.
35
+
16
36
  ## Quick Start
17
37
 
18
38
  ### Requirements
19
39
 
20
- - Node.js 18.0.0 or higher
40
+ - Node.js 18.0.0 or higher (or [Bun](https://bun.sh/))
21
41
  - [VOICEVOX Engine](https://voicevox.hiroshiba.jp/) (must be running)
22
42
  - ffplay (optional, recommended)
23
43
 
@@ -88,6 +108,11 @@ Config file location:
88
108
  }
89
109
  ```
90
110
 
111
+ > 💡 Bun を使う場合は `npx` を `bunx` に置き換えるだけでOK:
112
+ > ```json
113
+ > "command": "bunx", "args": ["@kajidog/mcp-tts-voicevox"]
114
+ > ```
115
+
91
116
  **3. Restart Claude Desktop**
92
117
 
93
118
  That's it! Ask Claude to "say hello" and it will speak!
@@ -129,11 +154,11 @@ The main feature callable from Claude.
129
154
 
130
155
  | Tool | Description |
131
156
  |------|-------------|
157
+ | `speak_player` | Speak with UI audio player (disable with `--disable-tools`) |
132
158
  | `ping_voicevox` | Check VOICEVOX Engine connection |
133
159
  | `get_speakers` | Get list of available speakers |
134
160
  | `get_speaker_detail` | Get speaker details |
135
161
  | `stop_speaker` | Stop playback and clear queue |
136
- | `generate_query` | Generate speech synthesis query |
137
162
  | `synthesize_file` | Generate audio file |
138
163
 
139
164
  </details>
@@ -176,9 +201,15 @@ Restrict AI from specifying certain options.
176
201
 
177
202
  ```bash
178
203
  # Disable unnecessary tools
179
- export VOICEVOX_DISABLED_TOOLS=generate_query,synthesize_file
204
+ export VOICEVOX_DISABLED_TOOLS=get_speaker_detail,synthesize_file
180
205
  ```
181
206
 
207
+ ### UI Player Settings
208
+
209
+ | Variable | Description | Default |
210
+ |----------|-------------|---------|
211
+ | `VOICEVOX_AUTO_PLAY` | Auto-play audio in UI player | `true` |
212
+
182
213
  ### Server Settings
183
214
 
184
215
  | Variable | Description | Default |
@@ -207,7 +238,7 @@ npx @kajidog/mcp-tts-voicevox --http --port 8080
207
238
  npx @kajidog/mcp-tts-voicevox --restrict-immediate --restrict-wait-for-end
208
239
 
209
240
  # Disable tools
210
- npx @kajidog/mcp-tts-voicevox --disable-tools generate_query,synthesize_file
241
+ npx @kajidog/mcp-tts-voicevox --disable-tools get_speaker_detail,synthesize_file
211
242
  ```
212
243
 
213
244
  | Argument | Description |
@@ -225,6 +256,7 @@ npx @kajidog/mcp-tts-voicevox --disable-tools generate_query,synthesize_file
225
256
  | `--restrict-wait-for-start` | Restrict waitForStart |
226
257
  | `--restrict-wait-for-end` | Restrict waitForEnd |
227
258
  | `--disable-tools <tools>` | Disable tools |
259
+ | `--auto-play` / `--no-auto-play` | Auto-play in UI player |
228
260
  | `--http` | HTTP mode |
229
261
  | `--port <value>` | HTTP port |
230
262
  | `--host <value>` | HTTP host |
@@ -383,6 +415,7 @@ curl http://localhost:50021/speakers
383
415
  |---------|-------------|
384
416
  | `@kajidog/mcp-tts-voicevox` | MCP server |
385
417
  | [`@kajidog/voicevox-client`](https://www.npmjs.com/package/@kajidog/voicevox-client) | General-purpose VOICEVOX client library (can be used independently) |
418
+ | `@kajidog/player-ui` | React-based audio player UI for browser playback |
386
419
 
387
420
  ---
388
421
 
@@ -406,6 +439,8 @@ pnpm install
406
439
  | `pnpm lint` | Run lint |
407
440
  | `pnpm dev` | Start dev server |
408
441
  | `pnpm dev:stdio` | Dev with stdio mode |
442
+ | `pnpm dev:bun` | Start dev server with Bun |
443
+ | `pnpm dev:bun:http` | Start HTTP dev server with Bun |
409
444
 
410
445
  </details>
411
446
 
package/dist/index.d.ts CHANGED
@@ -1,3 +1 @@
1
1
  #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=index.d.ts.map