Release Notes
Added
/register/toolsresponses now includewarnings: tools that registered in a degraded form, with the reason. A tool whose JSON Schema our codegen cannot express is registered with a permissiveanysignature so it stays callable; previously that only reached the server logs, invisible to a client talking to a remotely deployed session server.
Changed
- Moved full MCP tool call / callback inputs and outputs, and
execute_typescript/execute_bashcode and output, from INFO to DEBUG logs to declutter traces. Added DEBUG logs describing tool result shape (structured content, JSON parse success/fallback). - Breaking (
pctx_code_modecrate):CodeMode::with_callbacksreturns(Self, CallbackReport)instead ofResult<Self>, so builder-style callers see which tools failed or degraded. Per-tool isolation means the batch itself cannot fail, so the report is the only outcome. - Breaking (
pctx_code_modecrate):CodeMode::add_callbackreturnsResult<Vec<String>>— the reasons that tool's types were degraded toany, empty when fully typed.
Fixed
-v/-vvflags apply globally (previously was only applied topctx mcp <sub-cmd>commands)ExecuteBashOutput'sDisplayprintedstdoutin the# STDERRsection, so bash stderr was never shown. (#141)/register/toolsno longer fails the whole batch when a single tool cannot be registered. Each tool is registered independently: a genuinely bad tool (name clash, unparseable schema) is skipped and returned in the response'sfailedlist, and a tool our codegen cannot type degrades to ananysignature rather than being dropped. Previously one bad tool from an upstream server — such as a recursive$refin a federated schema — took down registration for the entire batch, forcing clients into ~135 sequential per-tool calls per session.- Declared
rmcpminimum raised from 1.2.0 to 1.8.0, the version the code actually requires. With the understated minimum, downstream consumers of the git-dep crates could resolve an older rmcp and fail to compilepctx_session_server.
Install pctx 0.7.4
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/portofcontext/pctx/releases/download/v0.7.4/pctx-installer.sh | shInstall prebuilt binaries via Homebrew
brew install portofcontext/tap/pctxInstall prebuilt binaries into your npm project
npm install @portofcontext/pctx@0.7.4Download pctx 0.7.4
| File | Platform | Checksum |
|---|---|---|
| pctx-aarch64-apple-darwin.tar.gz | Apple Silicon macOS | checksum |
| pctx-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| pctx-aarch64-unknown-linux-gnu.tar.gz | ARM64 Linux | checksum |
| pctx-x86_64-unknown-linux-gnu.tar.gz | x64 Linux | checksum |
Verifying GitHub Artifact Attestations
The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:
gh attestation verify <file-path of downloaded artifact> --repo portofcontext/pctxYou can also download the attestation from GitHub and verify against that directly:
gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>