Skip to content

[Feature Request]: Connect to Dockerized MCP Servers via STDIO #114

Open
@qdrddr

Description

@qdrddr

As a container user that runs MCP servers in Docker Desktop, I want to attach those to context-forge via STDIO so the context forge can expose those via /sse.

Current issue: running MCP servers that support only STDIO is cumbersome, not user-friendly, and can break dependencies if not containerized. Also something needs to start those servers. Docker Desktop offers an easy solution to run those servers via STDIO. We need conext-forge to be able to consume Conteinerized MCP Servers via STDIO.

🧭 Type of Feature

Please select the most appropriate category:

  • [ X ] Enhancement to existing functionality
  • New feature or capability
  • [ X ] New MCP-compliant server
  • New component or integration
  • Developer tooling or test improvement
  • Packaging, automation, and deployment (ex: pypi, docker, quay.io, kubernetes, terraform)
  • Other (please describe below)

🧭 Epic

Title: Backend containerized MCP servers with STDIO
Goal: Docker Desktop offers a simple way to install MCP servers, most support only STDIO, i want context-forge to expose those via HTTP with Auth.
Why now: Simple to adopt for beginners. Backward compatibility.


🙋‍♂️ User Story 1

As a: container user running MCP servers in Docker Desktop
I want: to attach those STDIO-based servers to context-forge
So that: context-forge can expose them via /sse with authentication and can be reused with my MCP clients.

✅ Acceptance Criteria

Scenario: Connect STDIO-based MCP server running in a container
  Given a containerized MCP server running with STDIO only
  When context-forge is configured to connect via STDIO
  Then the server is exposed via /sse endpoint with auth

Scenario: Auto-start STDIO-based MCP container
  Given no active MCP server container
  When context-forge is initialized
  Then it starts the defined STDIO-based container automatically

🙋‍♂️ User Story 2

As a: beginner developer or non-infrastructure user
I want: to run STDIO-only MCP servers using Docker without manual networking setups
So that: I can develop and test without needing deep server configuration knowledge

✅ Acceptance Criteria

Scenario: Beginner sets up context-forge and Dockerized MCP servers
  Given Docker Desktop is installed
  When user launches context-forge with MCP server config
  Then the container starts and is integrated via STDIO seamlessly

📐 Design Sketch (optional)

Include a diagram, sketch, or flow (use Mermaid if desired):

flowchart TD
    A[Client] -->|POST /completions| B(Context Forge)
    B -->|STDIO| C[Dockerized MCP Server]
Loading

🔗 MCP Standards Check

  • [ X ] Change adheres to current MCP specifications
  • [ X ] No breaking changes to existing MCP-compliant integrations
  • [ X ] If deviations exist, please describe them below:

🔄 Alternatives Considered

  • Manually connecting MCP servers over TCP or HTTP
  • Custom scripts to proxy STDIO to HTTP
  • Running standalone MCP servers outside container scope

All alternatives require more setup or break consistency with containerized workflows.


📓 Additional Context

Running non-communicable containerized MCP servers that support only STDIO is currently cumbersome and often breaks dependencies. Docker Desktop provides a convenient and reliable environment for such workloads. By allowing context-forge to connect to these via STDIO and expose them over /sse, users benefit from an easy, portable, and scalable local development setup.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions