Releases: apify/mcpc
Releases · apify/mcpc
v0.4.0
Install
npm install -g @apify/mcpc@0.4.0
# or
bun install -g @apify/mcpc@0.4.0What's Changed
- Fix macOS+Bun E2E hang by running the bridge under the CLI's runtime by @jancurn in #266
- Remove deprecated interactive shell command by @jancurn in #270
- Add login --callback-host flag and required client_id in hosted CIMD by @jancurn in #272
- Implement resource subscriptions with file sync (resources-subscribe) by @jancurn in #273
- Expand README with comprehensive mcpc feature documentation by @jancurn in #275
- Simplify README: consolidate transport/auth/session docs by @jancurn in #276
- Move login flag validation tests to dedicated test suite by @jancurn in #278
- Add OAuth client-credentials grant for machine-to-machine auth by @jancurn in #277
- feat(cli): add "mcpc help --skill" agent skill guide served from the CLI by @MQ37 in #274
- Document default timeout value in CLI help text by @jancurn in #279
- Fix OAuth error reporting and session restart cleanup by @jancurn in #281
- chore: update dependencies to latest versions by @jancurn in #283
- Update mcpc logo by @jancurn in #284
- Improve error handling in OAuth flows and fix Windows process exit by @jancurn in #282
- Fix failing e2e tests: client-credentials Windows crash + stdio server startup by @jancurn in #285
- Reorder tasks commands in help text by @jancurn in #286
- Add restart hint for disconnected sessions in list output by @jancurn in #289
- Tidy the agent-guide pointers in help output by @jancurn in #288
- Fix OAuth login with query string parameters in server URLs by @jancurn in #290
- More vivid CLI color palette; revamped VHS demo tapes + record-demo skill by @jancurn in #287
- Optimize demo GIFs with lossy gifsicle (~60% smaller) by @jancurn in #291
- Improve login command help text and usage documentation by @jancurn in #292
- Tidy CHANGELOG ahead of the next release by @jancurn in #293
Full Changelog: v0.3.1...v0.4.0
v0.3.1
Install
npm install -g @apify/mcpc@0.3.1
# or
bun install -g @apify/mcpc@0.3.1What's Changed
- Suppress structuredContent when visible Content is present by @jancurn in #240
- Deprecate shell command and hide from help output by @jancurn in #243
- Add VHS demo tape files for terminal GIF recordings by @jancurn in #242
- Simplify architecture diagram in README by @jancurn in #244
- feat(x402): support upto scheme + observability + session marker by @MQ37 in #238
- Add macOS E2E tests to release workflow by @jancurn in #248
- chore(deps): update dependencies by @jancurn in #250
- Improve bridge startup timeout and error reporting by @jancurn in #249
- Add next-step hints to guide users through command chains by @jancurn in #241
- Add
logscommand to show and follow bridge log files by @jancurn in #209 - Update MCP feature support table with deprecation status by @jancurn in #251
- Clarify git commit restrictions for local vs web Claude Code by @jancurn in #252
- Fix log file path assertion in logs test for cross-platform compatibility by @jancurn in #253
- Add experimental MCP skills extension support (SEP-2640) by @jancurn in #207
- Support stateless MCP connections with cache TTL and statefulness tracking by @jancurn in #254
- Refresh Claude skill docs for current mcpc syntax and features by @jancurn in #257
- Improve
mcpc connect(no-args) config discovery output by @jancurn in #255 - Make update-readme.sh work without global mcpc install by @jancurn in #258
- Fix bridge startup on macOS (over-long Unix socket paths) and Windows discover test by @jancurn in #259
- Don't quote plain Windows paths in
mcpc connectoutput by @jancurn in #260 - Tidy
_mcpcJSON output:statelessfield, drop log size by @jancurn in #261 - Wait for bulk-connect sessions to finish MCP handshake before reporting by @jancurn in #262
- Refactor: Split connect logic into separate connect.ts module by @jancurn in #263
- Remove auto-connect to mcp.apify.com via APIFY_API_TOKEN by @jancurn in #264
- Fix macOS+Bun E2E hang (cross-binary keychain read) + per-test timeout watchdog by @jancurn in #265
- Speed up sessions/bridge-resilience e2e test to fix Windows timeout by @jancurn in #267
Full Changelog: v0.3.0...v0.3.1
v0.3.0
Install
npm install -g @apify/mcpc@0.3.0
# or
bun install -g @apify/mcpc@0.3.0What's Changed
- Use 127.0.0.1 instead of localhost in OAuth redirect URL by @jancurn in #175
- Remove shorthand commands and improve command suggestions by @jancurn in #178
- Print task ID on Ctrl+C interrupt for async tool calls by @jancurn in #177
- Hide task-cancel hint for completed/failed tasks by @jancurn in #184
- Improve user guidance for session restart and task management by @jancurn in #182
- Add security warning for stdio entries in config files by @jancurn in #185
- Simplify session/target output by removing transport type labels by @jancurn in #180
- Improve human-mode rendering of tools-call / tasks-result output by @jancurn in #179
- Add public OAuth CIMD with default hosted document and --callback-port by @jancurn in #187
- Narrow CIMD callback port range to 5 and drop localhost redirect URIs by @jancurn in #189
- Update print statement from 'Hello' to 'Goodbye' by @jancurn in #194
- Add MCP conformance testing framework integration by @jancurn in #196
- Fix unauthorized sessions to persist without auto-retry by @jancurn in #190
- Expand MCP conformance test coverage with multiple scenarios by @jancurn in #197
- Fix config-file:entry parsing to prevent URL misinterpretation by @jancurn in #199
- Capture stdio server stderr for debugging connection failures by @jancurn in #198
- Gate releases on MCP spec conformance checks by @jancurn in #200
- Skip stdio config entries by default in bulk connect, add
--stdioflag by @jancurn in #201 - Add rainbow gradient fills to client logo knife element by @jancurn in #202
- Document --json flag for mcpc command output by @jancurn in #203
- Add mcpc logo to README and optimize SVG dimensions by @jancurn in #204
- Add auto-discovery of standard MCP config files for
mcpc connectby @jancurn in #165 - Add AI agent discoverability requirement to design principles by @jancurn in #208
- Simplify docs URL to use consistent raw GitHub link by @jancurn in #210
- Hide task:forbidden hint from tools-list output by @jancurn in #213
- Add OAuth state parameter to authorization URL by @jancurn in #216
- Add badges to README for npm, downloads, CI, and license by @jancurn in #217
- Reduce OAuth callback ports from 6 to 3 for better port allocation by @jancurn in #220
- Fix bridge auto-reconnect to persist unauthorized status by @jancurn in #221
- Polish OAuth callback pages with dark-themed design by @jancurn in #219
- Add Motivation section to README by @jancurn in #222
- Fix macOS Keychain timeout race condition in bridge startup by @jancurn in #224
- Unify JSON output format for connect commands to array of entries by @jancurn in #218
- Add atomic rename with retry logic for Windows file lock issues by @jancurn in #225
- Simplify CHANGELOG: remove detailed feature descriptions by @jancurn in #226
- Refactor README for clarity and consistency by @jancurn in #227
- Clarify breaking change in CHANGELOG for removed shorthand commands by @jancurn in #229
- Centralize CLI color theme into reusable theme object by @jancurn in #230
- Fix session-state table rendering on GitHub by @jancurn in #228
- Update MCP CLI clients table with May 2026 metrics by @jancurn in #231
- chore: migrate from npm to pnpm 10 by @B4nan in #232
- docs: align CLAUDE.md, CONTRIBUTING.md, and CHANGELOG with pnpm migration by @jancurn in #233
- chore: Replace calling reusable actions from
apify/workflows/...toapify/actions/...[internal] by @fnesveda in #235 - chore: Update actions from
apify/actions[internal] by @fnesveda in #237 - chore(test): migrate from Jest to Vitest by @MQ37 in #236
- Add Linux E2E tests and improve release notes by @jancurn in #239
New Contributors
Full Changelog: v0.2.6...v0.3.0
v0.2.6
v0.2.4
What's Changed
- feat: add experimental warning to x402 init and import commands by @MQ37 in #132
- Add x402 payment documentation and experimental warning by @jancurn in #133
- Show "ESC to detach" hint immediately in spinner by @jancurn in #135
- Add Windows E2E tests to CI pipeline by @jancurn in #107
- Auto-reconnect crashed and unauthorized bridge processes by @jancurn in #103
- Attempt token refresh before marking session unauthorized by @jancurn in #134
- Improve CLI help output: reorder sections and update usage text by @jancurn in #138
- Show instruction snippets in grep results with pattern highlighting by @jancurn in #137
- Security hardening: XSS prevention, shell injection mitigation, and file permissions by @jancurn in #139
- Support OAuth access tokens as static Bearer headers by @jancurn in #142
- Improve grep instructions snippet context and formatting by @jancurn in #143
Full Changelog: v0.2.3...v0.2.4
v0.2.3
v0.2.2
What's Changed
- chore(deps): update typescript-eslint monorepo to v8.57.2 by @renovate[bot] in #124
- chore(deps): update dependency undici to v7.24.5 by @renovate[bot] in #121
- chore(deps): update dependency viem to v2.47.6 by @renovate[bot] in #123
- Update MCP CLI clients table with metrics and new features by @jancurn in #126
- Upgraded packages by @jancurn in #127
- Update apify/mcpc tool comparison table: add Tool search support by @jancurn in #129
- fix: Secure x402 wallet storage in OS keychain by @MQ37 in #128
Full Changelog: v0.2.1...v0.2.2
v0.2.1
What's Changed
- Fix release action: remove invalid --target flag by @jancurn in #114
- Replace local release script with GitHub Actions workflow trigger by @jancurn in #117
- Fix flaky bun e2e auth-errors test by @jancurn in #118
- chore(deps): update dependency viem to v2.47.5 by @renovate[bot] in #115
- Extract formatToolLine to shared output module by @jancurn in #120
- feat: x402 payment support — signature caching and JSON-RPC 402 retry by @MQ37 in #119
- feat: Add QR code display for wallet addresses in x402 commands by @MQ37 in #122
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
- feat: Major CLI syntax overhaul to
mcpc [<@session>] [<command>]by @jancurn in #29 parseServerArg()now handles well Windows drive-letter config paths as well as other ambiguous cases by @jancurn in #34- Split E2E tests into separate Node.js and Bun jobs by @jancurn in #37
- Add per-request timeout configuration support by @jancurn in #38
- Add support for pre-configured OAuth client credentials by @jancurn in #36
- Mark sessions as expired when authentication fails by @jancurn in #40
- Separate global and subcommand-specific options in CLI parser by @jancurn in #41
- Cap IPC buffer size at 10 MB to prevent unbounded memory growth by @jancurn in #44
- Distinguish auth failures from session expiry with new 'unauthorized' state by @jancurn in #46
- Move --header option from global to connect-specific by @jancurn in #47
- Remove success field from logging-set-level JSON output by @jancurn in #48
- Reorganize and expand Related work section with MCP CLI comparison table by @jancurn in #49
- Update mcp2cli feature support in comparison table by @knowsuchagency in #51
- Fix logTarget to avoid printing prefix when session not found by @jancurn in #56
- feat: Add --insecure option to disable TLS certificate verification by @jancurn in #54
- Fix auth header precedence and prevent conflicting --profile/--header by @jancurn in #58
- Add randomized exponential backoff to file lock retries by @jancurn in #60
- Add async task support for tool calls with progress tracking by @jancurn in #45
- Fixed old merge conflict by @jancurn in #61
- Configure minimum release age for Renovate by @jancurn in #62
- Improve release workflow: support major/minor bumps and auto-update changelog by @jancurn in #63
- Add installation instructions to release workflow summaries by @jancurn in #64
- Clarify session states and improve documentation formatting by @jancurn in #65
- Add fallback to manual URL paste when browser cannot open by @jancurn in #66
- Better error messages by @jancurn in #68
- Add color formatting to keychain unavailable warning by @jancurn in #67
- Add progress notification support to async tool execution by @jancurn in #71
- Auto-detect auth profiles on session restart by @jancurn in #70
- Add ESC key listener to detach from async tool tasks by @jancurn in #72
- Remove redundant success field from logging set-level JSON output by @jancurn in #74
- Convert x402 sign command to use positional argument by @jancurn in #69
- feat: send x402 payment via MCP _meta alongside HTTP header by @MQ37 in #76
- Document x402 wallet commands and manual payment signing by @jancurn in #77
- Fetch all tool pages on cache refresh, add getCachedTools IPC method by @jancurn in #73
- Better help by @jancurn in #80
- Remove MCP protocol version display from session output by @jancurn in #81
- Show inline parameter signatures in tools list by @jancurn in #82
- Reorganize CHANGELOG: consolidate CLI redesign and improve readability by @jancurn in #83
- Add bold styling to help text section titles by @jancurn in #84
- Fix auth loss when reconnecting unauthorized sessions by @jancurn in #85
- Use PAT token for release workflow to bypass branch protection by @jancurn in #86
- Add proxy-aware fetch for HTTP_PROXY/HTTPS_PROXY support by @jancurn in #87
- Fix session expiration handling and keychain fallback logic by @jancurn in #88
- Add evantahler/mcpx to MCP implementations table by @jancurn in #89
- Add E2E test prerequisites to CONTRIBUTING.md by @jirispilka in #90
- chore(deps): update dependency viem to v2.47.4 by @renovate[bot] in #28
- chore(deps): update dependency @types/node to v25.4.0 by @renovate[bot] in #27
- chore(deps): update dependency undici to v7.24.0 [security] by @renovate[bot] in #75
- chore(deps): update dependency @inquirer/select to v5.1.2 by @renovate[bot] in #92
- chore(deps): update typescript-eslint monorepo to v8.57.0 by @renovate[bot] in #50
- chore(deps): update dependency jest to v30.3.0 by @renovate[bot] in #52
- chore(deps): update dependency @types/node to v25.5.0 by @renovate[bot] in #94
- chore(deps): update dependency undici to v7.24.4 by @renovate[bot] in #93
- chore(deps): update dependency @inquirer/input to v5.0.10 by @renovate[bot] in #91
- chore(deps): update typescript-eslint monorepo to v8.57.1 by @renovate[bot] in #96
- Improve CLI output messaging and reorder server details sections by @jancurn in #99
- Fix help command missing
mcpc <@session>prefix in usage line by @jancurn in #105 - Added
grepcommand by @jancurn in #100 - Remove spaces around colons in tool parameter formatting by @jancurn in #110
- Add async tasks support documentation by @jancurn in #112
- Add tasks API, improve CLI UX, and fix auth/proxy issues by @jancurn in #113
New Contributors
- @knowsuchagency made their first contribution in #51
- @jirispilka made their first contribution in #90
Full Changelog: v0.1.11...v0.2.0
v0.1.11
What's Changed
- Configure Renovate by @renovate[bot] in #13
- fix: flush stdout before process.exit() to prevent pipe truncation by @vystrcild in #17
- fix: add tsx as devDependency to prevent E2E test race condition by @MQ37 in #12
- chore: add release workflow for stable and beta npm publishing by @MQ37 in #21
- fix: remove git commits from release workflow, auto-increment beta from npm by @MQ37 in #22
- Keychain access fallback to file-based credential storage by @jancurn in #23
- feat: x402 payment protocol support by @MQ37 in #11
- chore(deps): update dependency node to v24 by @renovate[bot] in #20
- chore: Added E2E tests with Bun runtime by @jancurn in #25
- chore(deps): update actions/checkout action to v6 by @renovate[bot] in #15
- chore(deps): update dependency @types/node to v25.3.3 by @renovate[bot] in #14
- chore(deps): update dependency viem to v2.47.0 by @renovate[bot] in #24
- chore(deps): update actions/setup-node action to v6 by @renovate[bot] in #18
- fix: regenerate package-lock.json for CI compatibility by @MQ37 in #26
New Contributors
- @renovate[bot] made their first contribution in #13
- @vystrcild made their first contribution in #17
Full Changelog: v0.1.10...v0.1.11