@search-docs/mcp-server 1.2.0 → 1.2.1

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.
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 動的ツール更新テスト
3
+ *
4
+ * 目的: 状態遷移時にツールリストが動的に更新されることを確認する
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=dynamic-tool-update.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-tool-update.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/dynamic-tool-update.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * 動的ツール更新テスト
3
+ *
4
+ * 目的: 状態遷移時にツールリストが動的に更新されることを確認する
5
+ */
6
+ import { describe, test, expect, afterEach } from 'vitest';
7
+ import { setupTestEnvironment } from './helpers/test-setup.js';
8
+ describe('動的ツール更新テスト', () => {
9
+ let env = null;
10
+ afterEach(async () => {
11
+ if (env) {
12
+ await env.cleanup();
13
+ env = null;
14
+ }
15
+ });
16
+ test('init実行後にserver_startが利用可能になる', async () => {
17
+ // NOT_CONFIGURED状態で起動
18
+ env = await setupTestEnvironment({
19
+ prefix: 'dynamic-init',
20
+ createConfig: false,
21
+ port: 54330,
22
+ });
23
+ // 初期状態: init, get_system_status のみ
24
+ let response = (await env.tester.sendRequest('tools/list', {}));
25
+ let toolNames = response.tools.map((t) => t.name);
26
+ expect(toolNames).toContain('init');
27
+ expect(toolNames).toContain('get_system_status');
28
+ expect(toolNames).not.toContain('server_start');
29
+ expect(toolNames).not.toContain('server_stop');
30
+ // init実行
31
+ const initResult = await env.tester.callTool('init', {});
32
+ expect(initResult.success).toBe(true);
33
+ // 少し待機(状態更新のため)
34
+ await new Promise((resolve) => setTimeout(resolve, 100));
35
+ // tools/listを再取得
36
+ response = (await env.tester.sendRequest('tools/list', {}));
37
+ toolNames = response.tools.map((t) => t.name);
38
+ // init実行後: server_start, server_stop が追加される
39
+ expect(toolNames).toContain('init');
40
+ expect(toolNames).toContain('get_system_status');
41
+ expect(toolNames).toContain('server_start');
42
+ expect(toolNames).toContain('server_stop');
43
+ // 検索系ツールはまだ利用不可
44
+ expect(toolNames).not.toContain('search');
45
+ expect(toolNames).not.toContain('get_document');
46
+ expect(toolNames).not.toContain('index_status');
47
+ });
48
+ test('server_start実行後に検索系ツールが利用可能になる', async () => {
49
+ // CONFIGURED_SERVER_DOWN状態で起動
50
+ env = await setupTestEnvironment({
51
+ prefix: 'dynamic-start',
52
+ createConfig: true,
53
+ port: 54333,
54
+ createIndexDir: false,
55
+ });
56
+ // 初期状態: 検索系ツールは利用不可
57
+ let response = (await env.tester.sendRequest('tools/list', {}));
58
+ let toolNames = response.tools.map((t) => t.name);
59
+ expect(toolNames).toContain('server_start');
60
+ expect(toolNames).not.toContain('search');
61
+ expect(toolNames).not.toContain('get_document');
62
+ expect(toolNames).not.toContain('index_status');
63
+ // server_start実行
64
+ const startResult = await env.tester.callTool('server_start', {});
65
+ expect(startResult.success).toBe(true);
66
+ // サーバ起動完了を待機
67
+ await new Promise((resolve) => setTimeout(resolve, 2000));
68
+ // tools/listを再取得
69
+ response = (await env.tester.sendRequest('tools/list', {}));
70
+ toolNames = response.tools.map((t) => t.name);
71
+ // server_start実行後: 検索系ツールが追加される
72
+ expect(toolNames).toContain('search');
73
+ expect(toolNames).toContain('get_document');
74
+ expect(toolNames).toContain('index_status');
75
+ }, 30000);
76
+ test('server_stop実行後に検索系ツールが利用不可になる', async () => {
77
+ // RUNNING状態で起動(auto-start)
78
+ env = await setupTestEnvironment({
79
+ prefix: 'dynamic-stop',
80
+ createConfig: true,
81
+ port: 54332,
82
+ createIndexDir: true,
83
+ });
84
+ // auto-start完了を待機
85
+ await new Promise((resolve) => setTimeout(resolve, 3000));
86
+ // 初期状態: 全ツール利用可能
87
+ let response = (await env.tester.sendRequest('tools/list', {}));
88
+ let toolNames = response.tools.map((t) => t.name);
89
+ expect(toolNames).toContain('search');
90
+ expect(toolNames).toContain('get_document');
91
+ expect(toolNames).toContain('index_status');
92
+ // server_stop実行
93
+ const stopResult = await env.tester.callTool('server_stop', {});
94
+ expect(stopResult.success).toBe(true);
95
+ // サーバ停止完了を待機
96
+ await new Promise((resolve) => setTimeout(resolve, 1000));
97
+ // tools/listを再取得
98
+ response = (await env.tester.sendRequest('tools/list', {}));
99
+ toolNames = response.tools.map((t) => t.name);
100
+ // server_stop実行後: 検索系ツールが削除される
101
+ expect(toolNames).not.toContain('search');
102
+ expect(toolNames).not.toContain('get_document');
103
+ expect(toolNames).not.toContain('index_status');
104
+ // サーバ制御ツールは残る
105
+ expect(toolNames).toContain('server_start');
106
+ expect(toolNames).toContain('server_stop');
107
+ }, 40000);
108
+ });
109
+ //# sourceMappingURL=dynamic-tool-update.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-tool-update.test.js","sourceRoot":"","sources":["../../src/__tests__/dynamic-tool-update.test.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
File without changes
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CAyEjF"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CA6EjF"}
@@ -51,11 +51,15 @@ export function registerInitTool(context) {
51
51
  resultText += '**indexing.maxTokensPerSection**: セクションの最大トークン数\n';
52
52
  resultText += ' - デフォルト: 2000トークン\n';
53
53
  resultText += ' - 大きくすると粗い分割、小さくすると細かい分割になります\n\n';
54
+ resultText += '📌 重要: 新しいツール(server_start, server_stop)が利用可能になりました。\n';
55
+ resultText += ' Claude Codeを再接続すると表示されます。\n';
56
+ resultText += ' (Claude Codeは現時点でMCP通知に未対応のため、reconnectが必要です)\n\n';
54
57
  resultText += '次のステップ:\n';
55
58
  resultText += ' 1. 設定を調整(必要に応じて): .search-docs.jsonを編集\n';
56
- resultText += ' 2. サーバを起動: server_start\n';
57
- resultText += ' 3. システム状態を確認: get_system_status\n';
58
- resultText += ' 4. 文書を検索: search\n';
59
+ resultText += ' 2. **Claude Codeを再接続してツールリストを更新**\n';
60
+ resultText += ' 3. サーバを起動: server_start\n';
61
+ resultText += ' 4. システム状態を確認: get_system_status\n';
62
+ resultText += ' 5. 文書を検索: search\n';
59
63
  return {
60
64
  content: [
61
65
  {
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAGnE;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgC;IAC/D,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAE5D,OAAO,MAAM,CAAC,YAAY,CACxB,MAAM,EACN;QACE,WAAW,EACT,2GAA2G;QAC7G,WAAW,EAAE;YACX,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,mCAAmC,CAAC;YAChD,KAAK,EAAE,CAAC;iBACL,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,wBAAwB,CAAC;SACtC;KACF,EACD,KAAK,EAAE,IAAwC,EAAE,EAAE;QACjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAE7B,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,UAAU,CAAC;gBACf,IAAI;gBACJ,KAAK;gBACL,GAAG,EAAE,WAAW,CAAC,WAAW;aAC7B,CAAC,CAAC;YAEH,wBAAwB;YACxB,MAAM,kBAAkB,EAAE,CAAC;YAE3B,IAAI,UAAU,GAAG,0BAA0B,CAAC;YAE5C,IAAI,KAAK,EAAE,CAAC;gBACV,UAAU,IAAI,wBAAwB,CAAC;YACzC,CAAC;YAED,UAAU,IAAI,sBAAsB,CAAC;YACrC,UAAU,IAAI,wCAAwC,CAAC;YACvD,UAAU,IAAI,2CAA2C,CAAC;YAC1D,UAAU,IAAI,iCAAiC,CAAC;YAChD,UAAU,IAAI,mCAAmC,CAAC;YAClD,UAAU,IAAI,iDAAiD,CAAC;YAChE,UAAU,IAAI,wBAAwB,CAAC;YACvC,UAAU,IAAI,4CAA4C,CAAC;YAC3D,UAAU,IAAI,iBAAiB,CAAC;YAChC,UAAU,IAAI,mBAAmB,CAAC;YAClC,UAAU,IAAI,mBAAmB,CAAC;YAClC,UAAU,IAAI,4BAA4B,CAAC;YAC3C,UAAU,IAAI,mDAAmD,CAAC;YAClE,UAAU,IAAI,uBAAuB,CAAC;YACtC,UAAU,IAAI,qCAAqC,CAAC;YACpD,UAAU,IAAI,WAAW,CAAC;YAC1B,UAAU,IAAI,4CAA4C,CAAC;YAC3D,UAAU,IAAI,6BAA6B,CAAC;YAC5C,UAAU,IAAI,qCAAqC,CAAC;YACpD,UAAU,IAAI,sBAAsB,CAAC;YAErC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,UAAU;qBACjB;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAuB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/tools/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AAGnE;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAgC;IAC/D,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAE5D,OAAO,MAAM,CAAC,YAAY,CACxB,MAAM,EACN;QACE,WAAW,EACT,2GAA2G;QAC7G,WAAW,EAAE;YACX,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,mCAAmC,CAAC;YAChD,KAAK,EAAE,CAAC;iBACL,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CAAC,wBAAwB,CAAC;SACtC;KACF,EACD,KAAK,EAAE,IAAwC,EAAE,EAAE;QACjD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAE7B,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,UAAU,CAAC;gBACf,IAAI;gBACJ,KAAK;gBACL,GAAG,EAAE,WAAW,CAAC,WAAW;aAC7B,CAAC,CAAC;YAEH,wBAAwB;YACxB,MAAM,kBAAkB,EAAE,CAAC;YAE3B,IAAI,UAAU,GAAG,0BAA0B,CAAC;YAE5C,IAAI,KAAK,EAAE,CAAC;gBACV,UAAU,IAAI,wBAAwB,CAAC;YACzC,CAAC;YAED,UAAU,IAAI,sBAAsB,CAAC;YACrC,UAAU,IAAI,wCAAwC,CAAC;YACvD,UAAU,IAAI,2CAA2C,CAAC;YAC1D,UAAU,IAAI,iCAAiC,CAAC;YAChD,UAAU,IAAI,mCAAmC,CAAC;YAClD,UAAU,IAAI,iDAAiD,CAAC;YAChE,UAAU,IAAI,wBAAwB,CAAC;YACvC,UAAU,IAAI,4CAA4C,CAAC;YAC3D,UAAU,IAAI,iBAAiB,CAAC;YAChC,UAAU,IAAI,mBAAmB,CAAC;YAClC,UAAU,IAAI,mBAAmB,CAAC;YAClC,UAAU,IAAI,4BAA4B,CAAC;YAC3C,UAAU,IAAI,mDAAmD,CAAC;YAClE,UAAU,IAAI,uBAAuB,CAAC;YACtC,UAAU,IAAI,qCAAqC,CAAC;YACpD,UAAU,IAAI,wDAAwD,CAAC;YACvE,UAAU,IAAI,gCAAgC,CAAC;YAC/C,UAAU,IAAI,sDAAsD,CAAC;YACrE,UAAU,IAAI,WAAW,CAAC;YAC1B,UAAU,IAAI,4CAA4C,CAAC;YAC3D,UAAU,IAAI,uCAAuC,CAAC;YACtD,UAAU,IAAI,6BAA6B,CAAC;YAC5C,UAAU,IAAI,qCAAqC,CAAC;YACpD,UAAU,IAAI,sBAAsB,CAAC;YAErC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,UAAU;qBACjB;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,sBAAuB,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server-control.d.ts","sourceRoot":"","sources":["../../src/tools/server-control.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CAwExF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CAqDvF"}
1
+ {"version":3,"file":"server-control.d.ts","sourceRoot":"","sources":["../../src/tools/server-control.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CA4ExF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,uBAAuB,GAAG,cAAc,CA4DvF"}
@@ -52,10 +52,14 @@ export function registerServerStartTool(context) {
52
52
  else {
53
53
  resultText += 'バックグラウンドモードで起動しました。\n\n';
54
54
  }
55
+ resultText += '📌 重要: 検索系ツール(search, get_document, index_status)が利用可能になりました。\n';
56
+ resultText += ' Claude Codeを再接続すると表示されます。\n';
57
+ resultText += ' (Claude Codeは現時点でMCP通知に未対応のため、reconnectが必要です)\n\n';
55
58
  resultText += '次のステップ:\n';
56
- resultText += ' - システム状態を確認: get_system_status\n';
57
- resultText += ' - インデックス状態を確認: index_status\n';
58
- resultText += ' - 文書を検索: search\n';
59
+ resultText += ' 1. **Claude Codeを再接続してツールリストを更新**\n';
60
+ resultText += ' 2. システム状態を確認: get_system_status\n';
61
+ resultText += ' 3. インデックス状態を確認: index_status\n';
62
+ resultText += ' 4. 文書を検索: search\n';
59
63
  return {
60
64
  content: [
61
65
  {
@@ -104,11 +108,17 @@ export function registerServerStopTool(context) {
104
108
  });
105
109
  // システム状態を再検出
106
110
  await refreshSystemState();
111
+ let resultText = '✅ サーバを停止しました。\n\n';
112
+ resultText += '📌 注意: 検索系ツール(search, get_document, index_status)が利用不可になりました。\n';
113
+ resultText += ' Claude Codeを再接続すると、ツールリストが更新されます。\n';
114
+ resultText += ' (Claude Codeは現時点でMCP通知に未対応のため、reconnectが必要です)\n\n';
115
+ resultText += '次のステップ:\n';
116
+ resultText += ' - サーバを再起動: server_start\n';
107
117
  return {
108
118
  content: [
109
119
  {
110
120
  type: 'text',
111
- text: '✅ サーバを停止しました。\n\nサーバを再起動するには server_start を使用してください。',
121
+ text: resultText,
112
122
  },
113
123
  ],
114
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"server-control.js","sourceRoot":"","sources":["../../src/tools/server-control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-control.js","sourceRoot":"","sources":["../../src/tools/server-control.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.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "MCP Server for search-docs - Claude Code integration",
5
5
  "type": "module",
6
6
  "main": "dist/server.js",
@@ -12,13 +12,25 @@
12
12
  "dist",
13
13
  "README.md"
14
14
  ],
15
+ "scripts": {
16
+ "build": "tsc --build --force",
17
+ "clean": "tsc --build --clean",
18
+ "dev": "tsc --watch",
19
+ "start": "node dist/server.js",
20
+ "test": "vitest",
21
+ "typecheck": "tsc --noEmit",
22
+ "lint": "eslint . --max-warnings 0",
23
+ "lint:fix": "eslint . --fix --max-warnings 0",
24
+ "build:fast": "tsc --build",
25
+ "prepublishOnly": "pnpm build"
26
+ },
15
27
  "dependencies": {
16
28
  "@modelcontextprotocol/sdk": "^1.17.0",
29
+ "@search-docs/cli": "workspace:*",
30
+ "@search-docs/client": "workspace:*",
31
+ "@search-docs/types": "workspace:*",
17
32
  "commander": "^12.0.0",
18
- "zod": "^3.22.0",
19
- "@search-docs/cli": "1.0.27",
20
- "@search-docs/client": "1.0.14",
21
- "@search-docs/types": "1.2.0"
33
+ "zod": "^3.22.0"
22
34
  },
23
35
  "devDependencies": {
24
36
  "@coeiro-operator/mcp-debug": "^1.0.0",
@@ -43,16 +55,5 @@
43
55
  "type": "git",
44
56
  "url": "https://github.com/otolab/search-docs.git",
45
57
  "directory": "packages/mcp-server"
46
- },
47
- "scripts": {
48
- "build": "tsc --build --force",
49
- "clean": "tsc --build --clean",
50
- "dev": "tsc --watch",
51
- "start": "node dist/server.js",
52
- "test": "vitest",
53
- "typecheck": "tsc --noEmit",
54
- "lint": "eslint . --max-warnings 0",
55
- "lint:fix": "eslint . --fix --max-warnings 0",
56
- "build:fast": "tsc --build"
57
58
  }
58
- }
59
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 otolab
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.