@kajidog/mcp-tts-voicevox 0.3.1 → 0.5.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.ja.md CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  VOICEVOX を使用した MCP テキスト読み上げサーバー
6
6
 
7
+ > 🎮 **[ブラウザデモを試す](https://kajidog.github.io/mcp-tts-voicevox/)** — VoicevoxClient をブラウザで直接テスト
8
+
7
9
  ## 何ができるか
8
10
 
9
11
  - **AI アシスタントに喋らせる** — Claude Desktop などの MCP クライアントからテキストを読み上げ
@@ -15,7 +17,7 @@ VOICEVOX を使用した MCP テキスト読み上げサーバー
15
17
 
16
18
  ### 必要なもの
17
19
 
18
- - Node.js 18.0.0 以上
20
+ - Node.js 18.0.0 以上(または Bun)
19
21
  - [VOICEVOX Engine](https://voicevox.hiroshiba.jp/)(起動しておく)
20
22
  - ffplay(任意・推奨)
21
23
 
@@ -86,6 +88,11 @@ ffplay -version
86
88
  }
87
89
  ```
88
90
 
91
+ > 💡 Bun を使う場合は `npx` を `bunx` に置き換えるだけでOK:
92
+ > ```json
93
+ > "command": "bunx", "args": ["@kajidog/mcp-tts-voicevox"]
94
+ > ```
95
+
89
96
  **3. Claude Desktop を再起動**
90
97
 
91
98
  これだけで Claude に「〇〇と喋って」と頼めば喋ってくれます!
@@ -259,6 +266,37 @@ $env:MCP_HTTP_MODE='true'; $env:MCP_HTTP_PORT='3000'; npx @kajidog/mcp-tts-voice
259
266
  }
260
267
  ```
261
268
 
269
+ ### プロジェクトごとの話者設定
270
+
271
+ Claude Code では `.mcp.json` にカスタムヘッダーを設定することで、プロジェクトごとに異なるデフォルト話者を設定できます:
272
+
273
+ | ヘッダー | 説明 |
274
+ |---------|------|
275
+ | `X-Voicevox-Speaker` | このプロジェクトのデフォルト話者 ID |
276
+
277
+ **`.mcp.json` の例:**
278
+
279
+ ```json
280
+ {
281
+ "mcpServers": {
282
+ "tts": {
283
+ "type": "http",
284
+ "url": "http://localhost:3000/mcp",
285
+ "headers": {
286
+ "X-Voicevox-Speaker": "113"
287
+ }
288
+ }
289
+ }
290
+ }
291
+ ```
292
+
293
+ これにより、プロジェクトごとに自動的に異なる音声キャラクターを使い分けることができます。
294
+
295
+ **優先順位:**
296
+ 1. ツール呼び出し時の `speaker` パラメータ(最高)
297
+ 2. `X-Voicevox-Speaker` ヘッダーによるプロジェクトデフォルト
298
+ 3. グローバルな `VOICEVOX_DEFAULT_SPEAKER` 設定(最低)
299
+
262
300
  </details>
263
301
 
264
302
  <details>
@@ -373,6 +411,8 @@ pnpm install
373
411
  | `pnpm lint` | Lint 実行 |
374
412
  | `pnpm dev` | 開発サーバー起動 |
375
413
  | `pnpm dev:stdio` | Stdio モードで開発 |
414
+ | `pnpm dev:bun` | Bun で開発サーバー起動 |
415
+ | `pnpm dev:bun:http` | Bun で HTTP 開発サーバー起動 |
376
416
 
377
417
  </details>
378
418
 
package/README.md CHANGED
@@ -4,6 +4,8 @@
4
4
 
5
5
  A text-to-speech MCP server using VOICEVOX
6
6
 
7
+ > 🎮 **[Try the Browser Demo](https://kajidog.github.io/mcp-tts-voicevox/)** — Test VoicevoxClient directly in your browser
8
+
7
9
  ## What You Can Do
8
10
 
9
11
  - **Make your AI assistant speak** — Text-to-speech from MCP clients like Claude Desktop
@@ -15,7 +17,7 @@ A text-to-speech MCP server using VOICEVOX
15
17
 
16
18
  ### Requirements
17
19
 
18
- - Node.js 18.0.0 or higher
20
+ - Node.js 18.0.0 or higher (or [Bun](https://bun.sh/))
19
21
  - [VOICEVOX Engine](https://voicevox.hiroshiba.jp/) (must be running)
20
22
  - ffplay (optional, recommended)
21
23
 
@@ -86,6 +88,11 @@ Config file location:
86
88
  }
87
89
  ```
88
90
 
91
+ > 💡 Bun を使う場合は `npx` を `bunx` に置き換えるだけでOK:
92
+ > ```json
93
+ > "command": "bunx", "args": ["@kajidog/mcp-tts-voicevox"]
94
+ > ```
95
+
89
96
  **3. Restart Claude Desktop**
90
97
 
91
98
  That's it! Ask Claude to "say hello" and it will speak!
@@ -259,6 +266,37 @@ $env:MCP_HTTP_MODE='true'; $env:MCP_HTTP_PORT='3000'; npx @kajidog/mcp-tts-voice
259
266
  }
260
267
  ```
261
268
 
269
+ ### Per-Project Speaker Settings
270
+
271
+ With Claude Code, you can configure different default speakers per project using custom headers in `.mcp.json`:
272
+
273
+ | Header | Description |
274
+ |--------|-------------|
275
+ | `X-Voicevox-Speaker` | Default speaker ID for this project |
276
+
277
+ **Example `.mcp.json`:**
278
+
279
+ ```json
280
+ {
281
+ "mcpServers": {
282
+ "tts": {
283
+ "type": "http",
284
+ "url": "http://localhost:3000/mcp",
285
+ "headers": {
286
+ "X-Voicevox-Speaker": "113"
287
+ }
288
+ }
289
+ }
290
+ }
291
+ ```
292
+
293
+ This allows each project to use a different voice character automatically.
294
+
295
+ **Priority order:**
296
+ 1. Explicit `speaker` parameter in tool call (highest)
297
+ 2. Project default from `X-Voicevox-Speaker` header
298
+ 3. Global `VOICEVOX_DEFAULT_SPEAKER` setting (lowest)
299
+
262
300
  </details>
263
301
 
264
302
  <details>
@@ -373,6 +411,8 @@ pnpm install
373
411
  | `pnpm lint` | Run lint |
374
412
  | `pnpm dev` | Start dev server |
375
413
  | `pnpm dev:stdio` | Dev with stdio mode |
414
+ | `pnpm dev:bun` | Start dev server with Bun |
415
+ | `pnpm dev:bun:http` | Start HTTP dev server with Bun |
376
416
 
377
417
  </details>
378
418
 
package/dist/config.js CHANGED
@@ -1,10 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseCliArgs = parseCliArgs;
4
- exports.parseEnvVars = parseEnvVars;
5
- exports.getConfig = getConfig;
6
- exports.getCachedConfig = getCachedConfig;
7
- exports.resetConfigCache = resetConfigCache;
8
1
  // デフォルト設定
9
2
  const defaultConfig = {
10
3
  voicevoxUrl: 'http://localhost:50021',
@@ -27,7 +20,7 @@ const defaultConfig = {
27
20
  /**
28
21
  * CLI引数をパースする
29
22
  */
30
- function parseCliArgs(argv = process.argv.slice(2)) {
23
+ export function parseCliArgs(argv = process.argv.slice(2)) {
31
24
  const config = {};
32
25
  for (let i = 0; i < argv.length; i++) {
33
26
  const arg = argv[i];
@@ -124,7 +117,7 @@ function parseCliArgs(argv = process.argv.slice(2)) {
124
117
  /**
125
118
  * 環境変数から設定を読み込む
126
119
  */
127
- function parseEnvVars(env = process.env) {
120
+ export function parseEnvVars(env = process.env) {
128
121
  const config = {};
129
122
  if (env.VOICEVOX_URL) {
130
123
  config.voicevoxUrl = env.VOICEVOX_URL;
@@ -186,7 +179,7 @@ function filterUndefined(obj) {
186
179
  /**
187
180
  * 設定を取得する(優先順位: CLI引数 > 環境変数 > デフォルト値)
188
181
  */
189
- function getConfig(argv, env) {
182
+ export function getConfig(argv, env) {
190
183
  const cliConfig = parseCliArgs(argv);
191
184
  const envConfig = parseEnvVars(env);
192
185
  return {
@@ -200,7 +193,7 @@ let cachedConfig = null;
200
193
  /**
201
194
  * キャッシュされた設定を取得する
202
195
  */
203
- function getCachedConfig() {
196
+ export function getCachedConfig() {
204
197
  if (!cachedConfig) {
205
198
  cachedConfig = getConfig();
206
199
  }
@@ -209,7 +202,7 @@ function getCachedConfig() {
209
202
  /**
210
203
  * キャッシュをリセットする(テスト用)
211
204
  */
212
- function resetConfigCache() {
205
+ export function resetConfigCache() {
213
206
  cachedConfig = null;
214
207
  }
215
208
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,IAAI,EAAa,MAAM,MAAM,CAAA;AA2MpD,gDAAkB;AAClB,QAAA,MAAM,GAAG,EAAE,IAAiB,CAAA;AAqB5B,eAAe,GAAG,CAAA"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,IAAI,EAAa,MAAM,MAAM,CAAA;AA4NpD,gDAAkB;AAClB,QAAA,MAAM,GAAG,EAAE,IAAiB,CAAA;AAqB5B,eAAe,GAAG,CAAA"}
package/dist/http.js CHANGED
@@ -1,14 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const node_crypto_1 = require("node:crypto");
4
- const webStandardStreamableHttp_js_1 = require("@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js");
5
- const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
6
- const hono_1 = require("hono");
7
- const cors_1 = require("hono/cors");
8
- const config_1 = require("./config");
9
- const server_1 = require("./server");
1
+ import { randomUUID } from 'node:crypto';
2
+ import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
3
+ import { isInitializeRequest } from '@modelcontextprotocol/sdk/types.js';
4
+ import { Hono } from 'hono';
5
+ import { cors } from 'hono/cors';
6
+ import { getConfig } from './config.js';
7
+ import { server } from './server.js';
8
+ import { deleteSessionConfig, setSessionConfig } from './session.js';
10
9
  // 設定を取得
11
- const config = (0, config_1.getConfig)();
10
+ const config = getConfig();
12
11
  /**
13
12
  * JSONRPCエラーレスポンスを生成するヘルパー関数
14
13
  */
@@ -122,13 +121,27 @@ async function handleMCP(c) {
122
121
  return c.json(badRequestError('Invalid JSON'), { status: 400 });
123
122
  }
124
123
  // initializeリクエストの場合のみ新しいtransportを作成
125
- if ((0, types_js_1.isInitializeRequest)(body)) {
124
+ if (isInitializeRequest(body)) {
126
125
  console.log('Creating new WebStandard session');
127
- const transport = new webStandardStreamableHttp_js_1.WebStandardStreamableHTTPServerTransport({
128
- sessionIdGenerator: () => (0, node_crypto_1.randomUUID)(),
126
+ // X-Voicevox-Speaker ヘッダーを読み取り
127
+ const speakerHeader = c.req.header('X-Voicevox-Speaker');
128
+ let sessionSpeaker;
129
+ if (speakerHeader) {
130
+ const parsed = Number.parseInt(speakerHeader, 10);
131
+ if (!Number.isNaN(parsed) && parsed >= 0) {
132
+ sessionSpeaker = parsed;
133
+ }
134
+ }
135
+ const transport = new WebStandardStreamableHTTPServerTransport({
136
+ sessionIdGenerator: () => randomUUID(),
129
137
  onsessioninitialized: (newSessionId) => {
130
138
  console.log(`Session initialized: ${newSessionId}`);
131
139
  transports.set(newSessionId, transport);
140
+ // セッションのデフォルト話者を設定
141
+ if (sessionSpeaker !== undefined) {
142
+ setSessionConfig(newSessionId, { defaultSpeaker: sessionSpeaker });
143
+ console.log(`Session ${newSessionId} default speaker: ${sessionSpeaker}`);
144
+ }
132
145
  },
133
146
  });
134
147
  // クリーンアップハンドラー
@@ -137,10 +150,11 @@ async function handleMCP(c) {
137
150
  if (sid) {
138
151
  console.log(`Transport closed for session: ${sid}`);
139
152
  transports.delete(sid);
153
+ deleteSessionConfig(sid);
140
154
  }
141
155
  };
142
156
  // サーバーに接続
143
- await server_1.server.connect(transport);
157
+ await server.connect(transport);
144
158
  // リクエスト処理(parsedBodyを渡す)
145
159
  return transport.handleRequest(c.req.raw, { parsedBody: body });
146
160
  }
@@ -166,12 +180,12 @@ function handleHealth(c) {
166
180
  return c.json(response);
167
181
  }
168
182
  // アプリケーションのセットアップ
169
- const app = new hono_1.Hono();
183
+ const app = new Hono();
170
184
  // CORSを設定(公式サンプルに準拠)
171
- app.use('/mcp', (0, cors_1.cors)({
185
+ app.use('/mcp', cors({
172
186
  origin: '*',
173
187
  allowMethods: ['GET', 'POST', 'DELETE', 'OPTIONS'],
174
- allowHeaders: ['Content-Type', 'mcp-session-id', 'Last-Event-ID', 'mcp-protocol-version'],
188
+ allowHeaders: ['Content-Type', 'mcp-session-id', 'Last-Event-ID', 'mcp-protocol-version', 'X-Voicevox-Speaker'],
175
189
  exposeHeaders: ['mcp-session-id', 'mcp-protocol-version'],
176
190
  }));
177
191
  // セキュリティミドルウェアを適用(MCP仕様2025-11-25準拠)
@@ -180,5 +194,5 @@ app.use('/mcp', validateHost());
180
194
  // ルート定義
181
195
  app.all('/mcp', handleMCP);
182
196
  app.get('/health', handleHealth);
183
- exports.default = app;
197
+ export default app;
184
198
  //# sourceMappingURL=http.js.map
package/dist/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,41 +1,10 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
8
- }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
- });
19
- var __importStar = (this && this.__importStar) || (function () {
20
- var ownKeys = function(o) {
21
- ownKeys = Object.getOwnPropertyNames || function (o) {
22
- var ar = [];
23
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
- return ar;
25
- };
26
- return ownKeys(o);
27
- };
28
- return function (mod) {
29
- if (mod && mod.__esModule) return mod;
30
- var result = {};
31
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
- __setModuleDefault(result, mod);
33
- return result;
34
- };
35
- })();
36
- Object.defineProperty(exports, "__esModule", { value: true });
37
2
  // MCP TTS Voicevox エントリーポイント
38
- const config_1 = require("./config");
3
+ import { readFileSync } from 'node:fs';
4
+ import { dirname, join } from 'node:path';
5
+ import { fileURLToPath } from 'node:url';
6
+ import { getConfig } from './config.js';
7
+ const __dirname = dirname(fileURLToPath(import.meta.url));
39
8
  /**
40
9
  * 実行環境を判定するユーティリティ
41
10
  */
@@ -43,6 +12,10 @@ const config_1 = require("./config");
43
12
  function isNodejs() {
44
13
  return typeof process !== 'undefined' && !!process.versions?.node;
45
14
  }
15
+ /** Bunランタイムかどうかを判定 */
16
+ function isBun() {
17
+ return 'Bun' in globalThis;
18
+ }
46
19
  /** CLI実行かどうかを判定 */
47
20
  function isCLI() {
48
21
  if (!isNodejs() || !process.argv)
@@ -55,10 +28,12 @@ function isCLI() {
55
28
  argv1.includes('index.js') ||
56
29
  argv1.includes('npx');
57
30
  // 設定からHTTPモードを取得(CLI引数または環境変数)
58
- const config = (0, config_1.getConfig)();
31
+ const config = getConfig();
59
32
  const isForceMode = config.httpMode;
60
- // npxやCLIからの直接実行を検出
61
- const isMainModule = require.main === module || process.argv0.includes('node');
33
+ // ESM環境でのメインモジュール判定
34
+ const isMainModule = process.argv[1] === fileURLToPath(import.meta.url) ||
35
+ process.argv0?.includes('node') ||
36
+ process.argv0?.includes('bun');
62
37
  return isNpmStart || isDirectExecution || isForceMode || isMainModule;
63
38
  }
64
39
  /** NPX経由実行かどうかを判定 */
@@ -71,7 +46,7 @@ function isNpx() {
71
46
  * サーバー設定を取得する関数(設定モジュールを使用)
72
47
  */
73
48
  function getServerConfig() {
74
- const config = (0, config_1.getConfig)();
49
+ const config = getConfig();
75
50
  return {
76
51
  port: config.httpPort,
77
52
  host: config.httpHost,
@@ -79,51 +54,45 @@ function getServerConfig() {
79
54
  isHttpMode: config.httpMode,
80
55
  };
81
56
  }
82
- /**
83
- * HTTP サーバーのアプリケーションをロードする
84
- */
85
- async function loadHttpApp(isDevelopment) {
86
- if (isDevelopment) {
87
- const module = await Promise.resolve().then(() => __importStar(require('./http')));
88
- return module.default;
89
- }
90
- return require('./http').default;
91
- }
92
- /**
93
- * HTTP サーバーモジュールをロードする
94
- */
95
- async function loadHttpServer(isDevelopment) {
96
- if (isDevelopment) {
97
- return await Promise.resolve().then(() => __importStar(require('@hono/node-server')));
98
- }
99
- return require('@hono/node-server');
100
- }
101
57
  /**
102
58
  * HTTP サーバーを起動する
103
59
  */
104
60
  async function startHttpServer(config) {
105
61
  try {
106
62
  console.error('Starting HTTP server with config:', config);
107
- const app = await loadHttpApp(config.isDevelopment);
63
+ const { default: app } = await import('./http.js');
108
64
  console.error('App loaded successfully');
109
- const server = await loadHttpServer(config.isDevelopment);
110
- console.error('Server module loaded successfully');
111
- const serverOptions = {
112
- fetch: app.fetch,
113
- port: config.port,
114
- hostname: config.host,
115
- };
116
- console.error('Attempting to start server with options:', serverOptions);
117
- server.serve(serverOptions, (info) => {
118
- console.error(`✅ VOICEVOX MCP HTTP server running at http://${info.address}:${info.port}/mcp`);
119
- console.error(`🔍 Health check: http://${info.address}:${info.port}/health`);
120
- });
65
+ if (isBun()) {
66
+ // Bun native server (HonoはWeb Standard互換なのでそのまま使える)
67
+ const server = globalThis.Bun.serve({
68
+ fetch: app.fetch,
69
+ port: config.port,
70
+ hostname: config.host,
71
+ });
72
+ console.error(`VOICEVOX MCP HTTP server running at http://${server.hostname}:${server.port}/mcp`);
73
+ console.error(`Health check: http://${server.hostname}:${server.port}/health`);
74
+ }
75
+ else {
76
+ // Node.js: @hono/node-server
77
+ const { serve } = await import('@hono/node-server');
78
+ console.error('Server module loaded successfully');
79
+ const serverOptions = {
80
+ fetch: app.fetch,
81
+ port: config.port,
82
+ hostname: config.host,
83
+ };
84
+ console.error('Attempting to start server with options:', serverOptions);
85
+ serve(serverOptions, (info) => {
86
+ console.error(`VOICEVOX MCP HTTP server running at http://${info.address}:${info.port}/mcp`);
87
+ console.error(`Health check: http://${info.address}:${info.port}/health`);
88
+ });
89
+ }
121
90
  // サーバー起動の確認を少し待つ
122
91
  await new Promise((resolve) => setTimeout(resolve, 1000));
123
92
  console.error('HTTP server startup completed');
124
93
  }
125
94
  catch (error) {
126
- console.error('HTTP server startup failed:', error);
95
+ console.error('HTTP server startup failed:', error);
127
96
  if (error instanceof Error) {
128
97
  console.error('Error details:', {
129
98
  message: error.message,
@@ -137,21 +106,16 @@ async function startHttpServer(config) {
137
106
  /**
138
107
  * Stdio サーバーを起動する
139
108
  */
140
- async function startStdioServer(config) {
109
+ async function startStdioServer(_config) {
141
110
  try {
142
- if (config.isDevelopment) {
143
- await Promise.resolve().then(() => __importStar(require('./stdio')));
144
- }
145
- else {
146
- require('./stdio');
147
- }
111
+ await import('./stdio.js');
148
112
  // Stdio サーバーは常に実行中なので、プロセス終了までブロック
149
113
  process.on('SIGINT', () => {
150
114
  process.exit(0);
151
115
  });
152
116
  }
153
117
  catch (error) {
154
- console.error('Stdio server startup failed:', error);
118
+ console.error('Stdio server startup failed:', error);
155
119
  if (error instanceof Error) {
156
120
  console.error('Error details:', {
157
121
  message: error.message,
@@ -217,7 +181,7 @@ Examples:
217
181
  async function startMCPServer() {
218
182
  // 環境チェック
219
183
  if (!isNodejs()) {
220
- throw new Error('Node.js environment required');
184
+ throw new Error('Node.js environment required');
221
185
  }
222
186
  // ヘルプオプションの確認
223
187
  if (process.argv.includes('--help') || process.argv.includes('-h')) {
@@ -226,8 +190,8 @@ async function startMCPServer() {
226
190
  }
227
191
  // バージョンオプションの確認
228
192
  if (process.argv.includes('--version') || process.argv.includes('-v')) {
229
- const packageJson = require('../package.json');
230
- console.log(`@kajidog/mcp-tts-voicevox v${packageJson.version}`);
193
+ const pkg = JSON.parse(readFileSync(join(__dirname, '../package.json'), 'utf-8'));
194
+ console.log(`@kajidog/mcp-tts-voicevox v${pkg.version}`);
231
195
  process.exit(0);
232
196
  }
233
197
  // CLI実行またはNPX実行の場合のみサーバーを起動
@@ -235,7 +199,7 @@ async function startMCPServer() {
235
199
  const config = getServerConfig();
236
200
  // HTTPモードの場合のみログを出力
237
201
  if (config.isHttpMode) {
238
- console.error('🔍 Environment detection:', {
202
+ console.error('Environment detection:', {
239
203
  isCLI: isCLI(),
240
204
  isNpx: isNpx(),
241
205
  shouldStart,
@@ -243,11 +207,11 @@ async function startMCPServer() {
243
207
  argv0: process.argv0,
244
208
  execPath: process.execPath,
245
209
  });
246
- console.error('⚙️ Server configuration:', config);
210
+ console.error('Server configuration:', config);
247
211
  }
248
212
  if (!shouldStart) {
249
213
  if (config.isHttpMode) {
250
- console.error('📚 Running as library, server startup skipped');
214
+ console.error('Running as library, server startup skipped');
251
215
  }
252
216
  return; // ライブラリとして使用されている
253
217
  }
@@ -260,7 +224,7 @@ async function startMCPServer() {
260
224
  }
261
225
  }
262
226
  catch (error) {
263
- console.error('Server startup failed:', error);
227
+ console.error('Server startup failed:', error);
264
228
  process.exit(1);
265
229
  }
266
230
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  // 設定を取得
3
- declare const config: import("./config").ServerConfig;
3
+ declare const config: import("./config.js").ServerConfig;
4
4
  // サーバー初期化
5
5
  export declare const server: McpServer;
6
6
  // 設定エクスポート(テスト用)
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAKnE,kBAAQ;AACR,QAAA,MAAM,MAAM,iCAAc,CAAA;AAE1B,wBAAU;AACV,eAAO,MAAM,MAAM,WAIjB,CAAA;AA8WF,6CAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAWnE,kBAAQ;AACR,QAAA,MAAM,MAAM,oCAAc,CAAA;AAE1B,wBAAU;AACV,eAAO,MAAM,MAAM,WAIjB,CAAA;AAwYF,6CAAiB;AACjB,OAAO,EAAE,MAAM,EAAE,CAAA"}
package/dist/server.js CHANGED
@@ -1,54 +1,18 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.config = exports.server = void 0;
37
- const voicevox_client_1 = require("@kajidog/voicevox-client");
38
- const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
39
- const z = __importStar(require("zod/v4"));
40
- const config_1 = require("./config");
1
+ import { VoicevoxClient } from '@kajidog/voicevox-client';
2
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
3
+ import * as z from 'zod/v4';
4
+ import { getConfig } from './config.js';
5
+ import { getSessionConfig } from './session.js';
41
6
  // 設定を取得
42
- const config = (0, config_1.getConfig)();
43
- exports.config = config;
7
+ const config = getConfig();
44
8
  // サーバー初期化
45
- exports.server = new mcp_js_1.McpServer({
9
+ export const server = new McpServer({
46
10
  name: 'MCP TTS Voicevox',
47
11
  version: '0.3.1',
48
12
  description: 'A Voicevox server that converts text to speech for playback and saving.',
49
13
  });
50
14
  // Voicevoxクライアント初期化
51
- const voicevoxClient = new voicevox_client_1.VoicevoxClient({
15
+ const voicevoxClient = new VoicevoxClient({
52
16
  url: config.voicevoxUrl,
53
17
  defaultSpeaker: config.defaultSpeaker,
54
18
  defaultSpeedScale: config.defaultSpeedScale,
@@ -101,6 +65,15 @@ const parseStringInput = (input) => {
101
65
  return { text: line };
102
66
  });
103
67
  };
68
+ /**
69
+ * 有効な話者IDを取得(優先順位: 明示的パラメータ > セッション設定 > グローバル設定)
70
+ */
71
+ const getEffectiveSpeaker = (explicitSpeaker, sessionId) => {
72
+ if (explicitSpeaker !== undefined)
73
+ return explicitSpeaker;
74
+ const sessionConfig = getSessionConfig(sessionId);
75
+ return sessionConfig?.defaultSpeaker;
76
+ };
104
77
  const processTextInput = async (text, speaker, speedScale, playbackOptions) => {
105
78
  const segments = parseStringInput(text);
106
79
  return await voicevoxClient.speak(segments, {
@@ -117,7 +90,7 @@ function registerToolIfEnabled(name, definition, handler) {
117
90
  console.error(`Tool "${name}" is disabled via configuration`);
118
91
  return;
119
92
  }
120
- exports.server.registerTool(name, definition, handler);
93
+ server.registerTool(name, definition, handler);
121
94
  }
122
95
  /**
123
96
  * speak ツールの動的スキーマを構築
@@ -168,8 +141,10 @@ registerToolIfEnabled('speak', {
168
141
  title: 'Speak',
169
142
  description: 'Convert text to speech and play it. Text is split by line breaks (\\n) into separate speech units. Each line is processed as an independent audio segment.',
170
143
  inputSchema: buildSpeakInputSchema(),
171
- }, async ({ text, speaker, query, speedScale, immediate, waitForStart, waitForEnd, }) => {
144
+ }, async ({ text, speaker, query, speedScale, immediate, waitForStart, waitForEnd, }, extra) => {
172
145
  try {
146
+ // 有効な話者IDを取得(優先順位: 明示的パラメータ > セッション設定 > グローバル設定)
147
+ const effectiveSpeaker = getEffectiveSpeaker(speaker, extra.sessionId);
173
148
  // 設定からデフォルトの再生オプションを取得
174
149
  const playbackOptions = {
175
150
  immediate: immediate ?? config.defaultImmediate,
@@ -180,13 +155,13 @@ registerToolIfEnabled('speak', {
180
155
  if (query) {
181
156
  const audioQuery = parseAudioQuery(query, speedScale);
182
157
  result = await voicevoxClient.enqueueAudioGeneration(audioQuery, {
183
- speaker,
158
+ speaker: effectiveSpeaker,
184
159
  speedScale,
185
160
  ...playbackOptions,
186
161
  });
187
162
  }
188
163
  else {
189
- result = await processTextInput(text, speaker, speedScale, playbackOptions);
164
+ result = await processTextInput(text, effectiveSpeaker, speedScale, playbackOptions);
190
165
  }
191
166
  return createSuccessResponse(formatSpeakResponse(result));
192
167
  }
@@ -202,9 +177,11 @@ registerToolIfEnabled('generate_query', {
202
177
  speaker: z.number().optional().describe('Default speaker ID (optional)'),
203
178
  speedScale: z.number().optional().describe('Playback speed (optional, default from environment)'),
204
179
  },
205
- }, async ({ text, speaker, speedScale, }) => {
180
+ }, async ({ text, speaker, speedScale, }, extra) => {
206
181
  try {
207
- const query = await voicevoxClient.generateQuery(text, speaker, speedScale);
182
+ // 有効な話者IDを取得(優先順位: 明示的パラメータ > セッション設定 > グローバル設定)
183
+ const effectiveSpeaker = getEffectiveSpeaker(speaker, extra.sessionId);
184
+ const query = await voicevoxClient.generateQuery(text, effectiveSpeaker, speedScale);
208
185
  return createSuccessResponse(JSON.stringify(query));
209
186
  }
210
187
  catch (error) {
@@ -224,15 +201,17 @@ registerToolIfEnabled('synthesize_file', {
224
201
  speaker: z.number().optional().describe('Default speaker ID (optional)'),
225
202
  speedScale: z.number().optional().describe('Playback speed (optional, default from environment)'),
226
203
  },
227
- }, async ({ text, query, speaker, output, speedScale, }) => {
204
+ }, async ({ text, query, speaker, output, speedScale, }, extra) => {
228
205
  try {
206
+ // 有効な話者IDを取得(優先順位: 明示的パラメータ > セッション設定 > グローバル設定)
207
+ const effectiveSpeaker = getEffectiveSpeaker(speaker, extra.sessionId);
229
208
  if (query) {
230
209
  const audioQuery = parseAudioQuery(query, speedScale);
231
- const filePath = await voicevoxClient.generateAudioFile(audioQuery, output, speaker);
210
+ const filePath = await voicevoxClient.generateAudioFile(audioQuery, output, effectiveSpeaker);
232
211
  return createSuccessResponse(filePath);
233
212
  }
234
213
  if (text) {
235
- const filePath = await voicevoxClient.generateAudioFile(text, output, speaker, speedScale);
214
+ const filePath = await voicevoxClient.generateAudioFile(text, output, effectiveSpeaker, speedScale);
236
215
  return createSuccessResponse(filePath);
237
216
  }
238
217
  throw new Error('queryパラメータとtextパラメータのどちらかを指定してください');
@@ -304,4 +283,6 @@ registerToolIfEnabled('get_speaker_detail', {
304
283
  return createErrorResponse(error);
305
284
  }
306
285
  });
286
+ // 設定エクスポート(テスト用)
287
+ export { config };
307
288
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * セッションごとの設定を管理するモジュール
3
+ * 循環参照を避けるため、独立したモジュールとして実装
4
+ */
5
+ export interface SessionConfig {
6
+ defaultSpeaker?: number;
7
+ }
8
+ /**
9
+ * セッション設定を保存
10
+ */
11
+ export declare function setSessionConfig(sessionId: string, config: SessionConfig): void;
12
+ /**
13
+ * セッション設定を取得
14
+ */
15
+ export declare function getSessionConfig(sessionId?: string): SessionConfig | undefined;
16
+ /**
17
+ * セッション設定を削除
18
+ */
19
+ export declare function deleteSessionConfig(sessionId: string): void;
20
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAID;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAE/E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAG9E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAE3D"}
@@ -0,0 +1,22 @@
1
+ const sessionConfigs = new Map();
2
+ /**
3
+ * セッション設定を保存
4
+ */
5
+ export function setSessionConfig(sessionId, config) {
6
+ sessionConfigs.set(sessionId, config);
7
+ }
8
+ /**
9
+ * セッション設定を取得
10
+ */
11
+ export function getSessionConfig(sessionId) {
12
+ if (!sessionId)
13
+ return undefined;
14
+ return sessionConfigs.get(sessionId);
15
+ }
16
+ /**
17
+ * セッション設定を削除
18
+ */
19
+ export function deleteSessionConfig(sessionId) {
20
+ sessionConfigs.delete(sessionId);
21
+ }
22
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AASA,MAAM,cAAc,GAAG,IAAI,GAAG,EAAyB,CAAA;AAEvD;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,MAAqB,EAAQ;IAC/E,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;AAAA,CACtC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAkB,EAA6B;IAC9E,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAA;IAChC,OAAO,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;AAAA,CACrC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAQ;IAC3D,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAAA,CACjC"}
package/dist/stdio.js CHANGED
@@ -1,9 +1,7 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js");
5
- const server_1 = require("./server");
6
- server_1.server.connect(new stdio_js_1.StdioServerTransport()).catch(() => {
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ import { server } from './server.js';
4
+ server.connect(new StdioServerTransport()).catch(() => {
7
5
  process.exit(1);
8
6
  });
9
7
  //# sourceMappingURL=stdio.js.map
package/dist/stdio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../src/stdio.ts"],"names":[],"mappings":";;;AAEA,wEAAgF;AAChF,qCAAiC;AAEjC,eAAM,CAAC,OAAO,CAAC,IAAI,+BAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAAA,CAChB,CAAC,CAAA"}
1
+ {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../src/stdio.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAAA,CAChB,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,18 +1,16 @@
1
1
  {
2
2
  "name": "@kajidog/mcp-tts-voicevox",
3
- "version": "0.3.1",
3
+ "version": "0.5.0",
4
4
  "description": "VOICEVOX integration for MCP - Text-to-Speech server using VOICEVOX engine",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "exports": {
9
9
  ".": {
10
- "require": "./dist/index.js",
11
10
  "import": "./dist/index.js",
12
11
  "types": "./dist/index.d.ts"
13
12
  },
14
13
  "./client": {
15
- "require": "./dist/client.js",
16
14
  "import": "./dist/client.js",
17
15
  "types": "./dist/client.d.ts"
18
16
  }
@@ -20,7 +18,7 @@
20
18
  "bin": {
21
19
  "mcp-tts-voicevox": "./dist/index.js"
22
20
  },
23
- "type": "commonjs",
21
+ "type": "module",
24
22
  "files": [
25
23
  "dist",
26
24
  "README.md",
@@ -52,17 +50,17 @@
52
50
  },
53
51
  "dependencies": {
54
52
  "@hono/node-server": "^1.14.2",
55
- "@modelcontextprotocol/sdk": "^1.25.1",
53
+ "@modelcontextprotocol/sdk": "^1.26.0",
56
54
  "hono": "^4.7.10",
57
55
  "zod": "^3.25.0",
58
- "@kajidog/voicevox-client": "0.3.0"
56
+ "@kajidog/voicevox-client": "0.4.0"
59
57
  },
60
58
  "devDependencies": {
61
59
  "@biomejs/biome": "^1.9.4",
62
60
  "@types/node": "^20.0.0",
63
61
  "@typescript/native-preview": "7.0.0-dev.20250712.1",
64
62
  "vitest": "^2.1.8",
65
- "ts-node": "^10.9.0",
63
+ "tsx": "^4.19.0",
66
64
  "typescript": "^5.0.0"
67
65
  },
68
66
  "peerDependencies": {
@@ -73,12 +71,16 @@
73
71
  "start:stdio": "node dist/stdio.js",
74
72
  "start:http": "MCP_HTTP_MODE=true node dist/index.js",
75
73
  "start:http:win": "powershell -Command \"$env:MCP_HTTP_MODE='true'; node dist/index.js\"",
76
- "dev": "NODE_ENV=development ts-node src/index.ts",
77
- "dev:stdio": "NODE_ENV=development ts-node src/stdio.ts",
78
- "dev:http": "NODE_ENV=development MCP_HTTP_MODE=true ts-node src/index.ts",
79
- "dev:http:win": "powershell -Command \"$env:NODE_ENV='development'; $env:MCP_HTTP_MODE='true'; ts-node src/index.ts\"",
80
- "build": "tsgo && pnpm -r --filter \"./packages/*\" build && node scripts/fix-permissions.js",
81
- "build:tsc": "tsc && pnpm -r --filter \"./packages/*\" build:tsc && node scripts/fix-permissions.js",
74
+ "dev": "NODE_ENV=development tsx src/index.ts",
75
+ "dev:stdio": "NODE_ENV=development tsx src/stdio.ts",
76
+ "dev:http": "NODE_ENV=development MCP_HTTP_MODE=true tsx src/index.ts",
77
+ "dev:http:win": "powershell -Command \"$env:NODE_ENV='development'; $env:MCP_HTTP_MODE='true'; tsx src/index.ts\"",
78
+ "start:bun": "bun dist/index.js",
79
+ "start:bun:http": "MCP_HTTP_MODE=true bun dist/index.js",
80
+ "dev:bun": "NODE_ENV=development bun src/index.ts",
81
+ "dev:bun:http": "NODE_ENV=development MCP_HTTP_MODE=true bun src/index.ts",
82
+ "build": "tsgo && pnpm -r --filter \"./packages/*\" build && node scripts/fix-permissions.cjs",
83
+ "build:tsc": "tsc && pnpm -r --filter \"./packages/*\" build:tsc && node scripts/fix-permissions.cjs",
82
84
  "build:clean": "rm -rf dist && pnpm -r --filter \"./packages/*\" run build:clean && pnpm build",
83
85
  "lint": "biome check . && pnpm -r --filter \"./packages/*\" lint",
84
86
  "lint:fix": "biome check --write . && pnpm -r --filter \"./packages/*\" lint:fix",