fix(mcp): keep server config private in groups#103502
Merged
Merged
Conversation
Contributor
Author
|
Merged via squash.
|
github-actions Bot
pushed a commit
to Desicool/openclaw
that referenced
this pull request
Jul 10, 2026
* fix(mcp): keep server config private in groups * fix(config): redact underscore credential flags * fix(config): redact plural credential flags
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #103053
What Problem This Solves
Fixes a remaining issue where an owner running
/mcp showin a group could expose MCP credentials stored in stdio arguments or owner/plugin-specific config fields. The earlier redaction fix covered headers, environment variables, and credentialed URLs, but argv is opaque and cannot be proven safe by field-name redaction alone.Why This Change Was Made
Group
/mcp shownow resolves a private owner route before reading or rendering configuration, sends the sanitized result privately, and returns only a constant group acknowledgment. Missing or failed private delivery fails closed. Direct/DM output additionally redacts recognized credential flags and known secret-shaped argv values, while strict same-server/full-argv restoration preserves show-to-set round trips without persisting placeholders.User Impact
Owners can inspect MCP configuration without posting it into a shared room. If no private owner route works, the group receives no server name, path, or config data and asks the owner to retry from a direct chat. Non-secret argv remains readable in private output.
Evidence
ad947fc31f71: Blacksmith Testbox focused run passed 42 tests across MCP command routing, config restoration, and config-audit argv redaction.pnpm check:changedpassed core/test typechecks, full core lint, scripts/tooling lint, database/media/runtime guards, import-cycle checks, webhook ordering, and pairing guards on the same routing/restoration patch.Release Note Context
The centrally held release changelog already owns the credited #103396/#103053 security note, so this repair branch intentionally does not edit
CHANGELOG.md.