tabby-mcp-server 1.5.1 → 1.6.2
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 +30 -1
- package/dist/index.js +1276 -414
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/typings/components/mcpSettingsTab.component.d.ts +2 -1
- package/typings/index.d.ts +7 -1
- package/typings/services/mcpConfigProvider.d.ts +5 -0
- package/typings/services/mcpService.d.ts +8 -0
- package/typings/tools/tabManagement.d.ts +5 -0
- package/typings/tools/terminal.d.ts +6 -0
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tabby-mcp-server",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.2",
|
|
4
4
|
"description": "MCP (Model Context Protocol) server plugin for Tabby terminal - Complete terminal control with 34 MCP tools including SFTP file transfer",
|
|
5
5
|
"homepage": "https://github.com/GentlemanHu/Tabby-MCP",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
8
|
-
"url": "https://github.com/GentlemanHu/Tabby-MCP.git"
|
|
8
|
+
"url": "git+https://github.com/GentlemanHu/Tabby-MCP.git"
|
|
9
9
|
},
|
|
10
10
|
"bugs": {
|
|
11
11
|
"url": "https://github.com/GentlemanHu/Tabby-MCP/issues"
|
|
@@ -16,6 +16,7 @@ export declare class McpSettingsTabComponent implements OnInit, OnDestroy {
|
|
|
16
16
|
version: string;
|
|
17
17
|
saveMessage: string;
|
|
18
18
|
private configSub?;
|
|
19
|
+
private lastEnvironmentDetectionEnabled;
|
|
19
20
|
constructor(config: ConfigService, mcpService: McpService, logger: McpLoggerService, i18n: McpI18nService, sftpTools: SFTPToolCategory);
|
|
20
21
|
ngOnInit(): void;
|
|
21
22
|
ngOnDestroy(): void;
|
|
@@ -34,7 +35,7 @@ export declare class McpSettingsTabComponent implements OnInit, OnDestroy {
|
|
|
34
35
|
* Open URL in external browser
|
|
35
36
|
*/
|
|
36
37
|
openUrl(url: string): void;
|
|
37
|
-
saveConfig(): void
|
|
38
|
+
saveConfig(): Promise<void>;
|
|
38
39
|
getMaxFileSizeMB(): number;
|
|
39
40
|
setMaxFileSizeMB(mb: number): void;
|
|
40
41
|
getMaxUploadSizeMB(): number;
|
package/typings/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
1
2
|
import { AppService, ConfigService } from 'tabby-core';
|
|
2
3
|
import { McpService } from './services/mcpService';
|
|
3
4
|
import { McpLoggerService } from './services/mcpLogger.service';
|
|
@@ -15,7 +16,7 @@ import './styles.scss';
|
|
|
15
16
|
* - Pair programming mode with command confirmation
|
|
16
17
|
* - Comprehensive logging
|
|
17
18
|
*/
|
|
18
|
-
export default class McpModule {
|
|
19
|
+
export default class McpModule implements OnDestroy {
|
|
19
20
|
private app;
|
|
20
21
|
private config;
|
|
21
22
|
private mcpService;
|
|
@@ -24,11 +25,16 @@ export default class McpModule {
|
|
|
24
25
|
private tabManagementTools;
|
|
25
26
|
private sftpTools;
|
|
26
27
|
private initialized;
|
|
28
|
+
private appReadySubscription?;
|
|
29
|
+
private shutdownInProgress;
|
|
27
30
|
constructor(app: AppService, config: ConfigService, mcpService: McpService, logger: McpLoggerService, terminalTools: TerminalToolCategory, tabManagementTools: TabManagementToolCategory, sftpTools: SFTPToolCategory);
|
|
28
31
|
/**
|
|
29
32
|
* Initialize MCP server on application boot
|
|
30
33
|
*/
|
|
31
34
|
private initializeOnBoot;
|
|
35
|
+
ngOnDestroy(): void;
|
|
36
|
+
private handleBeforeUnload;
|
|
37
|
+
private shutdownServer;
|
|
32
38
|
}
|
|
33
39
|
export * from './services/mcpService';
|
|
34
40
|
export * from './services/mcpLogger.service';
|
|
@@ -21,6 +21,8 @@ export declare class McpService {
|
|
|
21
21
|
private toolCategories;
|
|
22
22
|
private registeredTools;
|
|
23
23
|
private toolEndpointsConfigured;
|
|
24
|
+
private isToolEnabled;
|
|
25
|
+
private getEnabledToolsFromCategory;
|
|
24
26
|
constructor(config: ConfigService, logger: McpLoggerService);
|
|
25
27
|
/**
|
|
26
28
|
* Initialize the MCP service (no longer creates a single server)
|
|
@@ -63,6 +65,12 @@ export declare class McpService {
|
|
|
63
65
|
* Stop the MCP server
|
|
64
66
|
*/
|
|
65
67
|
stopServer(): Promise<void>;
|
|
68
|
+
/**
|
|
69
|
+
* Best-effort synchronous cleanup for window/application shutdown.
|
|
70
|
+
* Avoids awaiting async transport closes during unload while still releasing the port.
|
|
71
|
+
*/
|
|
72
|
+
stopServerSync(reason?: string): void;
|
|
73
|
+
private stopServerInternal;
|
|
66
74
|
/**
|
|
67
75
|
* Restart the MCP server
|
|
68
76
|
*/
|
|
@@ -31,6 +31,11 @@ export declare class TabManagementToolCategory extends BaseToolCategory {
|
|
|
31
31
|
* If no locator is provided, returns the currently active/focused tab
|
|
32
32
|
*/
|
|
33
33
|
private findTabByLocator;
|
|
34
|
+
private getQuickConnectProviders;
|
|
35
|
+
private getQuickConnectProvider;
|
|
36
|
+
private buildSshQuickConnectProfile;
|
|
37
|
+
private resolveQuickConnectTarget;
|
|
38
|
+
private openProfileTabAndBuildResponse;
|
|
34
39
|
private createListTabsTool;
|
|
35
40
|
private createSelectTabTool;
|
|
36
41
|
private createCloseTabTool;
|
|
@@ -93,6 +93,12 @@ export declare class TerminalToolCategory extends BaseToolCategory {
|
|
|
93
93
|
* Tool: Send raw input to terminal (for interactive commands)
|
|
94
94
|
*/
|
|
95
95
|
private createSendInputTool;
|
|
96
|
+
private parseEnvironmentFromBuffer;
|
|
97
|
+
/**
|
|
98
|
+
* Tool: Get the current environment context of a session
|
|
99
|
+
*/
|
|
100
|
+
private createGetSessionEnvironmentTool;
|
|
101
|
+
private detectActiveShellEnvironment;
|
|
96
102
|
/**
|
|
97
103
|
* Tool: Get terminal buffer content
|
|
98
104
|
*/
|