Skip to content

fix(stdio): redact config values in "Configuration loaded" log#788

Open
cosmic-fire-eng wants to merge 1 commit into
smithery-ai:mainfrom
cosmic-fire-eng:fix/stdio-redact-config-log
Open

fix(stdio): redact config values in "Configuration loaded" log#788
cosmic-fire-eng wants to merge 1 commit into
smithery-ai:mainfrom
cosmic-fire-eng:fix/stdio-redact-config-log

Conversation

@cosmic-fire-eng

Copy link
Copy Markdown

On stdio startup the generated bootstrap logs the full parsed config object to stderr. When a server's config schema carries credentials, those secrets are written in plaintext to every sink that captures the process stderr (systemd/journald, docker logs, log shippers).

Concrete case: a server whose configSchema is { email, password, mfaSecret } prints all three at launch. Because the leak is in the shared stdio runtime template, it affects every TypeScript-runtime Smithery MCP whose config carries secrets. The keys alone satisfy the "what did I parse" diagnostic this line exists for, so this logs Object.keys(config) and drops the values. shttp-bootstrap.ts does not log config, so no change there.

On stdio startup the generated bootstrap logged the full parsed config
object to stderr. When a server's config schema carries credentials,
those secrets are written in plaintext to every sink that captures the
process stderr (systemd/journald, docker logs, log shippers). Log only
the config keys, which still satisfies the "what did I parse" diagnostic
this line exists for.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant