The README contains guidance stating that secrets should not be exchanged with the LLM. However it's rare to deploy "real" applications that don't require sensitive configuration.
Typically in a Docker deployment you would set secrets directly on workloads via env vars. Docker builds support secrets, but only Docker Swarm supports runtime secrets. This MCP server doesn't have plans to support Docker Swarm.
To support secrets I suggest that the server support an env var prefix that the MCP server uses to detect arbitrary named secrets. The following example would make an openai_api_key available to the LLM, effectively mapping the non-sensitive name to its sensitive value:
{
"mcpServers": {
"mcp-server-docker": {
"command": "uv",
"env": {
"MCP_SERVER_DOCKER_SECRET_openai_api_key": "oai-abcdef1234567890"
},
"args": [
"--directory",
"/path/to/repo",
"run",
"mcp-server-docker"
]
}
}
}
Then you would tell the LLM e.g. "Set the OPENAI_API_KEY env var to the open_api_key secret" - this would require a small extension to the RunContainer tool and its counterparts
The README contains guidance stating that secrets should not be exchanged with the LLM. However it's rare to deploy "real" applications that don't require sensitive configuration.
Typically in a Docker deployment you would set secrets directly on workloads via env vars. Docker builds support secrets, but only Docker Swarm supports runtime secrets. This MCP server doesn't have plans to support Docker Swarm.
To support secrets I suggest that the server support an env var prefix that the MCP server uses to detect arbitrary named secrets. The following example would make an
openai_api_keyavailable to the LLM, effectively mapping the non-sensitive name to its sensitive value:{ "mcpServers": { "mcp-server-docker": { "command": "uv", "env": { "MCP_SERVER_DOCKER_SECRET_openai_api_key": "oai-abcdef1234567890" }, "args": [ "--directory", "/path/to/repo", "run", "mcp-server-docker" ] } } }Then you would tell the LLM e.g. "Set the
OPENAI_API_KEYenv var to theopen_api_keysecret" - this would require a small extension to the RunContainer tool and its counterparts