@agent-relay/mcp 0.1.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/LICENSE +190 -0
- package/README.md +214 -0
- package/dist/bin.d.ts +12 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +127 -0
- package/dist/bin.js.map +1 -0
- package/dist/client.d.ts +68 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +115 -0
- package/dist/client.js.map +1 -0
- package/dist/cloud.d.ts +108 -0
- package/dist/cloud.d.ts.map +1 -0
- package/dist/cloud.js +279 -0
- package/dist/cloud.js.map +1 -0
- package/dist/errors.d.ts +27 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +48 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/install-cli.d.ts +35 -0
- package/dist/install-cli.d.ts.map +1 -0
- package/dist/install-cli.js +157 -0
- package/dist/install-cli.js.map +1 -0
- package/dist/install.d.ts +101 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +398 -0
- package/dist/install.js.map +1 -0
- package/dist/prompts/index.d.ts +2 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +2 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/protocol.d.ts +11 -0
- package/dist/prompts/protocol.d.ts.map +1 -0
- package/dist/prompts/protocol.js +168 -0
- package/dist/prompts/protocol.js.map +1 -0
- package/dist/resources/agents.d.ts +11 -0
- package/dist/resources/agents.d.ts.map +1 -0
- package/dist/resources/agents.js +17 -0
- package/dist/resources/agents.js.map +1 -0
- package/dist/resources/inbox.d.ts +11 -0
- package/dist/resources/inbox.d.ts.map +1 -0
- package/dist/resources/inbox.js +17 -0
- package/dist/resources/inbox.js.map +1 -0
- package/dist/resources/index.d.ts +4 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +4 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/project.d.ts +11 -0
- package/dist/resources/project.d.ts.map +1 -0
- package/dist/resources/project.js +21 -0
- package/dist/resources/project.js.map +1 -0
- package/dist/server.d.ts +19 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +215 -0
- package/dist/server.js.map +1 -0
- package/dist/simple.d.ts +173 -0
- package/dist/simple.d.ts.map +1 -0
- package/dist/simple.js +120 -0
- package/dist/simple.js.map +1 -0
- package/dist/tools/index.d.ts +10 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +10 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/relay-health.d.ts +23 -0
- package/dist/tools/relay-health.d.ts.map +1 -0
- package/dist/tools/relay-health.js +138 -0
- package/dist/tools/relay-health.js.map +1 -0
- package/dist/tools/relay-inbox.d.ts +26 -0
- package/dist/tools/relay-inbox.d.ts.map +1 -0
- package/dist/tools/relay-inbox.js +58 -0
- package/dist/tools/relay-inbox.js.map +1 -0
- package/dist/tools/relay-logs.d.ts +20 -0
- package/dist/tools/relay-logs.d.ts.map +1 -0
- package/dist/tools/relay-logs.js +88 -0
- package/dist/tools/relay-logs.js.map +1 -0
- package/dist/tools/relay-metrics.d.ts +20 -0
- package/dist/tools/relay-metrics.d.ts.map +1 -0
- package/dist/tools/relay-metrics.js +135 -0
- package/dist/tools/relay-metrics.js.map +1 -0
- package/dist/tools/relay-release.d.ts +20 -0
- package/dist/tools/relay-release.d.ts.map +1 -0
- package/dist/tools/relay-release.js +44 -0
- package/dist/tools/relay-release.js.map +1 -0
- package/dist/tools/relay-send.d.ts +29 -0
- package/dist/tools/relay-send.d.ts.map +1 -0
- package/dist/tools/relay-send.js +71 -0
- package/dist/tools/relay-send.js.map +1 -0
- package/dist/tools/relay-spawn.d.ts +36 -0
- package/dist/tools/relay-spawn.d.ts.map +1 -0
- package/dist/tools/relay-spawn.js +73 -0
- package/dist/tools/relay-spawn.js.map +1 -0
- package/dist/tools/relay-status.d.ts +11 -0
- package/dist/tools/relay-status.d.ts.map +1 -0
- package/dist/tools/relay-status.js +43 -0
- package/dist/tools/relay-status.js.map +1 -0
- package/dist/tools/relay-who.d.ts +20 -0
- package/dist/tools/relay-who.d.ts.map +1 -0
- package/dist/tools/relay-who.js +47 -0
- package/dist/tools/relay-who.js.map +1 -0
- package/package.json +69 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI wrapper for MCP installation
|
|
3
|
+
*
|
|
4
|
+
* Provides user-friendly interface for installing MCP server
|
|
5
|
+
* configuration in supported AI editors.
|
|
6
|
+
*/
|
|
7
|
+
export interface CliOptions {
|
|
8
|
+
/** Editor to configure (auto-detect if not specified) */
|
|
9
|
+
editor?: string;
|
|
10
|
+
/** Install globally instead of project-local */
|
|
11
|
+
global?: boolean;
|
|
12
|
+
/** Show what would be done without making changes */
|
|
13
|
+
dryRun?: boolean;
|
|
14
|
+
/** Uninstall instead of install */
|
|
15
|
+
uninstall?: boolean;
|
|
16
|
+
/** List supported editors */
|
|
17
|
+
list?: boolean;
|
|
18
|
+
/** Show installation status */
|
|
19
|
+
status?: boolean;
|
|
20
|
+
/** Quiet mode - minimal output */
|
|
21
|
+
quiet?: boolean;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Run the install command with CLI options
|
|
25
|
+
*/
|
|
26
|
+
export declare function runInstall(options?: CliOptions): void;
|
|
27
|
+
/**
|
|
28
|
+
* Validate editor argument
|
|
29
|
+
*/
|
|
30
|
+
export declare function validateEditor(editor: string): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Get list of valid editor keys for CLI help
|
|
33
|
+
*/
|
|
34
|
+
export declare function getValidEditors(): string[];
|
|
35
|
+
//# sourceMappingURL=install-cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-cli.d.ts","sourceRoot":"","sources":["../src/install-cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAYH,MAAM,WAAW,UAAU;IACzB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mCAAmC;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,+BAA+B;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA+DD;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,UAAe,GAAG,IAAI,CA8CzD;AAoDD;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGtD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI wrapper for MCP installation
|
|
3
|
+
*
|
|
4
|
+
* Provides user-friendly interface for installing MCP server
|
|
5
|
+
* configuration in supported AI editors.
|
|
6
|
+
*/
|
|
7
|
+
import { install, uninstall, detectInstalledEditors, listSupportedEditors, isInstalledFor, } from './install.js';
|
|
8
|
+
/**
|
|
9
|
+
* Format install result for display
|
|
10
|
+
*/
|
|
11
|
+
function formatResult(result, action) {
|
|
12
|
+
const icon = result.success ? '\u2713' : '\u2717';
|
|
13
|
+
const actionWord = action === 'install' ? 'configured' : 'removed';
|
|
14
|
+
const createdNote = result.created ? ' (created)' : '';
|
|
15
|
+
if (result.success) {
|
|
16
|
+
return ` ${icon} ${result.editor} ${actionWord}${createdNote}`;
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return ` ${icon} ${result.editor}: ${result.error}`;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Show installation status for all editors
|
|
24
|
+
*/
|
|
25
|
+
function showStatus(projectDir) {
|
|
26
|
+
const supported = listSupportedEditors();
|
|
27
|
+
const detected = detectInstalledEditors();
|
|
28
|
+
console.log('MCP Installation Status');
|
|
29
|
+
console.log('');
|
|
30
|
+
console.log('Editor Detected Installed');
|
|
31
|
+
console.log('-------------------------------------------');
|
|
32
|
+
for (const { key, name } of supported) {
|
|
33
|
+
const isDetected = detected.includes(key);
|
|
34
|
+
const isInstalled = isInstalledFor(key, { projectDir });
|
|
35
|
+
const detectedStr = isDetected ? '\u2713' : '-';
|
|
36
|
+
const installedStr = isInstalled ? '\u2713' : '-';
|
|
37
|
+
// Pad name to 20 chars
|
|
38
|
+
const paddedName = name.padEnd(20);
|
|
39
|
+
console.log(`${paddedName} ${detectedStr.padEnd(12)}${installedStr}`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Show list of supported editors
|
|
44
|
+
*/
|
|
45
|
+
function showList() {
|
|
46
|
+
const supported = listSupportedEditors();
|
|
47
|
+
const detected = detectInstalledEditors();
|
|
48
|
+
console.log('Supported Editors:');
|
|
49
|
+
console.log('');
|
|
50
|
+
for (const { key, name } of supported) {
|
|
51
|
+
const isDetected = detected.includes(key);
|
|
52
|
+
const status = isDetected ? '(detected)' : '';
|
|
53
|
+
console.log(` ${key.padEnd(15)} ${name} ${status}`);
|
|
54
|
+
}
|
|
55
|
+
console.log('');
|
|
56
|
+
console.log('Usage:');
|
|
57
|
+
console.log(' npx @agent-relay/mcp install --editor <key>');
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Run the install command with CLI options
|
|
61
|
+
*/
|
|
62
|
+
export function runInstall(options = {}) {
|
|
63
|
+
// Handle --list
|
|
64
|
+
if (options.list) {
|
|
65
|
+
showList();
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
// Handle --status
|
|
69
|
+
if (options.status) {
|
|
70
|
+
showStatus(process.cwd());
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
const installOptions = {
|
|
74
|
+
editor: options.editor,
|
|
75
|
+
global: options.global,
|
|
76
|
+
projectDir: options.global ? undefined : process.cwd(),
|
|
77
|
+
dryRun: options.dryRun,
|
|
78
|
+
};
|
|
79
|
+
// Handle --uninstall
|
|
80
|
+
if (options.uninstall) {
|
|
81
|
+
if (!options.quiet) {
|
|
82
|
+
console.log('Uninstalling Agent Relay MCP server...');
|
|
83
|
+
if (options.dryRun) {
|
|
84
|
+
console.log('(dry run - no changes will be made)');
|
|
85
|
+
}
|
|
86
|
+
console.log('');
|
|
87
|
+
}
|
|
88
|
+
const results = uninstall(installOptions);
|
|
89
|
+
printResults(results, 'uninstall', options.quiet);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
// Normal install
|
|
93
|
+
if (!options.quiet) {
|
|
94
|
+
console.log('Installing Agent Relay MCP server...');
|
|
95
|
+
if (options.dryRun) {
|
|
96
|
+
console.log('(dry run - no changes will be made)');
|
|
97
|
+
}
|
|
98
|
+
console.log('');
|
|
99
|
+
}
|
|
100
|
+
const results = install(installOptions);
|
|
101
|
+
printResults(results, 'install', options.quiet);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Print results and exit with appropriate code
|
|
105
|
+
*/
|
|
106
|
+
function printResults(results, action, quiet) {
|
|
107
|
+
const successful = results.filter(r => r.success);
|
|
108
|
+
const failed = results.filter(r => !r.success);
|
|
109
|
+
if (!quiet) {
|
|
110
|
+
for (const result of results) {
|
|
111
|
+
console.log(formatResult(result, action));
|
|
112
|
+
}
|
|
113
|
+
console.log('');
|
|
114
|
+
}
|
|
115
|
+
// Handle no editors detected case
|
|
116
|
+
if (results.length === 1 && results[0].editor === 'none') {
|
|
117
|
+
console.log('No supported editors detected.');
|
|
118
|
+
console.log('');
|
|
119
|
+
console.log('Supported editors: claude, claude-code, cursor, vscode, windsurf, zed');
|
|
120
|
+
console.log('');
|
|
121
|
+
console.log('Specify manually with: npx @agent-relay/mcp install --editor <name>');
|
|
122
|
+
process.exit(1);
|
|
123
|
+
}
|
|
124
|
+
// Summary
|
|
125
|
+
if (!quiet) {
|
|
126
|
+
if (failed.length === 0) {
|
|
127
|
+
const actionWord = action === 'install' ? 'Installation' : 'Removal';
|
|
128
|
+
console.log(`${actionWord} complete!`);
|
|
129
|
+
if (action === 'install') {
|
|
130
|
+
console.log('');
|
|
131
|
+
console.log('The relay tools will be available when you start your editor.');
|
|
132
|
+
console.log('Make sure the relay daemon is running: agent-relay up');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
console.log(`Completed with ${failed.length} error(s).`);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// Exit with error if any failures
|
|
140
|
+
if (failed.length > 0) {
|
|
141
|
+
process.exit(1);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Validate editor argument
|
|
146
|
+
*/
|
|
147
|
+
export function validateEditor(editor) {
|
|
148
|
+
const supported = listSupportedEditors();
|
|
149
|
+
return supported.some(e => e.key === editor);
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Get list of valid editor keys for CLI help
|
|
153
|
+
*/
|
|
154
|
+
export function getValidEditors() {
|
|
155
|
+
return listSupportedEditors().map(e => e.key);
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=install-cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-cli.js","sourceRoot":"","sources":["../src/install-cli.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,OAAO,EACP,SAAS,EACT,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,GAGf,MAAM,cAAc,CAAC;AAmBtB;;GAEG;AACH,SAAS,YAAY,CAAC,MAAqB,EAAE,MAA+B;IAC1E,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClD,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAEvD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,UAAU,GAAG,WAAW,EAAE,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,UAAmB;IACrC,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAE1C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAE3D,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAExD,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;QAChD,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;QAElD,uBAAuB;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,EAAE,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ;IACf,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,sBAAsB,EAAE,CAAC;IAE1C,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,SAAS,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,UAAsB,EAAE;IACjD,gBAAgB;IAChB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,QAAQ,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,MAAM,cAAc,GAAmB;QACrC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACtD,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;IAEF,qBAAqB;IACrB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YACtD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;YACrD,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;QAC1C,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACpD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACxC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,OAAwB,EACxB,MAA+B,EAC/B,KAAe;IAEf,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAE/C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,kCAAkC;IAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,UAAU;IACV,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,YAAY,CAAC,CAAC;YAEvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;gBAC7E,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IACzC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Installation System
|
|
3
|
+
*
|
|
4
|
+
* Auto-configures MCP server for different AI editors:
|
|
5
|
+
* - Claude Desktop / Claude Code
|
|
6
|
+
* - Cursor
|
|
7
|
+
* - VS Code (with MCP extension)
|
|
8
|
+
* - Windsurf
|
|
9
|
+
* - Zed
|
|
10
|
+
* - Gemini CLI
|
|
11
|
+
* - OpenCode
|
|
12
|
+
* - Droid (Factory)
|
|
13
|
+
*/
|
|
14
|
+
export interface EditorConfig {
|
|
15
|
+
/** Display name for the editor */
|
|
16
|
+
name: string;
|
|
17
|
+
/** Path to the config file */
|
|
18
|
+
configPath: string;
|
|
19
|
+
/** Key in config object for MCP servers */
|
|
20
|
+
configKey: string;
|
|
21
|
+
/** Config file format */
|
|
22
|
+
format: 'json' | 'jsonc';
|
|
23
|
+
/** Whether this editor supports project-local MCP configs */
|
|
24
|
+
supportsLocal?: boolean;
|
|
25
|
+
}
|
|
26
|
+
export interface InstallOptions {
|
|
27
|
+
/** Specific editor to install for (auto-detect if not specified) */
|
|
28
|
+
editor?: string;
|
|
29
|
+
/** Install globally vs project-local */
|
|
30
|
+
global?: boolean;
|
|
31
|
+
/** Project directory for local install */
|
|
32
|
+
projectDir?: string;
|
|
33
|
+
/** Dry run - print what would be done without making changes */
|
|
34
|
+
dryRun?: boolean;
|
|
35
|
+
/** Custom server command (defaults to npx) */
|
|
36
|
+
command?: string;
|
|
37
|
+
/** Custom server args */
|
|
38
|
+
args?: string[];
|
|
39
|
+
}
|
|
40
|
+
export interface InstallResult {
|
|
41
|
+
editor: string;
|
|
42
|
+
configPath: string;
|
|
43
|
+
success: boolean;
|
|
44
|
+
error?: string;
|
|
45
|
+
/** Whether config was created vs updated */
|
|
46
|
+
created: boolean;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* MCP server configuration that gets added to editor configs
|
|
50
|
+
*/
|
|
51
|
+
export interface McpServerConfig {
|
|
52
|
+
command: string;
|
|
53
|
+
args: string[];
|
|
54
|
+
env?: Record<string, string>;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Default MCP server configuration
|
|
58
|
+
*/
|
|
59
|
+
export declare function getDefaultServerConfig(): McpServerConfig;
|
|
60
|
+
/**
|
|
61
|
+
* Detect which editors are installed by checking for their config directories
|
|
62
|
+
*/
|
|
63
|
+
export declare function detectInstalledEditors(): string[];
|
|
64
|
+
/**
|
|
65
|
+
* Get editor configuration by key
|
|
66
|
+
*/
|
|
67
|
+
export declare function getEditorConfig(editorKey: string): EditorConfig | undefined;
|
|
68
|
+
/**
|
|
69
|
+
* List all supported editors
|
|
70
|
+
*/
|
|
71
|
+
export declare function listSupportedEditors(): Array<{
|
|
72
|
+
key: string;
|
|
73
|
+
name: string;
|
|
74
|
+
}>;
|
|
75
|
+
/**
|
|
76
|
+
* Install MCP server configuration for a specific editor
|
|
77
|
+
*/
|
|
78
|
+
export declare function installForEditor(editorKey: string, options?: InstallOptions): InstallResult;
|
|
79
|
+
/**
|
|
80
|
+
* Uninstall MCP server configuration from an editor
|
|
81
|
+
*/
|
|
82
|
+
export declare function uninstallFromEditor(editorKey: string, options?: {
|
|
83
|
+
global?: boolean;
|
|
84
|
+
projectDir?: string;
|
|
85
|
+
}): InstallResult;
|
|
86
|
+
/**
|
|
87
|
+
* Check if agent-relay MCP server is installed for an editor
|
|
88
|
+
*/
|
|
89
|
+
export declare function isInstalledFor(editorKey: string, options?: {
|
|
90
|
+
global?: boolean;
|
|
91
|
+
projectDir?: string;
|
|
92
|
+
}): boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Install MCP server for all detected editors (or specified editors)
|
|
95
|
+
*/
|
|
96
|
+
export declare function install(options?: InstallOptions): InstallResult[];
|
|
97
|
+
/**
|
|
98
|
+
* Uninstall MCP server from all detected editors (or specified editors)
|
|
99
|
+
*/
|
|
100
|
+
export declare function uninstall(options?: InstallOptions): InstallResult[];
|
|
101
|
+
//# sourceMappingURL=install.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAuFD;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,CAKxD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAYjD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAG3E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,KAAK,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAM3E;AAyFD;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,cAAmB,GAC3B,aAAa,CA0Ef;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACtD,aAAa,CAyDf;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACtD,OAAO,CA2BT;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,GAAE,cAAmB,GAAG,aAAa,EAAE,CAyBrE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,cAAmB,GAAG,aAAa,EAAE,CAiBvE"}
|