Skip to content

Commit d23449b

Browse files
committed
feat: add shared dependency management configuration
1 parent ab4cde7 commit d23449b

File tree

2 files changed

+127
-0
lines changed

2 files changed

+127
-0
lines changed

shared/dependencies/core.json

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"description": "Core shared dependencies for all MCP servers",
3+
"version": "2.0.0",
4+
"dependencies": {
5+
"node-fetch-cache": "^3.0.0",
6+
"zod": "^3.22.0",
7+
"zod-to-json-schema": "^3.21.0"
8+
},
9+
"devDependencies": {
10+
"@types/node": "^20.0.0",
11+
"typescript": "^5.0.0",
12+
"vitest": "^1.0.0",
13+
"@vitest/coverage-v8": "^1.0.0",
14+
"biome": "^1.4.0",
15+
"husky": "^8.0.0",
16+
"commitlint": "^18.0.0",
17+
"@commitlint/config-conventional": "^18.0.0"
18+
},
19+
"peerDependencies": {
20+
"@modelcontextprotocol/sdk": "^0.4.0"
21+
},
22+
"sync_rules": {
23+
"dependencies": {
24+
"node-fetch-cache": "always_sync",
25+
"zod": "always_sync",
26+
"zod-to-json-schema": "always_sync"
27+
},
28+
"devDependencies": {
29+
"@types/node": "sync_major_minor",
30+
"typescript": "sync_major_minor",
31+
"vitest": "always_sync",
32+
"@vitest/coverage-v8": "always_sync",
33+
"biome": "always_sync",
34+
"husky": "always_sync",
35+
"commitlint": "always_sync",
36+
"@commitlint/config-conventional": "always_sync"
37+
}
38+
}
39+
}

shared/dependencies/optional.json

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
{
2+
"description": "Optional shared dependencies by category",
3+
"version": "2.0.0",
4+
"categories": {
5+
"web_apis": {
6+
"description": "For servers that interact with web APIs",
7+
"dependencies": {
8+
"cheerio": "^1.0.0",
9+
"jsdom": "^23.0.0",
10+
"xml2js": "^0.6.0"
11+
},
12+
"usage_examples": [
13+
"Web scraping servers",
14+
"HTML parsing servers",
15+
"API integration servers"
16+
]
17+
},
18+
"cli_support": {
19+
"description": "For servers that support CLI mode",
20+
"dependencies": {
21+
"commander": "^11.0.0",
22+
"chalk": "^5.0.0",
23+
"ora": "^7.0.0",
24+
"inquirer": "^9.0.0"
25+
},
26+
"usage_examples": [
27+
"Dual MCP/CLI servers",
28+
"Interactive setup tools",
29+
"Command-line utilities"
30+
]
31+
},
32+
"data_processing": {
33+
"description": "For servers that process data formats",
34+
"dependencies": {
35+
"csv-parser": "^3.0.0",
36+
"xlsx": "^0.18.0",
37+
"yaml": "^2.0.0"
38+
},
39+
"usage_examples": [
40+
"Data import/export servers",
41+
"File processing servers",
42+
"Configuration servers"
43+
]
44+
},
45+
"database": {
46+
"description": "For servers that interact with databases",
47+
"dependencies": {
48+
"sqlite3": "^5.0.0",
49+
"better-sqlite3": "^9.0.0"
50+
},
51+
"usage_examples": [
52+
"Local database servers",
53+
"Caching servers",
54+
"Persistence servers"
55+
]
56+
},
57+
"crypto": {
58+
"description": "For servers that need cryptographic functions",
59+
"dependencies": {
60+
"crypto-js": "^4.0.0",
61+
"bcrypt": "^5.0.0",
62+
"jsonwebtoken": "^9.0.0"
63+
},
64+
"usage_examples": [
65+
"Authentication servers",
66+
"Security servers",
67+
"Token management servers"
68+
]
69+
},
70+
"date_time": {
71+
"description": "For servers that work with dates and times",
72+
"dependencies": {
73+
"date-fns": "^2.0.0",
74+
"luxon": "^3.0.0"
75+
},
76+
"usage_examples": [
77+
"Calendar servers",
78+
"Scheduling servers",
79+
"Time tracking servers"
80+
]
81+
}
82+
},
83+
"sync_rules": {
84+
"detection": "auto_detect_usage",
85+
"strategy": "opt_in",
86+
"update_policy": "notify_only"
87+
}
88+
}

0 commit comments

Comments
 (0)