Skip to content

Conversation

@saucow
Copy link
Contributor

@saucow saucow commented Nov 18, 2025

What I did

Changes

Secret Injection

Container MCPs

Secrets injected as se:// URIs, resolved by Docker Desktop at container runtime. Gateway never holds secret values in memory.

Remote MCPs

Secrets queried from Secrets Engine and expanded into HTTP headers. Actual values required for Bearer tokens and header interpolation.

OAuth Tokens

OAuth tokens retrieved from Secrets Engine in Desktop mode. Falls back to credential helpers in CE mode. Token refresh monitoring also uses Secrets Engine.


Commands Removed

  • docker mcp policy set/dump - Policy management incompatible with Secrets Engine access control
  • docker mcp secret export - Replaced by Secrets Engine queries

Commands Changed

docker mcp secret set

Stores secrets via docker pass to OS Keychain under docker/mcp/generic/ namespace.

docker mcp secret ls

Queries Secrets Engine HTTP API instead of JFS socket. JSON output format compatible with Docker Desktop UI.

docker mcp secret rm

Deletes secrets via docker pass rm. Only removes docker-pass provider secrets. Legacy secrets must be removed via OS credential tools.


Benehiko and others added 4 commits November 17, 2025 13:29
* cmd/secret: use new store

Signed-off-by: Alano Terblanche <[email protected]>

* Add temporary secrets engine client

Signed-off-by: Alano Terblanche <[email protected]>

* Lint fixes + remove tests + don't return cred value

* update docs

---------

Signed-off-by: Alano Terblanche <[email protected]>
Co-authored-by: Saurabh Davala <[email protected]>
@saucow saucow requested a review from Benehiko November 18, 2025 04:35
@saucow saucow changed the title Secrets engine injection Remove JFS references + secrets engine injection Nov 18, 2025
Comment on lines 41 to 42
`{"pattern": "docker/mcp/generic/*"}`, // Generic secrets (docker pass)
`{"pattern": "docker/mcp/oauth/*"}`, // OAuth tokens
Copy link
Contributor Author

@saucow saucow Nov 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: workaround as I wasn't able to query all with: docker/mcp/**

@saucow saucow changed the base branch from secrets-engine to main November 24, 2025 22:54
@saucow saucow marked this pull request as ready for review November 25, 2025 01:46
@saucow saucow requested a review from a team as a code owner November 25, 2025 01:46
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.

3 participants