You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Consolidate duplicate sections in Unreleased changelog (#113)
Merge the two Added and two Fixed sections into single sections each,
and trim verbose/minor entries to keep the changelog concise.
https://claude.ai/code/session_01JWQyaYTd36WC1tCBqby8j1
Co-authored-by: Claude <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+20-42Lines changed: 20 additions & 42 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,14 +9,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
10
10
### Added
11
11
12
-
- New `mcpc grep <pattern>` command to search tools, resources, prompts, and server instructions across all active sessions, with support for regex (`-E`), type filters (`--tools`, `--resources`, `--prompts`, `--instructions`), single-session search (`mcpc @session grep`), and capability-aware querying (skips unsupported list operations)
13
-
- Recovery hints for crashed and expired sessions in `mcpc` session list output
14
-
15
-
### Fixed
16
-
17
-
- Fixed `mcpc help <command>` showing truncated usage line (e.g. `Usage: resources-read <uri>`) — now correctly shows `Usage: mcpc <@session> resources-read <uri>`
18
-
- Fixed auth loss when reconnecting an unauthorized session via `mcpc connect` — the `unauthorized` status was not cleared, causing all subsequent operations to fail with "Authentication required by server" even after successful reconnection
19
-
- HTTP proxy support (`HTTP_PROXY`/`HTTPS_PROXY` env vars) now works for MCP server connections, OAuth token refresh, and x402 payment signing — previously the MCP SDK transport and OAuth calls bypassed the global proxy dispatcher
12
+
- New `mcpc grep <pattern>` command to search tools, resources, prompts, and instructions across all active sessions, with regex, type filters, and single-session search support
13
+
- New `tasks-list`, `tasks-get`, `tasks-cancel` commands for managing async tasks on the server
14
+
-`--task` flag for `tools-call` to opt-in to task execution with progress spinner; `--detach` to start a task and return the task ID immediately; press ESC during `--task` to detach on the fly
15
+
-`--insecure` global option to skip TLS certificate verification
16
+
-`--client-id` and `--client-secret` options for `mcpc login`, for servers that don't support dynamic client registration
17
+
-`--no-profile` option for `connect` to skip OAuth profile auto-detection
18
+
-`mcpc login` now falls back to accepting a pasted callback URL when the browser cannot be opened (e.g. headless servers, containers)
19
+
-`tools-list` now shows inline parameter signatures (e.g. `read_file(path: string, +4 optional)`) for quick scanning without `--full`
20
+
-`mcpc @session` now shows available tools list from bridge cache (no extra server call)
20
21
21
22
### Changed
22
23
@@ -33,47 +34,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
33
34
34
35
Direct one-shot URL access (e.g. `mcpc mcp.apify.com tools-list`) is removed; create a session first with `mcpc connect`.
35
36
36
-
- Renamed `--async` flag to `--task` in `tools-call` for consistency with MCP specification; `--detach` now implies `--task`
37
-
- Revised session states: auth failures (401/403) now show as `unauthorized` (separate from `expired` which is for session ID expiry), with actionable login guidance; new `disconnected` state surfaces when bridge is alive but server has been unreachable for >2 minutes
37
+
- Renamed `--async` flag to `--task` in `tools-call` for consistency with MCP specification
38
+
- Revised session states: `unauthorized`(401/403), `disconnected` (bridge alive but server unreachable >2min), and `expired` (session ID rejected), each with actionable guidance
38
39
- When `--profile` is not specified, only the `default` profile is used; non-default profiles require an explicit `--profile` flag
39
-
-`@napi-rs/keyring` native addon is now loaded lazily: `mcpc` starts and works normally even when `libsecret` (Linux) or the addon itself is missing; a one-time warning is emitted and credentials fall back to `~/.mcpc/credentials.json` (mode 0600)
40
-
-`x402 sign` now takes the PAYMENT-REQUIRED header as a positional argument instead of `-r` flag (e.g. `mcpc x402 sign <base64>`)
41
-
-`tools-list` and `tools-get` now show `[task:optional]`, `[task:required]`, or `[task:forbidden]` instead of `[async]`
42
-
- Tools cache now fetches all pages on startup and on `tools/list_changed` notifications; `tools-get` uses cached list first and only re-fetches if the tool is not found
43
-
-`--header` / `-H` option is now specific to the `connect` command instead of being shown as a global option
44
-
45
-
### Added
46
-
47
-
- New `tasks-list`, `tasks-get`, `tasks-cancel` commands for managing async tasks on the server
48
-
-`--task` flag for `tools-call` to opt-in to task execution with a progress spinner showing elapsed time, server status messages, and progress notifications in human mode
49
-
-`--detach` flag for `tools-call` to start a task and return the task ID immediately without waiting for completion (implies `--task`)
50
-
- Press ESC during `--task` execution to detach on the fly — the task continues in the background and the task ID is printed
51
-
-`--insecure` global option to skip TLS certificate verification, for MCP servers with self-signed certificates
52
-
-`--client-id` and `--client-secret` options for `mcpc login` command, for servers that don't support dynamic client registration
53
-
-`--no-profile` option for `connect` command to skip OAuth profile auto-detection and connect anonymously
54
-
-`mcpc close @session`, `mcpc restart @session`, and `mcpc shell @session` command-first syntax as alternatives to `mcpc @session close/restart/shell`
55
-
-`mcpc login` now falls back to accepting a pasted callback URL when the browser cannot be opened (e.g. headless servers, containers)
56
-
-`tools-list` now shows inline parameter signatures (e.g. `read_file(path: string, +4 optional)`) for quick scanning without `--full`
57
-
-`mcpc @session` now shows available tools list from bridge cache (no extra server call)
58
-
- Task capability and `execution.taskSupport` displayed in `tools-get` and server info
59
-
- x402 payments are now also sent via the MCP `_meta["x402/payment"]` field on `tools/call` requests, in addition to the existing HTTP header
40
+
-`@napi-rs/keyring` native addon is now loaded lazily; falls back to `~/.mcpc/credentials.json` when unavailable
41
+
-`--header` / `-H` option is now specific to the `connect` command instead of being a global option
42
+
- Tools cache now fetches all pages on startup and on `tools/list_changed` notifications
60
43
61
44
### Fixed
62
45
63
-
- Explicit `--header "Authorization: Bearer ..."` is no longer silently ignored when a default OAuth profile exists for the same server; explicit CLI headers now take precedence over auto-detected profiles
64
-
- Combining `--profile` with `--header "Authorization: ..."` now returns a clear error instead of silently stripping the header
65
-
- Session restart now auto-detects the `default` OAuth profile created after the session was established, fixing the `login` then `restart` flow for unauthorized sessions
66
-
- Sessions requiring authentication now correctly show as `expired` instead of `live` when the server rejects unauthenticated connections
67
-
- Auth errors wrapped in `NetworkError` by bridge IPC are now detected on first health check, avoiding unnecessary bridge restart
46
+
- HTTP proxy support (`HTTP_PROXY`/`HTTPS_PROXY`) now works for MCP server connections, OAuth token refresh, and x402 payment signing
47
+
- Explicit `--header "Authorization: ..."` now takes precedence over auto-detected OAuth profiles
48
+
- Fixed auth loss when reconnecting an unauthorized session via `mcpc connect`
49
+
- Session restart now auto-detects the `default` OAuth profile created after the session was established
68
50
-`--timeout` flag now correctly propagates to MCP requests via session bridge
69
51
-`--task` and `--detach` tool calls now correctly send task creation parameters to the server
70
-
- Bridge now forwards `logging/message` notifications from the MCP server to connected clients, so `logging-set-level` actually takes effect in interactive shell sessions
52
+
- Bridge now forwards `logging/message` notifications to connected clients
71
53
- IPC buffer between CLI and bridge process is now capped at 10 MB, preventing unbounded memory growth
72
-
-`parseServerArg()` now handles Windows drive-letter config paths and other ambiguous cases
73
-
- Misplaced subcommand-specific flags (e.g. `--full`, `--proxy`) now produce clear "Unknown option" errors instead of confusing rejections
74
-
-`logging-set-level` JSON output no longer includes a redundant `success` field
75
-
-`logTarget` no longer prints a misleading prefix when a session doesn't exist
76
-
- File lock retries now use randomized exponential backoff to reduce contention
54
+
- Fixed `mcpc help <command>` showing truncated usage line
0 commit comments