@wuyax/mcps 0.1.0-beta.2 → 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.
@@ -0,0 +1,128 @@
1
+ type McpAgentType = "amp" | "antigravity" | "antigravity-cli" | "augment" | "cline" | "cline-cli" | "claude-code" | "claude-desktop" | "codex" | "cursor" | "gemini-cli" | "grok" | "goose" | "github-copilot-cli" | "kimi-code-cli" | "kiro" | "opencode" | "pi" | "qoder" | "qwen-code" | "trae" | "vscode" | "zed";
2
+ type McpConfigFormat = "json" | "jsonc" | "yaml" | "toml";
3
+ type McpTransportType = "http" | "sse" | "stdio";
4
+ type McpRemoteTransport = "http" | "sse";
5
+ type McpSourceType = "remote" | "package" | "command";
6
+ interface ParsedMcpSource {
7
+ type: McpSourceType;
8
+ value: string;
9
+ inferredName: string;
10
+ }
11
+ interface McpServerConfig {
12
+ type?: McpRemoteTransport;
13
+ url?: string;
14
+ headers?: Record<string, string>;
15
+ command?: string;
16
+ args?: string[];
17
+ env?: Record<string, string>;
18
+ }
19
+ type ServerConfigDialectName = "vscode" | "augment" | "amp" | "trae" | "grok" | "cline" | "goose" | "kimi-code" | "kiro" | "opencode" | "pi" | "qwen-code" | "zed";
20
+ interface ServerConfigDialectOptions {
21
+ stdioTransport?: "none" | "type-stdio" | "transport-stdio" | "type-local";
22
+ remoteTransport?: "type-http-sse" | "sse-only-type" | "sse-only-transport" | "none" | "streamable-http" | "streamableHttp" | "streamable_http" | "remote-type" | "qwen";
23
+ commandArray?: boolean;
24
+ commandField?: string;
25
+ argsField?: string;
26
+ envField?: string;
27
+ urlField?: string;
28
+ defaultEnvEmpty?: boolean;
29
+ defaultHeadersEmpty?: boolean;
30
+ extraFields?: Record<string, unknown>;
31
+ includeServerName?: boolean;
32
+ timeoutSeconds?: number;
33
+ }
34
+ type ServerConfigDialect = ServerConfigDialectName | ServerConfigDialectOptions;
35
+ interface McpAgentConfig {
36
+ name: McpAgentType;
37
+ displayName: string;
38
+ globalConfigPath: string;
39
+ projectConfigPath?: string;
40
+ configKey: string;
41
+ projectConfigKey?: string;
42
+ format: McpConfigFormat;
43
+ supportedTransports: readonly McpTransportType[];
44
+ unsupportedTransportMessage?: string;
45
+ detectGlobalInstall: () => boolean;
46
+ detectProjectInstall?: (cwd: string) => boolean;
47
+ resolveConfigPath?: (options: {
48
+ global: boolean;
49
+ cwd: string;
50
+ }) => string;
51
+ transformDialect?: ServerConfigDialect;
52
+ transformConfig?: (serverName: string, config: McpServerConfig, context: {
53
+ global: boolean;
54
+ }) => unknown;
55
+ }
56
+ interface McpScopeOptions {
57
+ global?: boolean;
58
+ cwd?: string;
59
+ }
60
+ interface InstallMcpServerOptions extends McpScopeOptions {
61
+ source: string;
62
+ name?: string;
63
+ agents?: McpAgentType[];
64
+ args?: string[];
65
+ transport?: McpRemoteTransport;
66
+ headers?: Record<string, string>;
67
+ env?: Record<string, string>;
68
+ }
69
+ interface McpInstallResultForAgent {
70
+ agent: McpAgentType;
71
+ success: boolean;
72
+ path: string;
73
+ coConfiguredAgents?: McpAgentType[];
74
+ error?: string;
75
+ }
76
+ interface InstallMcpServerResult {
77
+ serverName: string;
78
+ config: McpServerConfig;
79
+ results: McpInstallResultForAgent[];
80
+ }
81
+ interface ListedMcpServer {
82
+ serverName: string;
83
+ agent: McpAgentType;
84
+ path: string;
85
+ config: unknown;
86
+ serverConfig?: McpServerConfig;
87
+ }
88
+ interface GroupedInstalledServer {
89
+ serverName: string;
90
+ agents: McpAgentType[];
91
+ paths: string[];
92
+ config: McpServerConfig;
93
+ hasDivergence?: boolean;
94
+ }
95
+ interface RemoveMcpServerOptions extends McpScopeOptions {
96
+ name: string;
97
+ agents?: McpAgentType[];
98
+ }
99
+ interface RemoveMcpServerResult {
100
+ agent: McpAgentType;
101
+ path: string;
102
+ removed: boolean;
103
+ coAffectedAgents?: McpAgentType[];
104
+ error?: string;
105
+ }
106
+ interface ConfigCluster {
107
+ configPath: string;
108
+ configKey: string;
109
+ targetAgents: McpAgentType[];
110
+ coHostedAgents: McpAgentType[];
111
+ }
112
+ interface UpdateMcpServerOptions extends McpScopeOptions {
113
+ serverName: string;
114
+ config: McpServerConfig;
115
+ previousConfig?: McpServerConfig;
116
+ agents?: McpAgentType[];
117
+ }
118
+ interface UpdateMcpServerResult {
119
+ serverName: string;
120
+ config: McpServerConfig;
121
+ results: McpInstallResultForAgent[];
122
+ incompatible: {
123
+ agent: McpAgentType;
124
+ reason: string;
125
+ }[];
126
+ }
127
+
128
+ export type { ConfigCluster as C, GroupedInstalledServer as G, InstallMcpServerOptions as I, ListedMcpServer as L, McpAgentType as M, ParsedMcpSource as P, RemoveMcpServerResult as R, ServerConfigDialect as S, UpdateMcpServerOptions as U, McpScopeOptions as a, McpServerConfig as b, McpRemoteTransport as c, McpAgentConfig as d, McpTransportType as e, McpConfigFormat as f, McpInstallResultForAgent as g, InstallMcpServerResult as h, UpdateMcpServerResult as i, RemoveMcpServerOptions as j, McpSourceType as k, ServerConfigDialectName as l, ServerConfigDialectOptions as m };
package/package.json CHANGED
@@ -1,7 +1,32 @@
1
1
  {
2
2
  "name": "@wuyax/mcps",
3
- "version": "0.1.0-beta.2",
3
+ "version": "0.1.0",
4
4
  "description": "Cross-platform MCP (Model Context Protocol) server installer and manager for AI coding agents",
5
+ "author": "wuyax",
6
+ "license": "MIT",
7
+ "packageManager": "pnpm@10.27.0",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/wuyax/mcps.git"
11
+ },
12
+ "homepage": "https://github.com/wuyax/mcps#readme",
13
+ "bugs": {
14
+ "url": "https://github.com/wuyax/mcps/issues"
15
+ },
16
+ "keywords": [
17
+ "mcp",
18
+ "model-context-protocol",
19
+ "ai-agents",
20
+ "claude-code",
21
+ "cursor",
22
+ "vscode",
23
+ "copilot",
24
+ "installer",
25
+ "cli"
26
+ ],
27
+ "engines": {
28
+ "node": ">=22.0.0"
29
+ },
5
30
  "type": "module",
6
31
  "main": "dist/index.js",
7
32
  "module": "dist/index.js",
@@ -18,6 +43,11 @@
18
43
  "types": "./dist/index.d.ts",
19
44
  "import": "./dist/index.js",
20
45
  "require": "./dist/index.cjs"
46
+ },
47
+ "./interactive": {
48
+ "types": "./dist/interactive.d.ts",
49
+ "import": "./dist/interactive.js",
50
+ "require": "./dist/interactive.cjs"
21
51
  }
22
52
  },
23
53
  "scripts": {
@@ -29,7 +59,9 @@
29
59
  },
30
60
  "dependencies": {
31
61
  "@iarna/toml": "^2.2.5",
62
+ "@inquirer/core": "^12.0.3",
32
63
  "@inquirer/prompts": "^8.7.1",
64
+ "@inquirer/type": "^4.1.1",
33
65
  "commander": "^14.0.0",
34
66
  "jsonc-parser": "^3.3.1",
35
67
  "picocolors": "^1.1.1",