mcpman 2.0.0 → 2.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 +21 -21
- package/README.md +45 -540
- package/dist/chunk-6X6Q6UZC.js +0 -0
- package/dist/chunk-CYYW35D2.js +0 -0
- package/dist/chunk-HQO4AO6B.js +0 -0
- package/dist/chunk-K3NQKI34.js +0 -0
- package/dist/chunk-NFQMBLT3.js +0 -0
- package/dist/chunk-RGKHLY5G.js +0 -0
- package/dist/client-detector-TSWWOALP.js +0 -0
- package/dist/index.cjs +1018 -642
- package/dist/index.js +1013 -641
- package/dist/lockfile-MDGG6WI3.js +0 -0
- package/dist/trust-scorer-PEAFSMFK.js +0 -0
- package/dist/vault-service-O2I2K3DX.js +0 -0
- package/package.json +10 -3
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 tranhoangtu-it
|
|
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.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 tranhoangtu-it
|
|
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.
|
package/README.md
CHANGED
|
@@ -1,540 +1,45 @@
|
|
|
1
|
-
# mcpman
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
mcpman install @
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
| Codex CLI | TOML (`~/.codex/config.toml`) |
|
|
47
|
-
| OpenCode | TOML (`~/.config/opencode/config.toml`) |
|
|
48
|
-
| Continue | JSON (`~/.continue/config.json`) |
|
|
49
|
-
| Zed | JSON (`~/.config/zed/settings.json`) |
|
|
50
|
-
|
|
51
|
-
### Core
|
|
52
|
-
|
|
53
|
-
- **Registry-aware** — resolves packages from npm, Smithery, GitHub URLs, or the mcpman community registry
|
|
54
|
-
- **Lockfile** — tracks installed servers in `mcpman.lock` for reproducible setups
|
|
55
|
-
- **Health checks** — verifies runtimes, env vars, and server connectivity with `doctor`
|
|
56
|
-
- **Encrypted secrets** — store API keys in an AES-256 encrypted vault; auto-loads during install
|
|
57
|
-
- **Config sync** — keep server configs consistent across all your AI clients; `--remove` cleans extras
|
|
58
|
-
- **Security audit** — scan servers for vulnerabilities with trust scoring; `--fix` auto-updates vulnerable packages
|
|
59
|
-
- **Auto-update** — get notified when server updates are available
|
|
60
|
-
- **No extra daemon** — pure CLI, works anywhere Node >= 20 runs
|
|
61
|
-
|
|
62
|
-
### v2.0 Platform Features
|
|
63
|
-
|
|
64
|
-
- **MCP Server Mode** — run mcpman itself as an MCP server with `mcpman serve`. AI agents can install, audit, and manage servers via 8 programmatic tools. Write protection via `--allow-write`
|
|
65
|
-
- **Remote Transport** — connect to remote MCP servers over HTTP and SSE. No local process needed
|
|
66
|
-
- **Registry & Publishing** — publish your own MCP servers with `mcpman publish`. Community registry powered by Cloudflare D1/R2
|
|
67
|
-
- **Embedded Dashboard** — launch a local HTTP dashboard with `mcpman dashboard`. REST API with server status, audit results, and health checks
|
|
68
|
-
- **Team Collaboration** — share server configs with `mcpman team`. RBAC roles (admin/maintainer/viewer), shared vault, and audit logging
|
|
69
|
-
- **Skills & Agent Sync** — universal `mcpman-skill.json` spec with format adapters for all 10 clients. Sync agent configs, tools, models, and rules across editors
|
|
70
|
-
|
|
71
|
-
### Developer Tools
|
|
72
|
-
|
|
73
|
-
- **Server scaffolding** — `mcpman create` with Node.js and Python templates
|
|
74
|
-
- **Local dev linking** — `mcpman link` registers a local directory (like `npm link`)
|
|
75
|
-
- **File watching** — `mcpman watch` auto-restarts on source changes
|
|
76
|
-
- **Plugin system** — extend mcpman with npm-based plugins for custom registries
|
|
77
|
-
- **Shell completions** — tab-complete commands and server names in bash, zsh, and fish
|
|
78
|
-
- **Export/Import** — portable JSON bundles for full config migration
|
|
79
|
-
- **Profiles** — save/restore named server configurations
|
|
80
|
-
- **Auto-rollback** — snapshots before every lockfile write, restore with `mcpman rollback`
|
|
81
|
-
|
|
82
|
-
---
|
|
83
|
-
|
|
84
|
-
## Commands
|
|
85
|
-
|
|
86
|
-
### Core
|
|
87
|
-
|
|
88
|
-
#### `install <server>`
|
|
89
|
-
|
|
90
|
-
Install an MCP server and register it with your AI clients.
|
|
91
|
-
|
|
92
|
-
```sh
|
|
93
|
-
mcpman install @modelcontextprotocol/server-filesystem
|
|
94
|
-
mcpman install my-smithery-server
|
|
95
|
-
mcpman install https://github.com/owner/repo
|
|
96
|
-
mcpman install mcpman:my-registry-server # from mcpman registry
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
**Options:**
|
|
100
|
-
- `--client <type>` — target a specific client (`claude-desktop`, `cursor`, `vscode`, `windsurf`, `claude-code`, `roo-code`, `codex-cli`, `opencode`, `continue`, `zed`)
|
|
101
|
-
- `--json` — output machine-readable JSON
|
|
102
|
-
|
|
103
|
-
#### `list`
|
|
104
|
-
|
|
105
|
-
List all installed MCP servers.
|
|
106
|
-
|
|
107
|
-
```sh
|
|
108
|
-
mcpman list
|
|
109
|
-
mcpman list --client cursor
|
|
110
|
-
mcpman list --json
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
#### `remove <server>`
|
|
114
|
-
|
|
115
|
-
Uninstall a server and deregister it from all clients.
|
|
116
|
-
|
|
117
|
-
```sh
|
|
118
|
-
mcpman remove @modelcontextprotocol/server-filesystem
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
#### `update [server]`
|
|
122
|
-
|
|
123
|
-
Check for and apply updates to installed MCP servers.
|
|
124
|
-
|
|
125
|
-
```sh
|
|
126
|
-
mcpman update # update all servers
|
|
127
|
-
mcpman update my-server # update specific server
|
|
128
|
-
mcpman update --check # check only, don't apply
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
#### `upgrade`
|
|
132
|
-
|
|
133
|
-
Upgrade mcpman itself to the latest version.
|
|
134
|
-
|
|
135
|
-
```sh
|
|
136
|
-
mcpman upgrade
|
|
137
|
-
mcpman upgrade --check
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### Health & Diagnostics
|
|
141
|
-
|
|
142
|
-
#### `doctor [server]`
|
|
143
|
-
|
|
144
|
-
Run health diagnostics on all installed servers or a specific one.
|
|
145
|
-
|
|
146
|
-
```sh
|
|
147
|
-
mcpman doctor
|
|
148
|
-
mcpman doctor my-server
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
Checks: runtime availability, required env vars, process spawn, and MCP handshake.
|
|
152
|
-
|
|
153
|
-
#### `test [server]`
|
|
154
|
-
|
|
155
|
-
Validate MCP server connectivity via JSON-RPC `initialize` + `tools/list`.
|
|
156
|
-
|
|
157
|
-
```sh
|
|
158
|
-
mcpman test my-server
|
|
159
|
-
mcpman test --all
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
#### `validate [--client <name>]`
|
|
163
|
-
|
|
164
|
-
Validate lockfile schema and client config JSON for correctness.
|
|
165
|
-
|
|
166
|
-
```sh
|
|
167
|
-
mcpman validate
|
|
168
|
-
mcpman validate --client cursor
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
#### `status [--server <name>]`
|
|
172
|
-
|
|
173
|
-
Show live process status of all installed MCP servers.
|
|
174
|
-
|
|
175
|
-
```sh
|
|
176
|
-
mcpman status
|
|
177
|
-
mcpman status --server my-server --json
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
#### `bench <server>`
|
|
181
|
-
|
|
182
|
-
Benchmark MCP server latency with JSON-RPC initialize calls.
|
|
183
|
-
|
|
184
|
-
```sh
|
|
185
|
-
mcpman bench my-server --runs 10
|
|
186
|
-
mcpman bench my-server --timeout 5000
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
### Config & Sync
|
|
190
|
-
|
|
191
|
-
#### `init`
|
|
192
|
-
|
|
193
|
-
Scaffold an `mcpman.lock` file in the current directory.
|
|
194
|
-
|
|
195
|
-
```sh
|
|
196
|
-
mcpman init
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
#### `config <set|get|list|reset>`
|
|
200
|
-
|
|
201
|
-
Manage persistent CLI configuration.
|
|
202
|
-
|
|
203
|
-
```sh
|
|
204
|
-
mcpman config set defaultClient cursor
|
|
205
|
-
mcpman config get defaultClient
|
|
206
|
-
mcpman config list
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
#### `sync`
|
|
210
|
-
|
|
211
|
-
Sync MCP server configs across all detected AI clients.
|
|
212
|
-
|
|
213
|
-
```sh
|
|
214
|
-
mcpman sync
|
|
215
|
-
mcpman sync --dry-run
|
|
216
|
-
mcpman sync --source cursor --remove
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
#### `diff <client-a> <client-b>`
|
|
220
|
-
|
|
221
|
-
Show visual diff of MCP server configs between two clients.
|
|
222
|
-
|
|
223
|
-
```sh
|
|
224
|
-
mcpman diff claude-desktop cursor
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
#### `secrets`
|
|
228
|
-
|
|
229
|
-
Manage encrypted secrets (AES-256-CBC vault).
|
|
230
|
-
|
|
231
|
-
```sh
|
|
232
|
-
mcpman secrets set my-server OPENAI_API_KEY=sk-...
|
|
233
|
-
mcpman secrets list my-server
|
|
234
|
-
mcpman secrets remove my-server OPENAI_API_KEY
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
#### `env <set|get|list|del|clear>`
|
|
238
|
-
|
|
239
|
-
Manage per-server environment variables (non-sensitive defaults).
|
|
240
|
-
|
|
241
|
-
```sh
|
|
242
|
-
mcpman env set my-server API_URL=https://api.example.com
|
|
243
|
-
mcpman env list my-server
|
|
244
|
-
```
|
|
245
|
-
|
|
246
|
-
### Discovery & Registry
|
|
247
|
-
|
|
248
|
-
#### `search <query>`
|
|
249
|
-
|
|
250
|
-
Search for MCP servers on npm, Smithery, or mcpman registry.
|
|
251
|
-
|
|
252
|
-
```sh
|
|
253
|
-
mcpman search filesystem
|
|
254
|
-
mcpman search brave --registry smithery
|
|
255
|
-
mcpman search tools --all --limit 10
|
|
256
|
-
```
|
|
257
|
-
|
|
258
|
-
#### `info <server>`
|
|
259
|
-
|
|
260
|
-
Show detailed information about an MCP server package.
|
|
261
|
-
|
|
262
|
-
```sh
|
|
263
|
-
mcpman info @modelcontextprotocol/server-filesystem
|
|
264
|
-
```
|
|
265
|
-
|
|
266
|
-
#### `why <server>`
|
|
267
|
-
|
|
268
|
-
Show why a server is installed — source, clients, profiles, env vars.
|
|
269
|
-
|
|
270
|
-
```sh
|
|
271
|
-
mcpman why my-server
|
|
272
|
-
```
|
|
273
|
-
|
|
274
|
-
#### `publish`
|
|
275
|
-
|
|
276
|
-
Publish an MCP server to the mcpman community registry.
|
|
277
|
-
|
|
278
|
-
```sh
|
|
279
|
-
mcpman publish
|
|
280
|
-
mcpman publish --registry https://registry.mcpman.dev
|
|
281
|
-
```
|
|
282
|
-
|
|
283
|
-
#### `registry <list|add|remove|set-default>`
|
|
284
|
-
|
|
285
|
-
Manage custom registry URLs.
|
|
286
|
-
|
|
287
|
-
```sh
|
|
288
|
-
mcpman registry list
|
|
289
|
-
mcpman registry add corp https://mcp.corp.com/api
|
|
290
|
-
mcpman registry remove corp
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
### Server Authoring
|
|
294
|
-
|
|
295
|
-
#### `create [name]`
|
|
296
|
-
|
|
297
|
-
Scaffold a new MCP server project.
|
|
298
|
-
|
|
299
|
-
```sh
|
|
300
|
-
mcpman create my-server
|
|
301
|
-
mcpman create my-server --runtime python
|
|
302
|
-
```
|
|
303
|
-
|
|
304
|
-
#### `link [dir]`
|
|
305
|
-
|
|
306
|
-
Register a local MCP server directory with AI clients.
|
|
307
|
-
|
|
308
|
-
```sh
|
|
309
|
-
mcpman link .
|
|
310
|
-
mcpman link ./path/to/server --client cursor
|
|
311
|
-
```
|
|
312
|
-
|
|
313
|
-
#### `watch <server>`
|
|
314
|
-
|
|
315
|
-
Watch source files and auto-restart on changes.
|
|
316
|
-
|
|
317
|
-
```sh
|
|
318
|
-
mcpman watch my-server
|
|
319
|
-
mcpman watch my-server --ext ts,js --delay 500
|
|
320
|
-
```
|
|
321
|
-
|
|
322
|
-
### Organization
|
|
323
|
-
|
|
324
|
-
#### `profiles <create|switch|list|delete>`
|
|
325
|
-
|
|
326
|
-
Manage named server configuration profiles.
|
|
327
|
-
|
|
328
|
-
```sh
|
|
329
|
-
mcpman profiles create dev
|
|
330
|
-
mcpman profiles switch dev
|
|
331
|
-
mcpman profiles list
|
|
332
|
-
```
|
|
333
|
-
|
|
334
|
-
#### `group <add|rm|list|delete|install|run>`
|
|
335
|
-
|
|
336
|
-
Organize servers into named groups for batch operations.
|
|
337
|
-
|
|
338
|
-
```sh
|
|
339
|
-
mcpman group add work server-a server-b
|
|
340
|
-
mcpman group install work
|
|
341
|
-
mcpman group run work
|
|
342
|
-
```
|
|
343
|
-
|
|
344
|
-
#### `pin <server> [version]`
|
|
345
|
-
|
|
346
|
-
Pin a server to a specific version.
|
|
347
|
-
|
|
348
|
-
```sh
|
|
349
|
-
mcpman pin my-server 1.2.3
|
|
350
|
-
mcpman pin --unpin my-server
|
|
351
|
-
```
|
|
352
|
-
|
|
353
|
-
#### `rollback [index]`
|
|
354
|
-
|
|
355
|
-
Restore a previous lockfile state from automatic snapshots.
|
|
356
|
-
|
|
357
|
-
```sh
|
|
358
|
-
mcpman rollback --list
|
|
359
|
-
mcpman rollback 0
|
|
360
|
-
```
|
|
361
|
-
|
|
362
|
-
#### `template <save|apply|list|delete>`
|
|
363
|
-
|
|
364
|
-
Save and share install templates.
|
|
365
|
-
|
|
366
|
-
```sh
|
|
367
|
-
mcpman template save myteam
|
|
368
|
-
mcpman template apply myteam
|
|
369
|
-
```
|
|
370
|
-
|
|
371
|
-
### Platform (v2.0)
|
|
372
|
-
|
|
373
|
-
#### `serve`
|
|
374
|
-
|
|
375
|
-
Run mcpman as an MCP server over stdio transport. AI agents can call 8 tools: `mcpman_install`, `mcpman_remove`, `mcpman_list`, `mcpman_search`, `mcpman_audit`, `mcpman_doctor`, `mcpman_info`, `mcpman_status`.
|
|
376
|
-
|
|
377
|
-
```sh
|
|
378
|
-
mcpman serve # read-only mode (default)
|
|
379
|
-
mcpman serve --allow-write # enable destructive operations (remove)
|
|
380
|
-
```
|
|
381
|
-
|
|
382
|
-
#### `dashboard`
|
|
383
|
-
|
|
384
|
-
Launch an embedded HTTP dashboard with REST API endpoints.
|
|
385
|
-
|
|
386
|
-
```sh
|
|
387
|
-
mcpman dashboard
|
|
388
|
-
mcpman dashboard --port 8080
|
|
389
|
-
```
|
|
390
|
-
|
|
391
|
-
Endpoints: `/api/servers`, `/api/clients`, `/api/health`, `/api/audit`, `/api/status`.
|
|
392
|
-
|
|
393
|
-
#### `team <init|add|remove|list|sync|share|audit>`
|
|
394
|
-
|
|
395
|
-
Team collaboration with RBAC and shared vault.
|
|
396
|
-
|
|
397
|
-
```sh
|
|
398
|
-
mcpman team init my-team # initialize team config
|
|
399
|
-
mcpman team add alice --role maintainer # add team member
|
|
400
|
-
mcpman team sync # sync team servers to local
|
|
401
|
-
mcpman team share # share local servers to team
|
|
402
|
-
mcpman team audit # view audit log
|
|
403
|
-
```
|
|
404
|
-
|
|
405
|
-
Roles: `admin` (full access), `maintainer` (add/remove servers), `viewer` (read-only).
|
|
406
|
-
|
|
407
|
-
#### `skill <install|list|remove|sync|export>`
|
|
408
|
-
|
|
409
|
-
Manage MCP server skills with universal spec.
|
|
410
|
-
|
|
411
|
-
```sh
|
|
412
|
-
mcpman skill install ./my-skill
|
|
413
|
-
mcpman skill sync --client claude-code
|
|
414
|
-
mcpman skill list
|
|
415
|
-
```
|
|
416
|
-
|
|
417
|
-
#### `agent <sync|list|export>`
|
|
418
|
-
|
|
419
|
-
Sync agent configurations across AI clients.
|
|
420
|
-
|
|
421
|
-
```sh
|
|
422
|
-
mcpman agent sync
|
|
423
|
-
mcpman agent list
|
|
424
|
-
mcpman agent export --client roo-code
|
|
425
|
-
```
|
|
426
|
-
|
|
427
|
-
### Operations
|
|
428
|
-
|
|
429
|
-
#### `run <server>`
|
|
430
|
-
|
|
431
|
-
Launch an MCP server with vault secrets auto-injected.
|
|
432
|
-
|
|
433
|
-
```sh
|
|
434
|
-
mcpman run my-server
|
|
435
|
-
```
|
|
436
|
-
|
|
437
|
-
#### `logs <server>`
|
|
438
|
-
|
|
439
|
-
Stream stdout/stderr from an MCP server process.
|
|
440
|
-
|
|
441
|
-
```sh
|
|
442
|
-
mcpman logs my-server
|
|
443
|
-
```
|
|
444
|
-
|
|
445
|
-
#### `notify <add|remove|list|test>`
|
|
446
|
-
|
|
447
|
-
Configure webhook and shell hooks for lifecycle events.
|
|
448
|
-
|
|
449
|
-
```sh
|
|
450
|
-
mcpman notify add --event install --webhook https://hooks.example.com/mcp
|
|
451
|
-
mcpman notify test install
|
|
452
|
-
```
|
|
453
|
-
|
|
454
|
-
#### `replay [index]`
|
|
455
|
-
|
|
456
|
-
Re-run previous CLI commands from history.
|
|
457
|
-
|
|
458
|
-
```sh
|
|
459
|
-
mcpman replay --list
|
|
460
|
-
mcpman replay 0
|
|
461
|
-
```
|
|
462
|
-
|
|
463
|
-
#### `alias <add|remove|list>`
|
|
464
|
-
|
|
465
|
-
Create command shorthands.
|
|
466
|
-
|
|
467
|
-
```sh
|
|
468
|
-
mcpman alias add fs "install @modelcontextprotocol/server-filesystem"
|
|
469
|
-
```
|
|
470
|
-
|
|
471
|
-
#### `export / import`
|
|
472
|
-
|
|
473
|
-
Portable config migration.
|
|
474
|
-
|
|
475
|
-
```sh
|
|
476
|
-
mcpman export backup.json
|
|
477
|
-
mcpman import backup.json --dry-run
|
|
478
|
-
```
|
|
479
|
-
|
|
480
|
-
#### `plugin <add|remove|list>`
|
|
481
|
-
|
|
482
|
-
Manage npm-based plugins for custom registries.
|
|
483
|
-
|
|
484
|
-
```sh
|
|
485
|
-
mcpman plugin add mcpman-plugin-ollama
|
|
486
|
-
```
|
|
487
|
-
|
|
488
|
-
#### `completions <bash|zsh|fish|install>`
|
|
489
|
-
|
|
490
|
-
Generate shell completion scripts.
|
|
491
|
-
|
|
492
|
-
```sh
|
|
493
|
-
source <(mcpman completions bash)
|
|
494
|
-
mcpman completions install
|
|
495
|
-
```
|
|
496
|
-
|
|
497
|
-
---
|
|
498
|
-
|
|
499
|
-
## Comparison
|
|
500
|
-
|
|
501
|
-
| Feature | mcpman | Smithery CLI | mcpm.sh |
|
|
502
|
-
|---|---|---|---|
|
|
503
|
-
| Multi-client support | **All 10 clients** | Claude only | Limited |
|
|
504
|
-
| Lockfile | `mcpman.lock` | None | None |
|
|
505
|
-
| Health checks | Runtime + env + process | None | None |
|
|
506
|
-
| Encrypted secrets | AES-256 vault | None | None |
|
|
507
|
-
| Config sync | Cross-client + `--remove` | None | None |
|
|
508
|
-
| Security audit | Trust scoring + auto-fix | None | None |
|
|
509
|
-
| MCP server mode | 8 tools via stdio | None | None |
|
|
510
|
-
| Remote transport | HTTP + SSE | None | None |
|
|
511
|
-
| Dashboard | REST API + UI | None | None |
|
|
512
|
-
| Team collaboration | RBAC + audit log | None | None |
|
|
513
|
-
| Skills & agent sync | Universal spec + adapters | None | None |
|
|
514
|
-
| Registry & publishing | npm + Smithery + GitHub + mcpman | Smithery only | npm only |
|
|
515
|
-
| Plugin system | npm-based custom registries | None | None |
|
|
516
|
-
| Server scaffolding | Node + Python templates | None | None |
|
|
517
|
-
| Local dev linking | `link` (like npm link) | None | None |
|
|
518
|
-
| File watching | `watch` (auto-restart) | None | None |
|
|
519
|
-
| Shell completions | bash + zsh + fish | None | None |
|
|
520
|
-
| Export/Import | Full config portability | None | None |
|
|
521
|
-
| Profiles | Named config switching | None | None |
|
|
522
|
-
| Auto-rollback | Snapshot + restore | None | None |
|
|
523
|
-
| CI/CD | GitHub Actions | None | None |
|
|
524
|
-
|
|
525
|
-
---
|
|
526
|
-
|
|
527
|
-
## Contributing
|
|
528
|
-
|
|
529
|
-
1. Fork the repo and create a feature branch
|
|
530
|
-
2. `npm install` to install dependencies
|
|
531
|
-
3. `npm test` to run the test suite (1,123 tests)
|
|
532
|
-
4. Submit a pull request with a clear description
|
|
533
|
-
|
|
534
|
-
Please follow the existing code style (TypeScript strict, ES modules).
|
|
535
|
-
|
|
536
|
-
---
|
|
537
|
-
|
|
538
|
-
## License
|
|
539
|
-
|
|
540
|
-
MIT
|
|
1
|
+
# mcpman
|
|
2
|
+
|
|
3
|
+

