{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.wyre-technology/keeper-mcp","description":"Read-only multitenant Streamable HTTP bridge over Keeper Secrets Manager's MCP server.","title":"Keeper Secrets Manager","repository":{"url":"https://github.com/wyre-technology/keeper-mcp","source":"github"},"version":"1.0.0","websiteUrl":"https://github.com/wyre-technology/keeper-mcp","packages":[{"registryType":"oci","identifier":"ghcr.io/wyre-technology/keeper-mcp:v1.0.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Public listen port for the bridge (POST /mcp, GET /health)","format":"string","default":"8080","name":"PORT"},{"description":"Path to the upstream ksm-mcp binary the bridge spawns per tenant","format":"string","default":"/usr/local/bin/ksm-mcp","name":"KSM_MCP_BIN"},{"description":"Writable HOME for upstream child processes","format":"string","default":"/tmp/ksm-mcp-home","name":"CHILD_HOME"},{"description":"Idle tenant timeout before an upstream child is evicted (ms)","format":"string","default":"900000","name":"IDLE_EVICT_MS"},{"description":"How long to wait for a spawned child to answer the MCP handshake (ms)","format":"string","default":"30000","name":"SPAWN_TIMEOUT_MS"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-17T17:55:22.561146Z","publishedAt":"2026-09-17T17:55:22.561146Z","updatedAt":"2026-09-17T17:55:22.561146Z","isLatest":true}}}],"metadata":{"count":1}}
