Releases: karashiiro/my-cool-proxy
Releases · karashiiro/my-cool-proxy
v1.6.2
What's Changed
- Fix release workflow by @karashiiro in #88
- fix: prevent gateway crash from orphan rejections in the Lua bridge by @teancom in #89
- v1.6.2 by @karashiiro in #91
Full Changelog: v1.6.1...v1.6.2
v1.6.1
What's Changed
- fix: prevent FK constraint error in storeInitializeRequest on restart by @teancom in #86
- v1.6.1 by @karashiiro in #87
Full Changelog: v1.6.0...v1.6.1
v1.6.0
Major Changes
- Large tool results are now automatically offloaded to the database with schema summaries. When an
executescript produces a result larger than the configurableresultSizeThreshold(default 50KB), the gateway replaces it with a compact, type-specific summary (item structure for arrays, key listing for objects) and an execution ID. Agents retrieve and filter the full data in a follow-up script via_gateway.get_result(). This prevents massive tool results from blowing out the context window. - Upstream stdio servers now inherit the client's working directory. In HTTP mode, the gateway resolves the connected client's roots before spawning upstream stdio processes, so servers like Playwright operate in the client's project directory instead of the gateway's.
Other Changes
- All unbounded async operations now have timeouts. Session restoration (30s), HTTP client connect (30s), pagination page fetches (10s), and notification re-list handlers (15s) will fail with a
TimeoutErrorinstead of hanging indefinitely when an upstream server becomes unresponsive. - Session data and tool inspection states now survive gateway restarts. Previously, session capabilities were deleted on disconnect, which broke session restoration and caused a cascade-deletion of event history.
tool-detailsis now backed by the database instead of an in-memory map, so agents don't need to re-inspect tools after a gateway restart. - Added
--pathsCLI flag to print platform-specific config, data, and log directory paths. - Skill resources now include MCP annotations (
audience,priority,lastModified) and asizefield in their metadata. - New sessions are now blocked during HTTP shutdown to prevent race conditions.
- Database schema now uses
PRAGMA user_versionfor versioning with automatic migration (v0 -> v1). Cascading deletions are now correctly handled with a foreign key constraint. - Updated documentation.
New Contributors
Full Changelog: v1.5.4...v1.6.0
v1.5.4
What's Changed
- chore: fix publish provenance and add registry metadata by @karashiiro in #75
- feat: v1.5.4 by @karashiiro in #76
Full Changelog: v1.5.3...v1.5.4
v1.5.0
Major Changes
- Added execution dashboard for recording past script executions, so you can identify inefficient tool use patterns over time. This can be enabled with the
dashboardconfiguration option. - Implemented support for additional MCP features:
- Completions: Proxied directly and exposed as
_gateway.completeto agents. - Progress: Proxied in aggregate; if multiple tools have progress notifications, then the
executetool will total the progress values of all tools together.
- Completions: Proxied directly and exposed as
Other Changes
- Removed resource namespacing to avoid breaking compatibility with VS Code. Resources are proxied through without modifying URIs at all, and the gateway makes a best-effort attempt to map each resource back to its originating server.
- Using a tool in
executewithout first callingtool-detailsorinspect-tool-resultfor that tool is now an error, forcing agents to avoid hallucinating input/output shapes. - Deeply-nested
outputSchemashapes are now recursively described intool-details. - A subset of resources/resource templates from each server are now included in the server instructions to encourage agents to use them more proactively.
- Added a
_gateway.update_skillfunction to allow agents to update skill files without completely rewriting them. - Session data is now deleted after a configurable period of time to avoid blowing out the database (default: 7 days).
v1.4.0
Major Changes
- Roots are now supported if the connected client exposes them.
roots/listrequests are proxied from the server to the client, and roots are used to configure the working directory of sampling agents when the ACP sampling shim is in use. - Less-used tools have been pushed into the Lua interpreter to avoid polluting the context and to disambiguate them from native agent tools. This has some positive side-effects, such as Claude Code reusing its existing
ReadMcpResourcetool for loading skills more consistently (given that it has it, it should use it, I believe). The following tools have been moved under a built-in_gatewaytable inside the Lua interpreter:read-resourceis now_gateway.read_resourcelist-resourcesis now_gateway.list_resourcesinvoke-gateway-skill-scriptis now_gateway.invoke_skill_scriptwrite-gateway-skillis now_gateway.write_skillsummary-statsis now_gateway.summary_stats
- Prompts are now queryable by agents via
list_promptsandget_promptfunctions under the built-in_gatewaytable.
Other Changes
- Improved error hinting so that agents recover from failures more reliably.
- Fixed an issue where Lua code could extract result data from a tool result even if it had failed, swallowing some errors.
- Added skill count to the stats tool.
- Improved output schema formatting in
tool-detailswhen exposed by tools. Now formats response fields recursively, so models have more context about what data a tool makes available. - Rewrote
executetool description to get rid of several guidelines in favor of reusable examples.
Full Changelog: v1.3.1...v1.4.0
v1.3.1
What's Changed
- fix: make pino a non-dev dependency by @karashiiro in #43
Full Changelog: v1.3.0...v1.3.1
v1.3.0
Major Features
- Sampling is now supported via a shim over ACP (refer to the config docs). This means that sampling can be enabled even in clients that do not natively support it. The proxy also supports the new sampling with tools specification.
- Sampling is now disabled by default for security reasons, and needs to be enabled at a per-server level with the new
dangerouslyEnableSamplingconfig option.
- Sampling is now disabled by default for security reasons, and needs to be enabled at a per-server level with the new
- Sessions are now kept persistent across restarts in HTTP mode, meaning clients no longer need to reconnect if the proxy is restarted.
Other Changes
- Sessions are now terminated more aggressively to avoid unused client instances hanging around for too long.
- Tool names (up to 40 per server) are injected into the server instructions to steer the model more heavily to use tools from configured servers. Tool descriptions are still not included - the intent is only to make the model more aware of what capabilities each server exposes without explicitly checking it or injecting full tool descriptions into the context.
- Logs are now emitted to a dedicated log file at the
DEBUGlevel, and console logs have been bumped to theINFOlevel. - Logging notifications from connected servers are now logged by the proxy and propagated to the connected client.
- All tools have been given proper titles and annotations.
- The docs have been rewritten for clarity.
Full Changelog: v1.2.2...v1.3.0
v1.2.2
What's Changed
- chore: switch to tsup to bundle workspace deps by @karashiiro in #10
Full Changelog: v1.2.1...v1.2.2
v1.2.1
What's Changed
- fix(ci): update cwd during publish by @karashiiro in #8
- fix(ci): use pnpm for publishing to resolve workspace deps by @karashiiro in #9
Full Changelog: v1.2.0...v1.2.1