Compare commits

2 Commits
main ... mcps

Author SHA1 Message Date
e280269150 chore: update docker-compose to make mcp_net attachable
- Changed the mcp_net network configuration from external to attachable to allow services to connect dynamically.
2025-11-26 08:46:42 -05:00
8baa104780 chore: update docker-compose configuration
- Added new external networks: public, badge-net, and mcp_net.
- Changed service network assignments to use the new networks.
- Updated restart policy condition for services to 'any'.
- Adjusted healthcheck commands and service commands for consistency.
- Commented out the firecrawl-mcp service for future reference.
2025-11-26 08:40:43 -05:00

View File

@@ -1,8 +1,11 @@
version: '3.8'
networks: networks:
traefik: public:
external: true external: true
badge-net:
external: true
mcp_net:
driver: overlay
attachable: true
services: services:
pieces-mcp: pieces-mcp:
@@ -18,8 +21,9 @@ services:
- "traefik.http.services.pieces-mcp.loadbalancer.server.port=8096" - "traefik.http.services.pieces-mcp.loadbalancer.server.port=8096"
- "traefik.http.middlewares.pieces-mcp-stripprefix.stripprefix.prefixes=/pieces-mcp" - "traefik.http.middlewares.pieces-mcp-stripprefix.stripprefix.prefixes=/pieces-mcp"
- "traefik.http.routers.pieces-mcp.middlewares=pieces-mcp-stripprefix" - "traefik.http.routers.pieces-mcp.middlewares=pieces-mcp-stripprefix"
replicas: 1
restart_policy: restart_policy:
condition: on-failure condition: any
healthcheck: healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':8096 ' || exit 1"] test: ["CMD", "sh", "-c", "netstat -tln | grep ':8096 ' || exit 1"]
interval: 30s interval: 30s
@@ -27,43 +31,45 @@ services:
retries: 3 retries: 3
start_period: 40s start_period: 40s
command: > command: >
--named-server pieces-os 'mcp-proxy --transport sse http://host.docker.internal:39300/model_context_protocol/2024-11-05/sse' --named-server pieces-os 'mcp-proxy --transport streamablehttp http://host.docker.internal:39301/model_context_protocol/2025-03-26/mcp'
--port=8096 --host=0.0.0.0 --allow-origin='*' --port=8096 --host=0.0.0.0 --allow-origin='*'
networks: networks:
- traefik - public
- badge-net
firecrawl-mcp: - mcp_net
image: git.baked.rocks/vasceannie/firecrawl-mcp:latest # firecrawl-mcp:
deploy: # image: git.baked.rocks/vasceannie/firecrawl-mcp:latest
placement: # deploy:
constraints: # placement:
- node.hostname == wslbox # constraints:
labels: # - node.hostname == wslbox
- "traefik.enable=true" # labels:
- "traefik.http.routers.firecrawl-mcp.rule=Host(`mcp.box`) && PathPrefix(`/firecrawl-mcp`)" # - "traefik.enable=true"
- "traefik.http.routers.firecrawl-mcp.entrypoints=web" # - "traefik.http.routers.firecrawl-mcp.rule=Host(`mcp.box`) && PathPrefix(`/firecrawl-mcp`)"
- "traefik.http.services.firecrawl-mcp.loadbalancer.server.port=8097" # - "traefik.http.routers.firecrawl-mcp.entrypoints=web"
- "traefik.http.middlewares.firecrawl-mcp-stripprefix.stripprefix.prefixes=/firecrawl-mcp" # - "traefik.http.services.firecrawl-mcp.loadbalancer.server.port=8097"
- "traefik.http.routers.firecrawl-mcp.middlewares=firecrawl-mcp-stripprefix" # - "traefik.http.middlewares.firecrawl-mcp-stripprefix.stripprefix.prefixes=/firecrawl-mcp"
restart_policy: # - "traefik.http.routers.firecrawl-mcp.middlewares=firecrawl-mcp-stripprefix"
condition: on-failure # replicas: 1
environment: # restart_policy:
- FIRECRAWL_API_URL=http://crawl.toy # condition: any
- FIRECRAWL_API_KEY=dummy-key # environment:
healthcheck: # - FIRECRAWL_API_URL=http://crawl.toy
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"] # - FIRECRAWL_API_KEY=dummy-key
interval: 30s # healthcheck:
timeout: 10s # test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
retries: 3 # interval: 30s
start_period: 40s # timeout: 10s
command: > # retries: 3
--pass-environment # start_period: 40s
--stateless # command: >
--transport streamablehttp # --pass-environment
--port=8097 --host=0.0.0.0 # --stateless
npx firecrawl-mcp # --transport streamablehttp
networks: # --port=8097 --host=0.0.0.0
- traefik # npx firecrawl-mcp
# networks:
# - traefik
context7-mcp: context7-mcp:
image: git.baked.rocks/vasceannie/context7-mcp:latest image: git.baked.rocks/vasceannie/context7-mcp:latest
@@ -78,8 +84,9 @@ services:
- "traefik.http.services.context7-mcp.loadbalancer.server.port=8098" - "traefik.http.services.context7-mcp.loadbalancer.server.port=8098"
- "traefik.http.middlewares.context7-mcp-stripprefix.stripprefix.prefixes=/context7-mcp" - "traefik.http.middlewares.context7-mcp-stripprefix.stripprefix.prefixes=/context7-mcp"
- "traefik.http.routers.context7-mcp.middlewares=context7-mcp-stripprefix" - "traefik.http.routers.context7-mcp.middlewares=context7-mcp-stripprefix"
replicas: 1
restart_policy: restart_policy:
condition: on-failure condition: any
healthcheck: healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"] test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
interval: 30s interval: 30s
@@ -90,8 +97,9 @@ services:
--named-server context7 'mcp-proxy --stateless --transport streamablehttp --headers CONTEXT7_API_KEY ctx7sk-f6f1b998-88a2-4e78-9d21-433545326e6c https://mcp.context7.com/mcp' --named-server context7 'mcp-proxy --stateless --transport streamablehttp --headers CONTEXT7_API_KEY ctx7sk-f6f1b998-88a2-4e78-9d21-433545326e6c https://mcp.context7.com/mcp'
--port=8098 --host=0.0.0.0 --allow-origin='*' --port=8098 --host=0.0.0.0 --allow-origin='*'
networks: networks:
- traefik - public
- badge-net
- mcp_net
# knowledge-graph-mcp: # knowledge-graph-mcp:
# image: git.baked.rocks/vasceannie/knowledge-graph-mcp:latest # image: git.baked.rocks/vasceannie/knowledge-graph-mcp:latest
# deploy: # deploy:
@@ -105,8 +113,9 @@ services:
# - "traefik.http.services.knowledge-graph-mcp.loadbalancer.server.port=8099" # - "traefik.http.services.knowledge-graph-mcp.loadbalancer.server.port=8099"
# - "traefik.http.middlewares.knowledge-graph-mcp-stripprefix.stripprefix.prefixes=/knowledge-graph-mcp" # - "traefik.http.middlewares.knowledge-graph-mcp-stripprefix.stripprefix.prefixes=/knowledge-graph-mcp"
# - "traefik.http.routers.knowledge-graph-mcp.middlewares=knowledge-graph-mcp-stripprefix" # - "traefik.http.routers.knowledge-graph-mcp.middlewares=knowledge-graph-mcp-stripprefix"
# replicas: 1
# restart_policy: # restart_policy:
# condition: on-failure # condition: any
# healthcheck: # healthcheck:
# test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"] # test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
# interval: 30s # interval: 30s
@@ -132,8 +141,9 @@ services:
- "traefik.http.services.xpipe-mcp.loadbalancer.server.port=8100" - "traefik.http.services.xpipe-mcp.loadbalancer.server.port=8100"
- "traefik.http.middlewares.xpipe-mcp-stripprefix.stripprefix.prefixes=/xpipe-mcp" - "traefik.http.middlewares.xpipe-mcp-stripprefix.stripprefix.prefixes=/xpipe-mcp"
- "traefik.http.routers.xpipe-mcp.middlewares=xpipe-mcp-stripprefix" - "traefik.http.routers.xpipe-mcp.middlewares=xpipe-mcp-stripprefix"
replicas: 1
restart_policy: restart_policy:
condition: on-failure condition: any
healthcheck: healthcheck:
test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"] test: ["CMD", "sh", "-c", "netstat -tln | grep ':809[6-9]\\|:8100' || exit 1"]
interval: 30s interval: 30s
@@ -144,4 +154,6 @@ services:
--named-server xpipe 'mcp-proxy --transport streamablehttp --headers Authorization "Bearer 27d1c4ca-dfec-4d38-adc1-1e0f4bcbaadc" http://host.docker.internal:21721/mcp' --named-server xpipe 'mcp-proxy --transport streamablehttp --headers Authorization "Bearer 27d1c4ca-dfec-4d38-adc1-1e0f4bcbaadc" http://host.docker.internal:21721/mcp'
--port=8100 --host=0.0.0.0 --allow-origin='*' --port=8100 --host=0.0.0.0 --allow-origin='*'
networks: networks:
- traefik - public
- badge-net
- mcp_net