Field-by-field comparison

Compare the evidence before choosing an MCP.

Each signal stays separate, missing facts remain visible, and the column order follows your selection.

MCPs in this comparison

Uncheck an MCP to remove it. Comparing two or three keeps each signal in its own row.

Open canonical comparison link

Comparable alternatives

Shown only when capability or industry context overlaps.

Side-by-side MCP evidence comparison
Evidence fieldOfficial MCP Java SDKMCP100 SelectedDocker MCP GatewayMCP100 Selected
Task fit
Best for
  • Building MCP clients or servers in Java
  • Teams that want the protocol project's first-party implementation and upgrade path
  • Running multiple MCP servers behind one stdio connection
  • Isolating catalog MCP servers in containers with restricted privileges and resources
  • Centralizing server profiles, secrets, OAuth, logs, and call traces
Not ideal for
  • Teams looking for a ready-made integration with a SaaS product
  • Projects that want a high-level cross-language framework instead of a protocol SDK
  • Users who need only one simple remote MCP endpoint
  • Hosts where Docker Desktop or Docker Engine cannot run
Avoid when
  • You expect a protocol SDK to provide application-specific authorization or least-privilege policy automatically
  • Your runtime/language is not supported by this SDK
  • You cannot review every downstream MCP server and profile permission
  • The agent must not be able to discover or add tools dynamically
  • Container isolation is being treated as protection from an over-privileged downstream credential
Provenance
Provenance details

First-party MCP

Model Context Protocol project · Publisher source ↗

First-party MCP

Docker · Publisher source ↗

Maintenance
Maintenance details

Repo: Not documented

Package: Not documented

Repo: Aug 13, 2026

Package: Not documented

Popularity evidence
GitHub starsNot documented

1,529

GitHub stars · checked 2026-08-14T18:46:26.000Z

Client coverage
Client coverage detailsNot documented
Claude CodeLocal stdio
Claude DesktopLocal stdio
CodexLocal stdio
VS CodeLocal stdio
CursorLocal stdio
OpenCodeLocal stdio
Client coverage noteLocal stdio runs on your computer. Streamable HTTP connects to a remotely hosted MCP server.
Access and data
AuthenticationThe SDK provides protocol/client/server primitives; authentication is chosen by the application. Current SDK lines include support for MCP transport/auth mechanisms where applicable.The gateway handles downstream server credentials and OAuth flows. The client connects locally over stdio by running `docker mcp gateway run`, optionally with a named profile.
CostOpen-source SDK; runtime, hosting, APIs, and external services may have separate costs.The open-source gateway documents no standalone usage fee. Docker Desktop licensing, Docker AI Governance invite-only features, container infrastructure, downstream MCP services, and AI-client charges may apply.
PermissionsThe SDK itself does not grant external permissions. Applications decide which tools/resources are exposed and what credentials they use.The gateway exposes the servers and tools included in the selected profile. It starts catalog servers in containers with restricted privileges, network access, and resource usage, injects configured secrets, and can support OAuth. Dynamic MCP can additionally expose tools that discover, add, configure, remove, and execute servers during a session.
Data handlingData flow is application-defined: MCP messages, tool inputs/outputs, resources, prompts, and any downstream system data handled by the app.Tool requests and results pass through the local gateway to downstream MCP containers or remote services. Docker documents built-in logging and call tracing. Credentials are managed and injected by the gateway; downstream servers can still receive data and reach networks allowed by their configuration.
Limitations
Tradeoffs
  • Official SDKs are closer to the protocol but require more application code than opinionated frameworks
  • Security boundaries, tool semantics, and external-service permissions remain the application's responsibility
  • Gateway isolation improves lifecycle and credential management but adds Docker runtime complexity and local resource use.
  • The MCP Toolkit is documented as Beta, and Dynamic MCP is experimental.
  • The gateway reduces direct host privileges, but network access and injected credentials still let downstream servers affect external systems.
Risk contextMedium. Main risks are application misconfiguration, dependency/supply-chain issues, overly broad tools, exposed transports, and unsafe downstream actions.Gateway safety is only as strong as the selected profile, catalog provenance, tool filters, network policy, and downstream credentials. Disable experimental Dynamic MCP unless required, use narrow profiles, verify signatures where available, inspect traces, and treat each downstream server as a separate trust decision. This review does not claim MCP100 execution testing.
Evidence date
Editorial review2026-09-112026-07-24
Candidate evidence2026-09-11T00:00:00.000Z2026-08-14T18:46:26.000Z

Popularity, maintenance, fit, permissions, and client support are independent evidence fields.

Read the evidence method →