Releases: lynnswap/XcodeMCPKit
Releases · lynnswap/XcodeMCPKit
v0.3.5
XcodeMCPKit v0.3.5
Improvements
- Stabilize
tools/listhandshakes by warming once (fail-fast) and serving an in-memory cached result for the lifetime of the proxy process (including requests withparams). - Improve multi-upstream warmup behavior by tracking warmup failures and temporarily quarantining upstreams that fail warmup.
Bug Fixes
- Drop unmapped upstream JSON-RPC responses so late
tools/listwarmup replies can’t leak into active sessions. - Make upstream process restarts race-safe and suppress exit events for superseded processes.
- Harden STDIO framing to avoid stalls on
Content-Length-looking log lines and to recover from bogusContent-Lengthblocks.
Documentation
- Clarify the fail-fast
tools/listwarmup timeout in troubleshooting docs.
Full Changelog: v0.3.4...v0.3.5
v0.3.4
XcodeMCPKit v0.3.4
Bug Fixes
- Reduce cross-talk between concurrent sessions by pinning each MCP session to a specific upstream
mcpbridgeprocess, and route unmapped server messages only to sessions pinned to the same upstream.
Full Changelog: v0.3.3...v0.3.4
v0.3.3
XcodeMCPKit v0.3.3
Bug Fixes
- Return empty results for
resources/listandresources/templates/listbefore the proxy is initialized (some clients probe these unconditionally). - After initialization, forward resources listing when supported and only rewrite JSON-RPC "Method not found" (-32601) to an empty list (other upstream errors pass through unchanged).
Full Changelog: v0.3.2...v0.3.3
v0.3.2
XcodeMCPKit v0.3.2
Improvements
- Prefer JSON over SSE for POST calls when the client accepts both (
application/json+text/event-stream). - Make
xcode-mcp-proxy-serverthe dedicated HTTP/SSE proxy server (default listen:localhost:8765) andxcode-mcp-proxythe dedicated STDIO adapter for Codex / Claude Code. - Add
--force-restarttoxcode-mcp-proxy-serverto terminate an existing server when the listen port is already in use. - Add
--urlas a more intuitive alias for pointing the STDIO adapter at a running proxy server (discovery /XCODE_MCP_PROXY_ENDPOINTstill supported).
Bug Fixes
- Fix a hang after upstream disconnects (
Transport closed). - Fix
tools/listcaching + warmup so cached results are only served for canonical no-params requests and warmup won’t collide with real sessions. - Improve proxy server PID detection by using the full process command line (avoids truncated
psoutput).
Documentation
- Update README and troubleshooting for the new Codex / Claude setup, discovery file location,
--force-restart, andTransport closedguidance.
Full Changelog: v0.3.1...v0.3.2
v0.3.1
XcodeMCPKit v0.3.1
Documentation
- Simplify MCP registration by showing how to replace
xcrun mcpbridgewithxcode-mcp-proxyfor Codex and Claude Code. - Streamline troubleshooting for upstream
xcrun mcpbridgeexecution (Xcode selection andxcrun mcpbridge -hchecks).
Full Changelog: v0.3.0...v0.3.1
v0.3.0
XcodeMCPKit v0.3.0
New Features
- Add
--upstream-processes(1..10) to spawn a pool of upstreamxcrun mcpbridgeprocesses, improving throughput under higher client concurrency.
Bug Fixes
- Make eager initialization more resilient by retrying after warm init failures and after the last upstream process exits.
Documentation
- Expand the architecture docs to describe upstream pooling and STDIO adapter mode.
- Add benchmark notes, results, and a benchmark tool (
Tools/mcp_bench.swift) comparing--upstream-processes 1vs4, with guidance on when multiplexing helps.
Full Changelog: v0.2.1...v0.3.0
v0.2.1
XcodeMCPKit v0.2.1
New Features
- Default HTTP proxy listen address to
localhost:0(auto-assign port) and write the resolved endpoint to~/Library/Caches/XcodeMCPProxy/endpoint.jsonfor HTTP/SSE client discovery. - When
--stdiois used without an explicit URL, resolve the upstream in order:XCODE_MCP_PROXY_ENDPOINT, discovery file, thenhttp://localhost:8765/mcp.
Improvements
- Log whether the STDIO upstream came from CLI, env, discovery, or fallback to make connectivity issues easier to diagnose.
Documentation
- Document endpoint discovery and STDIO upstream resolution in the README and architecture docs.
- Add troubleshooting guidance for clients when the proxy runs on an auto-assigned port.
- Add a detailed investigation note (with diagrams) for the Xcode MCP connection permission dialog in Xcode 26.3.
Full Changelog: v0.2.0...v0.2.1
v0.2.0
XcodeMCPKit v0.2.0
New Features
- Add
xcode-mcp-proxy-server(HTTP/SSE) plusxcode-mcp-proxy --stdioadapter so STDIO-only clients can connect through a central proxy. - Add
xcode-mcp-proxy-installto installxcode-mcp-proxyandxcode-mcp-proxy-serverto~/.local/bin(supports--prefix/--bindir).
Bug Fixes
- Bind
localhoston both IPv4 and IPv6 loopback (with IPv6-only fallback) to avoid connection failures on IPv6-only setups. - Fix STDIO mode timeouts: honor
--request-timeout 0and preserve POST timeouts while keeping SSE long-lived.
Improvements
- Default listen host/upstream to
localhost(HTTP and STDIO). - Automatically reinitialize after upstream
mcpbridgeexits to keep the proxy available.
Documentation
- Add architecture overview with HTTP/SSE and STDIO adapter diagrams.
- Add troubleshooting guide, including Codex timeout guidance.
Full Changelog: v0.1.3...v0.2.0
v0.1.3
XcodeMCPKit v0.1.3
New Features
- Allow disabling request timeouts by setting
--request-timeout 0(no scheduled timeout for requests/batches/init).
Improvements
- Increase the default request timeout to 300 seconds to reduce premature timeouts.
Documentation
- Add an investigation note on the Xcode 26.3 MCP connection permission dialog and known-agent behavior.
Tests
- Add coverage for disabled request timeout behavior in
ProxyRouter.
Full Changelog: v0.1.2...v0.1.3
v0.1.2
XcodeMCPKit v0.1.2
New Features
- Add
ProxyLoggingwith opt-inProxyLogging.bootstrap()and env-based log level (MCP_LOG_LEVEL/LOG_LEVEL).
Improvements
ProxyLogging.makeno longer auto-bootstraps swift-log; callProxyLogging.bootstrap()when you want logging configured.- Refactor upstream handling and session protocol flow for better testability.
Other Changes
- Expand test coverage for HTTP handling, session management, CLI/logging, and concurrency; enable the concurrency stress test by default.
- Update README with logging environment variables.
Full Changelog: v0.1.1...v0.1.2