$ show docker/compose-for-agents
This repository is a monorepo of self-contained demo applications showing how to build and deploy multi-agent AI systems using Docker Compose, Docker Model Runner, and the MCP Gateway. It contains 12+ independent examples spanning Google ADK, A2A, Agno, CrewAI, LangGraph, Langchaingo (Go), Spring AI, Akka, and a Next.js agent UI. Each subproject is a standalone composition with its own compose.yaml, Dockerfile, and README, designed to run with a single `docker compose up --build` after creating a `.mcp.env` file. The demos are reference architectures rather than a single product, emphasizing local LLM inference, MCP tool integration, and switching between local and cloud models via compose override files.
The LLM identified 3 files worth highlighting for reuse:
Implements create_mcp_toolsets, a factory that parses tool spec strings (e.g., mcp/server:tool), connects to an MCP gateway over SSE or STDIO (via socat), and returns MCPToolset objects for ADK agents. This encapsulates transport negotiation and tool registration, making it directly reusable in any ADK-based project that needs MCP tools without hardcoding server details.
A React hook that consumes an AI response stream from an Agno playground endpoint, parsing text deltas, tool calls, and reasoning steps. It handles cancellation and error states and is decoupled from UI components, so it can be extracted into any chat application that needs streaming LLM responses.
Demonstrates an LLM-as-a-judge evaluation pattern for chat/RAG responses, combining string comparison, embedding similarity (via Weaviate), and LLM-based scoring. This is a reusable testing pattern for validating agent outputs without human labels, and it runs against real Docker services via Testcontainers.