Skip to content

API returns GitHub App secrets (githubPrivateKey, githubClientSecret, githubWebhookSecret) in read endpoint responses #5002

Description

@Siumauricio

Summary

Read endpoints such as compose.one (and git-provider read endpoints) return GitHub App credentials — githubPrivateKey, githubClientSecret, githubWebhookSecret — in plaintext in their responses. The same applies to other secret-bearing fields (env vars, database passwords, tokens) on their respective read endpoints.

Originally reported against the MCP server in Dokploy/mcp#65 (and Dokploy/mcp#26): any consumer of these endpoints — the MCP server, custom scripts, third-party integrations — receives the secrets even when it only needs metadata.

Mitigation in place

The MCP server now redacts these fields client-side before responses reach LLM context (Dokploy/mcp#66, Dokploy/mcp#69). But that only protects MCP users — every other API consumer still receives the secrets.

Request

Omit (or return masked placeholders for) write-only secret fields in read endpoint responses, unless explicitly requested by an authorized flow that needs them. Secrets that the UI never needs to display back are the clearest candidates: private keys, client secrets, webhook secrets.

Defense in depth: server-side omission protects all consumers at the source, rather than relying on each client to redact.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions