Skip to main content
Glama
tas1337

MCP A2A AP2 Food Delivery & Payments

by tas1337
docker-compose.yml3.91 kB
name: mcp-a2a-ap2-im-hungry services: # ============================================================================= # REGISTRY - Service Discovery # ============================================================================= registry: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: registry command: node dist/mock-agents/registry/server.js ports: - "8004:8004" networks: - a2a-network restart: unless-stopped # ============================================================================= # MCP SERVER - What Cursor connects to # ============================================================================= mcp-server: build: context: .. dockerfile: deploy/Dockerfile container_name: mcp-server command: node dist/src/index.js ports: - "8000:8000" networks: - a2a-network depends_on: - registry - doordash-agent - ubereats-agent - grubhub-agent - stripe-agent - user-wallet restart: unless-stopped environment: - REGISTRY_HOST=registry - WALLET_HOST=user-wallet # ============================================================================= # A2A AGENTS - Food Delivery # ============================================================================= doordash-agent: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: doordash-agent command: node dist/mock-agents/food-delivery/food-agents.js ports: - "8001:8001" networks: - a2a-network depends_on: - registry restart: unless-stopped environment: - AGENT_NAME=doordash - REGISTRY_HOST=registry ubereats-agent: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: ubereats-agent command: node dist/mock-agents/food-delivery/food-agents.js ports: - "8002:8002" networks: - a2a-network depends_on: - registry restart: unless-stopped environment: - AGENT_NAME=ubereats - REGISTRY_HOST=registry grubhub-agent: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: grubhub-agent command: node dist/mock-agents/food-delivery/food-agents.js ports: - "8003:8003" networks: - a2a-network depends_on: - registry restart: unless-stopped environment: - AGENT_NAME=grubhub - REGISTRY_HOST=registry # ============================================================================= # AP2 AGENT - Stripe Payments (with Mandates) # ============================================================================= stripe-agent: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: stripe-agent command: node dist/mock-agents/payments/stripe-agent.js ports: - "8005:8005" networks: - a2a-network depends_on: - registry restart: unless-stopped environment: - REGISTRY_HOST=registry - USER_SECRET=user-secret-key # ============================================================================= # USER WALLET - Simulates user's phone/wallet for authorization # ============================================================================= # This is the KEY difference from before! # Agent calls this service to get user authorization # Wallet holds the private key and signs mandates after "Face ID" user-wallet: build: context: .. dockerfile: deploy/Dockerfile.agents container_name: user-wallet command: node dist/mock-agents/user-wallet/wallet-service.js ports: - "8006:8006" networks: - a2a-network restart: unless-stopped environment: - USER_SECRET=user-secret-key networks: a2a-network: driver: bridge

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tas1337/mcp-a2a-ap2-im-hungry'

If you have feedback or need assistance with the MCP directory API, please join our Discord server