MCP Server Docker vs Context Keeper (remot… | AllMCPs
Side-by-Side Model Context Protocol Comparison
MCP Server Docker vs Context Keeper (remote)
In-depth architectural comparison of the MCP Server Docker and Context Keeper (remote) MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
MCP Server Docker
Cloud Platforms · Local stdio
Quality: 52/100 (Good) | Auth: No auth required
Context Keeper (remote)
Cloud Platforms · Local stdio
Quality: 43/100 (Fair) | Auth: No auth required
Verdict Summary: Choose MCP Server Docker if you need specialized Cloud Platforms tools running via a local process. Choose Context Keeper (remote) if your workspace requires Cloud Platforms integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose MCP Server Docker when:
You need dedicated capabilities in the Cloud Platforms domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Read or write config: `op='get'` reads a key, `op='set'` writes it (`value` required). Use key `default_project` (global scope, no `project`) to pick the project used when a call omits `project`.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
MCP Server Docker is categorized under Cloud Platforms and uses a local stdio subprocess. In contrast, Context Keeper (remote) belongs to Cloud Platforms using local stdio subprocess. Select MCP Server Docker when you need capabilities focused on cloud platforms and Context Keeper (remote) when you require tools for cloud platforms.
Deprecated** aliases for `config(op='set')` / `config(op='get')`.
record_entry
Unified write: record a `decision`, `constraint`, or `pipeline`. Required field depends on kind — decision needs `summary`, constraint needs `rule`, pipeline needs `name`.
record_decision
Deprecated** alias for `record_entry(kind='decision')`: `summary`, `problem`, `why_chosen`, `what_we_tried`, `tradeoffs`, `tags`.
record_constraint
Deprecated** alias for `record_entry(kind='constraint')`: a rule that must hold — `rule`, `reason`, `tags`.
record_pipeline
Deprecated** alias for `record_entry(kind='pipeline')`: a reusable process — `name`, `purpose`, `steps` (extra fields kept verbatim).
get_context
Relevance-ranked retrieval for a query (keyword scoring; excludes deprecated unless `include_deprecated`). An entry that superseded something carries a one-line `predecessor` -- what the prior entry said and why it changed -- byte-identical to the local server's, so history reads the same over eith…
query_entries
Structured filters: `id`, `kind`, `tags` (all must match), `status` (`active`/`deprecated`/`all`), free `text`, and `limit`.
get_project_summary
One-call orientation: entry counts by kind and status, the ids present, the active constraints (compact), and the most recent decisions.
list_projects
The org registry: every project with entries, plus per-project active counts (decisions/constraints/pipelines), active/deprecated totals, and last-updated time. Enumerates the whole org in one call — discover exact, case-sensitive project names instead of guessing.
update_entry
Merge `patch` fields into an entry's payload; optionally change `status`.
deprecate_entry
Mark deprecated, optionally linking `superseded_by` and recording a `reason` (the reason is what the predecessor line quotes).