Skip to content

Commit ef4d32f

Browse files
committed
feat: add node-fetch-cache dependency for configurable fetch pattern
- Add [email protected] for memory and disk caching backends - Update yarn.lock with new dependency resolution - Enables standardized HTTP request caching across MCP servers
1 parent 9cda6cf commit ef4d32f

File tree

2 files changed

+136
-3
lines changed

2 files changed

+136
-3
lines changed

package.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
"version": "1.0.0",
44
"description": "Template for building MCP (Model Context Protocol) servers with TypeScript",
55
"main": "dist/index.js",
6-
"bin": {
7-
"mcp-template": "dist/index.js"
8-
},
6+
"bin": "dist/index.js",
97
"type": "module",
108
"scripts": {
119
"build": "tsc",
@@ -43,6 +41,7 @@
4341
"@modelcontextprotocol/sdk": "^1.12.1",
4442
"chalk": "^5.4.1",
4543
"commander": "^14.0.0",
44+
"node-fetch-cache": "^5.0.2",
4645
"ora": "^8.2.0",
4746
"zod": "^3.25.51",
4847
"zod-to-json-schema": "^3.24.1"

yarn.lock

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -892,6 +892,15 @@ __metadata:
892892
languageName: node
893893
linkType: hard
894894

895+
"@npmcli/fs@npm:^3.1.0":
896+
version: 3.1.1
897+
resolution: "@npmcli/fs@npm:3.1.1"
898+
dependencies:
899+
semver: "npm:^7.3.5"
900+
checksum: 10c0/c37a5b4842bfdece3d14dfdb054f73fe15ed2d3da61b34ff76629fb5b1731647c49166fd2a8bf8b56fcfa51200382385ea8909a3cbecdad612310c114d3f6c99
901+
languageName: node
902+
linkType: hard
903+
895904
"@npmcli/fs@npm:^4.0.0":
896905
version: 4.0.0
897906
resolution: "@npmcli/fs@npm:4.0.0"
@@ -1955,6 +1964,26 @@ __metadata:
19551964
languageName: node
19561965
linkType: hard
19571966

1967+
"cacache@npm:^18.0.4":
1968+
version: 18.0.4
1969+
resolution: "cacache@npm:18.0.4"
1970+
dependencies:
1971+
"@npmcli/fs": "npm:^3.1.0"
1972+
fs-minipass: "npm:^3.0.0"
1973+
glob: "npm:^10.2.2"
1974+
lru-cache: "npm:^10.0.1"
1975+
minipass: "npm:^7.0.3"
1976+
minipass-collect: "npm:^2.0.1"
1977+
minipass-flush: "npm:^1.0.5"
1978+
minipass-pipeline: "npm:^1.2.4"
1979+
p-map: "npm:^4.0.0"
1980+
ssri: "npm:^10.0.0"
1981+
tar: "npm:^6.1.11"
1982+
unique-filename: "npm:^3.0.0"
1983+
checksum: 10c0/6c055bafed9de4f3dcc64ac3dc7dd24e863210902b7c470eb9ce55a806309b3efff78033e3d8b4f7dcc5d467f2db43c6a2857aaaf26f0094b8a351d44c42179f
1984+
languageName: node
1985+
linkType: hard
1986+
19581987
"cacache@npm:^19.0.0, cacache@npm:^19.0.1":
19591988
version: 19.0.1
19601989
resolution: "cacache@npm:19.0.1"
@@ -2446,6 +2475,13 @@ __metadata:
24462475
languageName: node
24472476
linkType: hard
24482477

2478+
"data-uri-to-buffer@npm:^4.0.0":
2479+
version: 4.0.1
2480+
resolution: "data-uri-to-buffer@npm:4.0.1"
2481+
checksum: 10c0/20a6b93107597530d71d4cb285acee17f66bcdfc03fd81040921a81252f19db27588d87fc8fc69e1950c55cfb0bf8ae40d0e5e21d907230813eb5d5a7f9eb45b
2482+
languageName: node
2483+
linkType: hard
2484+
24492485
"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.1, debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:^4.3.6, debug@npm:^4.3.7, debug@npm:^4.4.0":
24502486
version: 4.4.1
24512487
resolution: "debug@npm:4.4.1"
@@ -3059,6 +3095,16 @@ __metadata:
30593095
languageName: node
30603096
linkType: hard
30613097

3098+
"fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4":
3099+
version: 3.2.0
3100+
resolution: "fetch-blob@npm:3.2.0"
3101+
dependencies:
3102+
node-domexception: "npm:^1.0.0"
3103+
web-streams-polyfill: "npm:^3.0.3"
3104+
checksum: 10c0/60054bf47bfa10fb0ba6cb7742acec2f37c1f56344f79a70bb8b1c48d77675927c720ff3191fa546410a0442c998d27ab05e9144c32d530d8a52fbe68f843b69
3105+
languageName: node
3106+
linkType: hard
3107+
30623108
"figures@npm:^2.0.0":
30633109
version: 2.0.0
30643110
resolution: "figures@npm:2.0.0"
@@ -3147,6 +3193,22 @@ __metadata:
31473193
languageName: node
31483194
linkType: hard
31493195

3196+
"formdata-node@npm:^6.0.3":
3197+
version: 6.0.3
3198+
resolution: "formdata-node@npm:6.0.3"
3199+
checksum: 10c0/9b8ada280c7b0c7314bed57fd50b3562f8825bd3ede6f6231b1bc7683b649e7f3ffb7b0f13d8e9e6cae8042ea21eaf497a7c676d2fe6dc63daefefaea4838240
3200+
languageName: node
3201+
linkType: hard
3202+
3203+
"formdata-polyfill@npm:^4.0.10":
3204+
version: 4.0.10
3205+
resolution: "formdata-polyfill@npm:4.0.10"
3206+
dependencies:
3207+
fetch-blob: "npm:^3.1.2"
3208+
checksum: 10c0/5392ec484f9ce0d5e0d52fb5a78e7486637d516179b0eb84d81389d7eccf9ca2f663079da56f761355c0a65792810e3b345dc24db9a8bbbcf24ef3c8c88570c6
3209+
languageName: node
3210+
linkType: hard
3211+
31503212
"forwarded@npm:0.2.0":
31513213
version: 0.2.0
31523214
resolution: "forwarded@npm:0.2.0"
@@ -4217,6 +4279,13 @@ __metadata:
42174279
languageName: node
42184280
linkType: hard
42194281

4282+
"locko@npm:^1.1.0":
4283+
version: 1.1.0
4284+
resolution: "locko@npm:1.1.0"
4285+
checksum: 10c0/de7508f8e22517d3095ccd391a5abc4e3fc12600d73e44832b550c1d9a7a5109c90d1a96d3cffc6d70fb788c05ad6a1f806301e1a5b2e16fc461f746ef4e7e58
4286+
languageName: node
4287+
linkType: hard
4288+
42204289
"lodash-es@npm:^4.17.21":
42214290
version: 4.17.21
42224291
resolution: "lodash-es@npm:4.17.21"
@@ -4444,6 +4513,7 @@ __metadata:
44444513
chalk: "npm:^5.4.1"
44454514
commander: "npm:^14.0.0"
44464515
husky: "npm:^9.1.7"
4516+
node-fetch-cache: "npm:^5.0.2"
44474517
ora: "npm:^8.2.0"
44484518
semantic-release: "npm:^24.2.5"
44494519
tsx: "npm:^4.19.2"
@@ -4736,6 +4806,13 @@ __metadata:
47364806
languageName: node
47374807
linkType: hard
47384808

4809+
"node-domexception@npm:^1.0.0":
4810+
version: 1.0.0
4811+
resolution: "node-domexception@npm:1.0.0"
4812+
checksum: 10c0/5e5d63cda29856402df9472335af4bb13875e1927ad3be861dc5ebde38917aecbf9ae337923777af52a48c426b70148815e890a5d72760f1b4d758cc671b1a2b
4813+
languageName: node
4814+
linkType: hard
4815+
47394816
"node-emoji@npm:^2.2.0":
47404817
version: 2.2.0
47414818
resolution: "node-emoji@npm:2.2.0"
@@ -4748,6 +4825,29 @@ __metadata:
47484825
languageName: node
47494826
linkType: hard
47504827

4828+
"node-fetch-cache@npm:^5.0.2":
4829+
version: 5.0.2
4830+
resolution: "node-fetch-cache@npm:5.0.2"
4831+
dependencies:
4832+
cacache: "npm:^18.0.4"
4833+
formdata-node: "npm:^6.0.3"
4834+
locko: "npm:^1.1.0"
4835+
node-fetch: "npm:3.3.2"
4836+
checksum: 10c0/7e175414cab31c7cac1484cb6716326fae16906b45dd9987f5b491e8d35ca5db2e7d4324caed4a0ac0052f1544e4e785f3e5e115e63d06e3c19c352c37c8483e
4837+
languageName: node
4838+
linkType: hard
4839+
4840+
"node-fetch@npm:3.3.2":
4841+
version: 3.3.2
4842+
resolution: "node-fetch@npm:3.3.2"
4843+
dependencies:
4844+
data-uri-to-buffer: "npm:^4.0.0"
4845+
fetch-blob: "npm:^3.1.4"
4846+
formdata-polyfill: "npm:^4.0.10"
4847+
checksum: 10c0/f3d5e56190562221398c9f5750198b34cf6113aa304e34ee97c94fd300ec578b25b2c2906edba922050fce983338fde0d5d34fcb0fc3336ade5bd0e429ad7538
4848+
languageName: node
4849+
linkType: hard
4850+
47514851
"node-gyp@npm:^11.0.0, node-gyp@npm:latest":
47524852
version: 11.2.0
47534853
resolution: "node-gyp@npm:11.2.0"
@@ -6215,6 +6315,15 @@ __metadata:
62156315
languageName: node
62166316
linkType: hard
62176317

6318+
"ssri@npm:^10.0.0":
6319+
version: 10.0.6
6320+
resolution: "ssri@npm:10.0.6"
6321+
dependencies:
6322+
minipass: "npm:^7.0.3"
6323+
checksum: 10c0/e5a1e23a4057a86a97971465418f22ea89bd439ac36ade88812dd920e4e61873e8abd6a9b72a03a67ef50faa00a2daf1ab745c5a15b46d03e0544a0296354227
6324+
languageName: node
6325+
linkType: hard
6326+
62186327
"ssri@npm:^12.0.0":
62196328
version: 12.0.0
62206329
resolution: "ssri@npm:12.0.0"
@@ -6723,6 +6832,15 @@ __metadata:
67236832
languageName: node
67246833
linkType: hard
67256834

6835+
"unique-filename@npm:^3.0.0":
6836+
version: 3.0.0
6837+
resolution: "unique-filename@npm:3.0.0"
6838+
dependencies:
6839+
unique-slug: "npm:^4.0.0"
6840+
checksum: 10c0/6363e40b2fa758eb5ec5e21b3c7fb83e5da8dcfbd866cc0c199d5534c42f03b9ea9ab069769cc388e1d7ab93b4eeef28ef506ab5f18d910ef29617715101884f
6841+
languageName: node
6842+
linkType: hard
6843+
67266844
"unique-filename@npm:^4.0.0":
67276845
version: 4.0.0
67286846
resolution: "unique-filename@npm:4.0.0"
@@ -6732,6 +6850,15 @@ __metadata:
67326850
languageName: node
67336851
linkType: hard
67346852

6853+
"unique-slug@npm:^4.0.0":
6854+
version: 4.0.0
6855+
resolution: "unique-slug@npm:4.0.0"
6856+
dependencies:
6857+
imurmurhash: "npm:^0.1.4"
6858+
checksum: 10c0/cb811d9d54eb5821b81b18205750be84cb015c20a4a44280794e915f5a0a70223ce39066781a354e872df3572e8155c228f43ff0cce94c7cbf4da2cc7cbdd635
6859+
languageName: node
6860+
linkType: hard
6861+
67356862
"unique-slug@npm:^5.0.0":
67366863
version: 5.0.0
67376864
resolution: "unique-slug@npm:5.0.0"
@@ -6933,6 +7060,13 @@ __metadata:
69337060
languageName: node
69347061
linkType: hard
69357062

7063+
"web-streams-polyfill@npm:^3.0.3":
7064+
version: 3.3.3
7065+
resolution: "web-streams-polyfill@npm:3.3.3"
7066+
checksum: 10c0/64e855c47f6c8330b5436147db1c75cb7e7474d924166800e8e2aab5eb6c76aac4981a84261dd2982b3e754490900b99791c80ae1407a9fa0dcff74f82ea3a7f
7067+
languageName: node
7068+
linkType: hard
7069+
69367070
"which@npm:^2.0.1":
69377071
version: 2.0.2
69387072
resolution: "which@npm:2.0.2"

0 commit comments

Comments
 (0)