mcp-compression-proxy 1.0.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/CHANGELOG.md +97 -0
- package/LICENSE +21 -0
- package/README.md +842 -0
- package/dist/cli/commands.d.ts +25 -0
- package/dist/cli/commands.js +152 -0
- package/dist/cli/daemon.d.ts +4 -0
- package/dist/cli/daemon.js +336 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.js +269 -0
- package/dist/cli/ipc-client.d.ts +11 -0
- package/dist/cli/ipc-client.js +81 -0
- package/dist/cli/payload-interceptor.d.ts +6 -0
- package/dist/cli/payload-interceptor.js +49 -0
- package/dist/config/loader.d.ts +53 -0
- package/dist/config/loader.js +332 -0
- package/dist/config/schema.d.ts +164 -0
- package/dist/config/schema.js +127 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +821 -0
- package/dist/mcp/client-manager.d.ts +65 -0
- package/dist/mcp/client-manager.js +197 -0
- package/dist/services/compression-cache.d.ts +112 -0
- package/dist/services/compression-cache.js +238 -0
- package/dist/services/compression-persistence.d.ts +36 -0
- package/dist/services/compression-persistence.js +111 -0
- package/dist/services/compression-sampler.d.ts +89 -0
- package/dist/services/compression-sampler.js +171 -0
- package/dist/services/session-manager.d.ts +64 -0
- package/dist/services/session-manager.js +160 -0
- package/dist/services/stats-service.d.ts +101 -0
- package/dist/services/stats-service.js +246 -0
- package/dist/types/compression.d.ts +38 -0
- package/dist/types/compression.js +5 -0
- package/dist/types/index.d.ts +108 -0
- package/dist/types/index.js +2 -0
- package/dist/version.d.ts +11 -0
- package/dist/version.js +11 -0
- package/package.json +110 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
4
|
+
|
|
5
|
+
## 1.0.0 (2026-08-23)
|
|
6
|
+
|
|
7
|
+
### ⚠ BREAKING CHANGES
|
|
8
|
+
|
|
9
|
+
* Node.js 18 and 20 are no longer supported. The minimum
|
|
10
|
+
supported version is now Node.js 22.
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
* add comprehensive e2e testing with real LLM ([#11](https://github.com/kdpa-llc/mcp-compression-proxy/issues/11)) ([d123f45](https://github.com/kdpa-llc/mcp-compression-proxy/commit/d123f450d00c65391f97e614cf5b6255e3818ff2))
|
|
15
|
+
* Add configurable timeout for MCP server initialization ([#13](https://github.com/kdpa-llc/mcp-compression-proxy/issues/13)) ([6b54407](https://github.com/kdpa-llc/mcp-compression-proxy/commit/6b54407c8a460817f5b19ea11b69ce9735a75d12))
|
|
16
|
+
* add JSON-based configuration system with environment variable expansion ([e35e2dd](https://github.com/kdpa-llc/mcp-compression-proxy/commit/e35e2dd36304f6a0d4a4a95e74ad29fba6d882ab)), closes [#3](https://github.com/kdpa-llc/mcp-compression-proxy/issues/3) [#3](https://github.com/kdpa-llc/mcp-compression-proxy/issues/3)
|
|
17
|
+
* add mcp-cli lazy loading with progressive tool discovery ([dff1e03](https://github.com/kdpa-llc/mcp-compression-proxy/commit/dff1e0343aa01123f439439b5effbdea8e050f5d))
|
|
18
|
+
* add persistent compression storage ([5be2116](https://github.com/kdpa-llc/mcp-compression-proxy/commit/5be21166aee7e5a29f25784697b1e6774998c589)), closes [#2](https://github.com/kdpa-llc/mcp-compression-proxy/issues/2)
|
|
19
|
+
* add stats management tool ([d2c6b84](https://github.com/kdpa-llc/mcp-compression-proxy/commit/d2c6b84e59e25b750f9365971daa38d565485d5a))
|
|
20
|
+
* add uncompressed-tool fallback behavior and live coverage stats ([0930cab](https://github.com/kdpa-llc/mcp-compression-proxy/commit/0930cabf34e7bf9888c4187eb74d5e0ca19995f6)), closes [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#16](https://github.com/kdpa-llc/mcp-compression-proxy/issues/16)
|
|
21
|
+
* compress tool descriptions using the host LLM via MCP sampling ([6ab69d5](https://github.com/kdpa-llc/mcp-compression-proxy/commit/6ab69d53881972c04f258a85b807d0a6656e1721))
|
|
22
|
+
* disambiguate excludeTools and noCompressTools features ([2f1bc3d](https://github.com/kdpa-llc/mcp-compression-proxy/commit/2f1bc3d511d37c1059721fde601a70f8d464e90a))
|
|
23
|
+
* implement tool-level ignore patterns with wildcard support ([73b6f47](https://github.com/kdpa-llc/mcp-compression-proxy/commit/73b6f478117898b6b74cdfe08fbfa56bf632f668))
|
|
24
|
+
* require Node.js 22 or newer ([8172c9f](https://github.com/kdpa-llc/mcp-compression-proxy/commit/8172c9fde3f38ae3726c06ca970847c5c9c51a59))
|
|
25
|
+
* surface live compression stats and fix tool call regressions ([f3f17b0](https://github.com/kdpa-llc/mcp-compression-proxy/commit/f3f17b08686603a46109cbaa8ceef34558a96867)), closes [#16](https://github.com/kdpa-llc/mcp-compression-proxy/issues/16) [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#16](https://github.com/kdpa-llc/mcp-compression-proxy/issues/16)
|
|
26
|
+
* warn on unresolved env vars, cache config reads, add new options ([6e574a5](https://github.com/kdpa-llc/mcp-compression-proxy/commit/6e574a5f5f4c5417792605b3b2a6dcf56ad6b9c2)), closes [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#24](https://github.com/kdpa-llc/mcp-compression-proxy/issues/24)
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* correct npm package name to match repository ([96b08a3](https://github.com/kdpa-llc/mcp-compression-proxy/commit/96b08a3272bced8108af1f3756516a7925435c33))
|
|
31
|
+
* **deps:** pin the changelog preset so release notes can render ([#39](https://github.com/kdpa-llc/mcp-compression-proxy/issues/39)) ([29b1fe9](https://github.com/kdpa-llc/mcp-compression-proxy/commit/29b1fe95af38bd6373ced6ce6651992bb48341d0))
|
|
32
|
+
* **deps:** regenerate the lockfile so npm ci can install it ([a14a9d9](https://github.com/kdpa-llc/mcp-compression-proxy/commit/a14a9d9db66415c7b72e43c4b9cb3942085a1ddd))
|
|
33
|
+
* **deps:** resolve all production dependency advisories ([701ddc1](https://github.com/kdpa-llc/mcp-compression-proxy/commit/701ddc189a89ae0479d3233a350d8744ffeff838))
|
|
34
|
+
* **deps:** upgrade pino to v10 ([eecf9a6](https://github.com/kdpa-llc/mcp-compression-proxy/commit/eecf9a606cc6b7c04f03109bd8451ec31401d655))
|
|
35
|
+
* improve MCP connection closing ([86ef4b2](https://github.com/kdpa-llc/mcp-compression-proxy/commit/86ef4b25084f4979d7ee22bd2a8b9c90e77240c9))
|
|
36
|
+
* pass environment variables through to backend MCP servers ([b2fabc1](https://github.com/kdpa-llc/mcp-compression-proxy/commit/b2fabc11b2631bdae7b0808024589386fe206a1b))
|
|
37
|
+
* remove legacy 'disabled' field to standardize server configuration ([fb6f826](https://github.com/kdpa-llc/mcp-compression-proxy/commit/fb6f826ef014e73fe461f676ebe0d0a7db2d161e)), closes [#19](https://github.com/kdpa-llc/mcp-compression-proxy/issues/19)
|
|
38
|
+
* remove the broken TypeScript config migration path ([c4c7de1](https://github.com/kdpa-llc/mcp-compression-proxy/commit/c4c7de159a464ff2ec5ea15e9aad70ba7cfa7058))
|
|
39
|
+
* report the real package version over MCP instead of a stale literal ([2bc4bb0](https://github.com/kdpa-llc/mcp-compression-proxy/commit/2bc4bb0b45ed2d812a51261f03389d4035e868f3))
|
|
40
|
+
* stop `mcp-cli daemon start` from hanging, and document the CLI ([94a7f78](https://github.com/kdpa-llc/mcp-compression-proxy/commit/94a7f783dd4a0904c0e6776a5c6a4bbcc10d5238))
|
|
41
|
+
* stop the session cleanup timer from holding the event loop open ([68892ed](https://github.com/kdpa-llc/mcp-compression-proxy/commit/68892ed1bcffcc7fca38e14591c5ff4ad8b4b8d2)), closes [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#16](https://github.com/kdpa-llc/mcp-compression-proxy/issues/16)
|
|
42
|
+
* stop writing intercepted payloads to predictable temp paths ([2331006](https://github.com/kdpa-llc/mcp-compression-proxy/commit/2331006ec91cb043e0cd9fb01ee51a27f6b5920c))
|
|
43
|
+
* update all references from mcp-aggregator to mcp-compression-proxy ([9735e67](https://github.com/kdpa-llc/mcp-compression-proxy/commit/9735e672b595cefdb46039523e8d2de3c61f2192))
|
|
44
|
+
* update all references from mcp-tool-aggregator to mcp-compression-proxy ([daf7b53](https://github.com/kdpa-llc/mcp-compression-proxy/commit/daf7b53f191486b7f0fc853ea94b632e115f06f6))
|
|
45
|
+
|
|
46
|
+
### Documentation
|
|
47
|
+
|
|
48
|
+
* add complementary projects section for cross-adoption ([cd6b977](https://github.com/kdpa-llc/mcp-compression-proxy/commit/cd6b977b2efed34977ed05216887a84a9b0d80a9))
|
|
49
|
+
* add missing badges and support section to README ([334cb97](https://github.com/kdpa-llc/mcp-compression-proxy/commit/334cb97880bc72c853d454f888b8228151e88cb8))
|
|
50
|
+
* comprehensive README polish for clarity and accuracy ([#12](https://github.com/kdpa-llc/mcp-compression-proxy/issues/12)) ([c771bd5](https://github.com/kdpa-llc/mcp-compression-proxy/commit/c771bd5cf6b5b29f90f532aa07a197aa46980d6e))
|
|
51
|
+
* correct the test documentation, which had drifted badly ([0a5bbf4](https://github.com/kdpa-llc/mcp-compression-proxy/commit/0a5bbf4a02c9d99a61a156120be9b25a0bcd2014))
|
|
52
|
+
* document the new config options and fix npm test on a fresh clone ([e604195](https://github.com/kdpa-llc/mcp-compression-proxy/commit/e604195e483f7071b453359aaaea16c08cde7a4e)), closes [#15](https://github.com/kdpa-llc/mcp-compression-proxy/issues/15) [#24](https://github.com/kdpa-llc/mcp-compression-proxy/issues/24)
|
|
53
|
+
* improve documentation and add automation infrastructure ([f9a4e92](https://github.com/kdpa-llc/mcp-compression-proxy/commit/f9a4e9235728ca9e6153fcff66d2328528e54141))
|
|
54
|
+
* prepare the changelog and publishing guide for the first release ([f6a30fb](https://github.com/kdpa-llc/mcp-compression-proxy/commit/f6a30fb6822523c1a675c23f1e6c3e321e75b32f))
|
|
55
|
+
* use the project's actual name consistently ([99fc78c](https://github.com/kdpa-llc/mcp-compression-proxy/commit/99fc78c27ac8f7b364afe8a39983c04cb87cac35))
|
|
56
|
+
|
|
57
|
+
### Code Refactoring
|
|
58
|
+
|
|
59
|
+
* eliminate the remaining `any` and non-null assertions ([341ccdb](https://github.com/kdpa-llc/mcp-compression-proxy/commit/341ccdb6b511fc06278f3f04c75b846d25fc866a))
|
|
60
|
+
* give the daemon status field a name that matches its value ([77bc8a9](https://github.com/kdpa-llc/mcp-compression-proxy/commit/77bc8a91eb4a2c48d8df47b77d5a07ffd7c9822d))
|
|
61
|
+
* simplify cache path to ~/.mcp-compression-proxy/cache.json ([5819a69](https://github.com/kdpa-llc/mcp-compression-proxy/commit/5819a694bab1be181cba634680aa1f2cff8bf87f))
|
|
62
|
+
* use repo-specific cache directory ([7c043ae](https://github.com/kdpa-llc/mcp-compression-proxy/commit/7c043aea343d11bd5651a93ff12c10e5657f395f))
|
|
63
|
+
|
|
64
|
+
### Build System
|
|
65
|
+
|
|
66
|
+
* add complete automation infrastructure and community files ([e716371](https://github.com/kdpa-llc/mcp-compression-proxy/commit/e716371a0b0fc54b5eafb44471e2f3ae533b9894))
|
|
67
|
+
* configure npm publishing setup ([537006b](https://github.com/kdpa-llc/mcp-compression-proxy/commit/537006b5c230ac37044f7d1beef823f5a22c7b9e))
|
|
68
|
+
|
|
69
|
+
<!--
|
|
70
|
+
This file is generated by @semantic-release/changelog from here down.
|
|
71
|
+
New releases are inserted directly below this comment. Do not add entries by
|
|
72
|
+
hand - write a conventional commit and the release notes follow from it.
|
|
73
|
+
|
|
74
|
+
Everything below documents the pre-release history, which predates the
|
|
75
|
+
automated pipeline and was maintained in Keep a Changelog format.
|
|
76
|
+
-->
|
|
77
|
+
|
|
78
|
+
## 0.1.0 (2025-11-18)
|
|
79
|
+
|
|
80
|
+
Pre-release development. Never published to npm.
|
|
81
|
+
|
|
82
|
+
### Added
|
|
83
|
+
- Multi-server MCP aggregation with tool name prefixing
|
|
84
|
+
- LLM-based tool description compression (50-80% token reduction)
|
|
85
|
+
- Session-based expansion state management
|
|
86
|
+
- Persistent compression cache with disk storage
|
|
87
|
+
- Management tools API for compression workflow
|
|
88
|
+
- JSON configuration system with environment variable expansion
|
|
89
|
+
- Comprehensive test suite with unit, integration, and E2E tests
|
|
90
|
+
- Real LLM integration testing with Ollama
|
|
91
|
+
- Tool filtering with exclude and noCompress patterns
|
|
92
|
+
- noCompress tool filtering with wildcard pattern support
|
|
93
|
+
- File-based tool compression workflow (outputFile/inputFile parameters)
|
|
94
|
+
- Display-only bypass for noCompress patterns while maintaining cache efficiency
|
|
95
|
+
- Session auto-expiration and cleanup
|
|
96
|
+
- Error handling and server health monitoring
|
|
97
|
+
- Performance optimization with parallel tool loading
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 kdpa-llc
|
|
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.
|