|
|
4
|
+

|
|
5
|
+
|
|
6
|
+
Universal package manager for Model Context Protocol (MCP) servers. Install and manage MCP servers across 10+ AI clients from a single CLI.
|
|
7
|
+
|
|
8
|
+
## Supported Clients
|
|
9
|
+
|
|
10
|
+
- Claude Desktop
|
|
11
|
+
- VS Code (Copilot)
|
|
12
|
+
- Cursor
|
|
13
|
+
- Windsurf
|
|
14
|
+
- Zed
|
|
15
|
+
- And more...
|
|
16
|
+
|
|
17
|
+
## Installation
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npm install -g mcpman
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Usage
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Install an MCP server
|
|
27
|
+
mcpman install @anthropic/mcp-server-filesystem
|
|
28
|
+
|
|
29
|
+
# List installed servers
|
|
30
|
+
mcpman list
|
|
31
|
+
|
|
32
|
+
# Remove a server
|
|
33
|
+
mcpman remove @anthropic/mcp-server-filesystem
|
|
34
|
+
|
|
35
|
+
# Show status
|
|
36
|
+
mcpman status
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## How It Works
|
|
40
|
+
|
|
41
|
+
mcpman detects installed AI clients and manages their MCP server configurations automatically. It handles config file locations, server startup, and version management for each client.
|
|
42
|
+
|
|
43
|
+
## License
|
|
44
|
+
|
|
45
|
+
See [LICENSE](./LICENSE) for details.
|
package/dist/chunk-6X6Q6UZC.js
CHANGED
|
File without changes
|
package/dist/chunk-CYYW35D2.js
CHANGED
|
File without changes
|
package/dist/chunk-HQO4AO6B.js
CHANGED
|
File without changes
|
package/dist/chunk-K3NQKI34.js
CHANGED
|
File without changes
|
package/dist/chunk-NFQMBLT3.js
CHANGED
|
File without changes
|
package/dist/chunk-RGKHLY5G.js
CHANGED
|
File without changes
|
|
File without changes
|