@search-docs/mcp-server 1.0.2 → 1.0.4

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
@@ -44,17 +44,23 @@ path: "docs/architecture.md"
44
44
 
45
45
  ## セットアップ
46
46
 
47
- ### 前提条件
47
+ ### サーバ自動起動機能
48
48
 
49
- 1. search-docsサーバが起動していること
50
- ```bash
51
- node packages/cli/dist/index.js server start --daemon
52
- ```
49
+ v1.0.1以降、MCP Serverは自動的にsearch-docsサーバを起動します。
53
50
 
54
- 2. ビルド済みであること
55
- ```bash
56
- pnpm build
57
- ```
51
+ **動作**:
52
+ 1. MCP Server起動時にサーバへの接続を試みる
53
+ 2. サーバが起動していない場合、自動的にサーバを起動
54
+ 3. サーバが起動したら接続を確立
55
+
56
+ これにより、手動でサーバを起動する必要がなくなりました。
57
+
58
+ ### 前提条件
59
+
60
+ ビルド済みであること
61
+ ```bash
62
+ pnpm build
63
+ ```
58
64
 
59
65
  ### Claude Code統合
60
66
 
@@ -100,15 +106,17 @@ node dist/server.js --project-dir /path/to/your/project
100
106
 
101
107
  **エラー**: `Failed to connect to search-docs server`
102
108
 
103
- **解決方法**:
109
+ **通常は不要**: MCP Serverはサーバを自動起動します。
110
+
111
+ **手動で確認する場合**:
104
112
  1. サーバが起動しているか確認
105
113
  ```bash
106
114
  node packages/cli/dist/index.js server status
107
115
  ```
108
116
 
109
- 2. サーバを起動
117
+ 2. 必要に応じてサーバを起動
110
118
  ```bash
111
- node packages/cli/dist/index.js server start --daemon
119
+ node packages/cli/dist/index.js server start
112
120
  ```
113
121
 
114
122
  ### 設定ファイルが見つからない
