Skip to content

How to Set Up the Docker Companion

The Docker Companion generates a docker-compose.yml that bridges local MCP servers (designed for stdio) to HTTP/SSE endpoints that Daneel can connect to — alongside optional Ollama for local LLM inference.

  • Docker Desktop installed and running
  • Basic familiarity with Docker Compose

Open Settings > Docker in Daneel. The configuration is organized as presets:

The Companion sidecar provides service discovery and health checks by monitoring the Docker socket. It’s always included in the generated compose file.

  • Port: 8809 (default)
  • Image: ghcr.io/daneel-ai/companion:latest

Enable the Ollama preset to include a local Ollama container:

  • Port: 11434 (default)
  • Image: ollama/ollama:latest
  • CORS is pre-configured for Chrome extension access

Add local MCP servers from the template catalog:

TemplateDescription
FilesystemBrowse and search local files
GitHubRepository operations
SQLiteQuery local databases
PostgreSQLQuery PostgreSQL databases
Brave SearchWeb search
PuppeteerBrowser automation
EverythingLocal file search (Windows)
MemoryPersistent knowledge store

You can also add custom servers by entering the command (e.g., npx -y my-mcp-server).

Each MCP server runs in a supercorp/supergateway container that bridges stdio to SSE. Ports are assigned sequentially starting from 8810.

  1. Review the YAML preview in the settings panel.
  2. Click Export. Daneel:
    • Downloads the daneel.compose.yml file
    • Auto-registers each MCP server as http://localhost:{port}/sse in Daneel’s MCP server list
  3. Run the stack:
Terminal window
docker compose -f daneel.compose.yml up -d
  1. Daneel detects the running containers via the Companion sidecar’s service discovery endpoint.

The supercorp/supergateway image wraps any stdio-based MCP server as an HTTP/SSE endpoint:

Your MCP server (stdio) → supergateway container → HTTP/SSE on localhost:{port}
↑ ↓
└── Daneel connects here, just like any remote MCP server

Each container runs: --stdio "<command>" --port 8000 --cors

For Python-based servers, the :uvx variant of supergateway is used automatically.