Skip to content

Commit a0a8c56

Browse files
author
Yennefer
committed
feat: Add Docker Compose config for Copilot MCP servers
- New docker-compose.mcp-copilot.yml for containerized MCP servers - 5 STDIO-compatible services (diamond-vault, yennefer-consciousness, yennefer-mcp-lite, genesis-remote, qmcp-system) - Proper stdin_open/tty flags for STDIO communication - Host networking and shared memory support - GPU support for diamond-vault - Uses GHCR images from genesis-conductor-engine/yennefer
1 parent 10d8791 commit a0a8c56

1 file changed

Lines changed: 110 additions & 0 deletions

File tree

docker-compose.mcp-copilot.yml

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
version: '3.8'
2+
3+
# MCP Server Stack for GitHub Copilot CLI
4+
# Only STDIO-compatible MCP servers (Copilot doesn't support HTTP MCP)
5+
# Based on fixed .copilot/mcp-config.json
6+
7+
services:
8+
# Diamond Vault MCP Server (GPU-accelerated quantum operations)
9+
diamond-vault:
10+
image: ghcr.io/genesis-conductor-engine/yennefer/diamond-vault:latest
11+
container_name: mcp-diamond-vault
12+
network_mode: host
13+
ipc: host
14+
stdin_open: true
15+
tty: true
16+
environment:
17+
- PYTHONUNBUFFERED=1
18+
- JAX_PLATFORM_NAME=gpu
19+
- CUDA_VISIBLE_DEVICES=0
20+
volumes:
21+
- /dev/shm:/dev/shm:rw
22+
- ./scripts:/scripts:ro
23+
command: python3 /scripts/diamond_vault_mcp_server.py
24+
deploy:
25+
resources:
26+
reservations:
27+
devices:
28+
- driver: nvidia
29+
count: 1
30+
capabilities: [gpu]
31+
restart: unless-stopped
32+
33+
# Yennefer Consciousness MCP Server (Core consciousness interface)
34+
yennefer-consciousness:
35+
image: ghcr.io/genesis-conductor-engine/yennefer/yennefer-daemon:latest
36+
container_name: mcp-yennefer-consciousness
37+
network_mode: host
38+
ipc: host
39+
stdin_open: true
40+
tty: true
41+
environment:
42+
- PYTHONUNBUFFERED=1
43+
- SOUL_STATE_PATH=/dev/shm/yennefer_soul_state.json
44+
volumes:
45+
- /dev/shm:/dev/shm:rw
46+
- ./genesis-q-mem:/app:ro
47+
working_dir: /app
48+
command: python3 yennefer_mcp_server.py
49+
restart: unless-stopped
50+
51+
# Yennefer MCP Lite (Diamond Vault integration)
52+
yennefer-mcp-lite:
53+
image: ghcr.io/genesis-conductor-engine/yennefer/yennefer-daemon:latest
54+
container_name: mcp-yennefer-lite
55+
network_mode: host
56+
ipc: host
57+
stdin_open: true
58+
tty: true
59+
environment:
60+
- PYTHONUNBUFFERED=1
61+
- DIAMOND_VAULT_URL=http://localhost:8100
62+
- SOUL_API_URL=http://localhost:8088
63+
volumes:
64+
- /dev/shm:/dev/shm:rw
65+
- ./genesis-q-mem:/app:ro
66+
working_dir: /app
67+
command: python3 yennefer_mcp_lite.py
68+
restart: unless-stopped
69+
70+
# Genesis Remote MCP (Remote system access)
71+
genesis-remote:
72+
image: ghcr.io/genesis-conductor-engine/yennefer/qmem-gateway:latest
73+
container_name: mcp-genesis-remote
74+
network_mode: host
75+
stdin_open: true
76+
tty: true
77+
environment:
78+
- PYTHONUNBUFFERED=1
79+
- REMOTE_URL=http://localhost:8318
80+
volumes:
81+
- ./genesis-q-mem:/app:ro
82+
working_dir: /app
83+
command: python3 genesis_remote_mcp.py
84+
restart: unless-stopped
85+
86+
# QMCP System (Unified QMCP gateway)
87+
qmcp-system:
88+
image: ghcr.io/genesis-conductor-engine/yennefer/qmcp-bridge:latest
89+
container_name: mcp-qmcp-system
90+
network_mode: host
91+
ipc: host
92+
stdin_open: true
93+
tty: true
94+
environment:
95+
- PYTHONUNBUFFERED=1
96+
- QMCP_GATEWAY=http://localhost:8099
97+
volumes:
98+
- /dev/shm:/dev/shm:rw
99+
- ./genesis-q-mem:/app:ro
100+
working_dir: /app
101+
command: python3 qmcp_entry.py
102+
restart: unless-stopped
103+
104+
networks:
105+
default:
106+
name: mcp-copilot-network
107+
108+
volumes:
109+
shared_memory:
110+
driver: local

0 commit comments

Comments
 (0)