@@ -0,0 +1,5 @@
1
+ /**
2
+ * コマンドライン引数解析のテスト
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=args.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/args.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * コマンドライン引数解析のテスト
3
+ */
4
+ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
5
+ import { Command } from 'commander';
6
+ import * as path from 'path';
7
+ /**
8
+ * parseArgs() の簡易実装(テスト用)
9
+ */
10
+ function parseArgs(argv) {
11
+ const program = new Command();
12
+ program
13
+ .name('search-docs-mcp')
14
+ .description('MCP Server for search-docs - Claude Code integration')
15
+ .version('0.1.0')
16
+ .option('--project-dir <path>', 'Project directory path (optional, will auto-detect from config file if not specified)')
17
+ .exitOverride() // テスト時はexitしない
18
+ .parse(argv, { from: 'user' });
19
+ const options = program.opts();
20
+ return {
21
+ projectDir: options.projectDir ? path.resolve(options.projectDir) : undefined,
22
+ };
23
+ }
24
+ describe('MCP Server - コマンドライン引数解析', () => {
25
+ let originalArgv;
26
+ beforeEach(() => {
27
+ // 元のargvを保存
28
+ originalArgv = process.argv;
29
+ });
30
+ afterEach(() => {
31
+ // argvを復元
32
+ process.argv = originalArgv;
33
+ });
34
+ it('--project-dir が指定された場合、そのパスを使用', () => {
35
+ const args = parseArgs(['node', 'server.js', '--project-dir', '/path/to/project']);
36
+ expect(args.projectDir).toBe(path.resolve('/path/to/project'));
37
+ });
38
+ it('--project-dir が指定されていない場合、undefined', () => {
39
+ const args = parseArgs(['node', 'server.js']);
40
+ expect(args.projectDir).toBeUndefined();
41
+ });
42
+ it('--project-dir を相対パスで指定した場合、絶対パスに解決', () => {
43
+ const args = parseArgs(['node', 'server.js', '--project-dir', './relative/path']);
44
+ expect(args.projectDir).toBe(path.resolve('./relative/path'));
45
+ });
46
+ });
47
+ //# sourceMappingURL=args.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.test.js","sourceRoot":"","sources":["../../src/__tests__/args.test.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;GAEG;AACH,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,iBAAiB,CAAC;SACvB,WAAW,CAAC,sDAAsD,CAAC;SACnE,OAAO,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,sBAAsB,EAAE,uFAAuF,CAAC;SACvH,YAAY,EAAE,CAAC,eAAe;SAC9B,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAA2B,CAAC;IAExD,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9E,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAI,YAAsB,CAAC;IAE3B,UAAU,CAAC,GAAG,EAAE;QACd,YAAY;QACZ,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,UAAU;QACV,OAAO,CAAC,IAAI,GAAG,YAAY,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAEnF,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;QAE9C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAElF,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -15,7 +15,7 @@ export class ServerManager {
15
15
  async resolveCliPath() {
16
16
  try {
17
17
  // import.meta.resolve()でパスを解決
18
- const cliPackage = await import.meta.resolve('@search-docs/cli');
18
+ const cliPackage = import.meta.resolve('@search-docs/cli');
19
19
  // file:// プロトコルを削除してファイルパスに変換
20
20
  const cliPackagePath = cliPackage.replace(/^file:\/\//, '');
21
21
  // パッケージディレクトリを取得
@@ -41,7 +41,7 @@ export class ServerManager {
41
41
  const cliPath = await this.resolveCliPath();
42
42
  console.error(`[mcp-server] CLI path resolved: ${cliPath}`);
43
43
  // サーバ起動コマンドを構築
44
- const args = ['server', 'start', '--port', port.toString()];
44
+ const args = ['server', 'start', '--foreground', '--port', port.toString()];
45
45
  if (configPath) {
46
46
  args.push('--config', configPath);
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server-manager.js","sourceRoot":"","sources":["../src/server-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-manager.js","sourceRoot":"","sources":["../src/server-manager.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -4,36 +4,19 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
4
4
  import { z } from 'zod';
5
5
  import { Command } from 'commander';
6
6
  import { SearchDocsClient } from '@search-docs/client';
7
- import * as fs from 'fs/promises';
7
+ import { ConfigLoader } from '@search-docs/types';
8
8
  import * as path from 'path';
9
9
  import { ServerManager } from './server-manager.js';
10
10
  /**
11
- * デフォルト設定
11
+ * デバッグモードの判定
12
12
  */
13
- const DEFAULT_CONFIG = {
14
- server: {
15
- host: 'localhost',
16
- port: 24280,
17
- },
18
- };
13
+ const isDebugMode = process.env.DEBUG === '1' || process.env.NODE_ENV === 'development';
19
14
  /**
20
- * 設定ファイルを読み込む
15
+ * デバッグログ出力(デバッグモード時のみ)
21
16
  */
22
- async function loadConfig(projectDir) {
23
- const configPath = path.join(projectDir, '.search-docs.json');
24
- try {
25
- const content = await fs.readFile(configPath, 'utf-8');
26
- const config = JSON.parse(content);
27
- return {
28
- server: {
29
- host: config.server?.host || DEFAULT_CONFIG.server.host,
30
- port: config.server?.port || DEFAULT_CONFIG.server.port,
31
- },
32
- };
33
- }
34
- catch (_error) {
35
- console.error(`[mcp-server] Config file not found or invalid, using defaults: ${configPath}`);
36
- return DEFAULT_CONFIG;
17
+ function debugLog(message) {
18
+ if (isDebugMode) {
19
+ console.error(`[mcp-server] ${message}`);
37
20
  }
38
21
  }
39
22
  /**
@@ -45,11 +28,11 @@ function parseArgs() {
45
28
  .name('search-docs-mcp')
46
29
  .description('MCP Server for search-docs - Claude Code integration')
47
30
  .version('0.1.0')
48
- .requiredOption('--project-dir <path>', 'Project directory path')
31
+ .option('--project-dir <path>', 'Project directory path (optional, will auto-detect from config file if not specified)')
49
32
  .parse(process.argv);
50
33
  const options = program.opts();
51
34
  return {
52
- projectDir: path.resolve(options.projectDir),
35
+ projectDir: options.projectDir ? path.resolve(options.projectDir) : undefined,
53
36
  };
54
37
  }
55
38
  /**
@@ -58,42 +41,56 @@ function parseArgs() {
58
41
  async function main() {
59
42
  // コマンドライン引数の解析
60
43
  const { projectDir } = parseArgs();
61
- console.error(`[mcp-server] Project directory: ${projectDir}`);
44
+ // プロジェクトディレクトリを決定
45
+ // 明示的に指定されていない場合は、カレントディレクトリから設定ファイルを探索
46
+ const cwd = projectDir || process.cwd();
47
+ debugLog(`Working directory: ${cwd}`);
48
+ if (projectDir) {
49
+ debugLog(`Project directory (explicit): ${projectDir}`);
50
+ }
51
+ else {
52
+ debugLog(`Project directory: auto-detect from config file`);
53
+ }
62
54
  // 設定ファイルの読み込み
63
- const config = await loadConfig(projectDir);
55
+ const { config, configPath, projectRoot } = await ConfigLoader.resolve({
56
+ cwd,
57
+ requireConfig: true,
58
+ });
64
59
  const serverUrl = `http://${config.server.host}:${config.server.port}`;
65
- console.error(`[mcp-server] Server URL: ${serverUrl}`);
60
+ debugLog(`Project root: ${projectRoot}`);
61
+ debugLog(`Config: ${configPath || 'default config'}`);
62
+ debugLog(`Server URL: ${serverUrl}`);
66
63
  // SearchDocsClientの初期化
67
64
  const client = new SearchDocsClient({ baseUrl: serverUrl });
68
65
  // ServerManager初期化
69
66
  const serverManager = new ServerManager();
70
67
  // プロセス終了時のクリーンアップ
71
68
  process.on('SIGINT', () => {
72
- console.error('[mcp-server] Received SIGINT, cleaning up...');
69
+ debugLog('Received SIGINT, cleaning up...');
73
70
  serverManager.cleanup();
74
71
  process.exit(0);
75
72
  });
76
73
  process.on('SIGTERM', () => {
77
- console.error('[mcp-server] Received SIGTERM, cleaning up...');
74
+ debugLog('Received SIGTERM, cleaning up...');
78
75
  serverManager.cleanup();
79
76
  process.exit(0);
80
77
  });
81
78
  // 接続確認
82
79
  try {
83
80
  await client.healthCheck();
84
- console.error('[mcp-server] Connection to search-docs server established');
81
+ debugLog('Connection to search-docs server established');
85
82
  }
86
- catch (error) {
87
- console.error('[mcp-server] Server is not running, attempting to start...');
83
+ catch (_error) {
84
+ debugLog('Server is not running, attempting to start...');
88
85
  try {
89
- // サーバを自動起動
90
- const configPath = path.join(projectDir, '.search-docs.json');
91
- await serverManager.startServer(projectDir, config.server.port, configPath);
86
+ // サーバを自動起動(projectRootを使用)
87
+ await serverManager.startServer(projectRoot, config.server.port, configPath || undefined);
92
88
  // 起動後、再度接続確認
93
89
  await client.healthCheck();
94
- console.error('[mcp-server] Successfully connected to auto-started server');
90
+ debugLog('Successfully connected to auto-started server');
95
91
  }
96
92
  catch (startError) {
93
+ // エラーは標準エラー出力に出す(ユーザーが問題解決に必要)
97
94
  console.error('[mcp-server] Failed to auto-start server');
98
95
  console.error('[mcp-server] Error:', startError.message);
99
96
  console.error('[mcp-server] Please ensure @search-docs/cli is installed:');
@@ -234,9 +231,9 @@ async function main() {
234
231
  });
235
232
  // サーバの起動
236
233
  const transport = new StdioServerTransport();
237
- console.error('[mcp-server] Starting MCP server...');
234
+ debugLog('Starting MCP server...');
238
235
  await server.connect(transport);
239
- console.error('[mcp-server] MCP server started');
236
+ debugLog('MCP server started');
240
237
  }
241
238
  main().catch((error) => {
242
239
  console.error('[mcp-server] Server error:', error);
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@search-docs/mcp-server",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "MCP Server for search-docs - Claude Code integration",
5
5
  "type": "module",
6
6
  "main": "dist/server.js",
@@ -16,8 +16,8 @@
16
16
  "@modelcontextprotocol/sdk": "^1.17.0",
17
17
  "commander": "^12.0.0",
18
18
  "zod": "^3.22.0",
19
- "@search-docs/cli": "1.0.2",
20
19
  "@search-docs/types": "1.0.1",
20
+ "@search-docs/cli": "1.0.3",
21
21
  "@search-docs/client": "1.0.1"
22
22
  },
23
23
  "devDependencies": {
@@ -45,13 +45,14 @@
45
45
  "directory": "packages/mcp-server"
46
46
  },
47
47
  "scripts": {
48
- "build": "tsc --build",
48
+ "build": "tsc --build --force",
49
49
  "clean": "tsc --build --clean",
50
50
  "dev": "tsc --watch",
51
51
  "start": "node dist/server.js",
52
52
  "test": "vitest",
53
53
  "typecheck": "tsc --noEmit",
54
54
  "lint": "eslint . --max-warnings 0",
55
- "lint:fix": "eslint . --fix --max-warnings 0"
55
+ "lint:fix": "eslint . --fix --max-warnings 0",
56
+ "build:fast": "tsc --build"
56
57
  }
57
58
  }