graphiti/mcp_server/docker-compose.yml
Naseem Ali d0a3cd97ae
Integrate MCP for FalkorDB (#910)
* Integrate MCP for FalkorDB

* fix lint errors
2025-10-21 12:06:57 -04:00

95 lines
No EOL
2.6 KiB
YAML

services:
neo4j:
profiles: [""]
image: neo4j:5.26.0
ports:
- "7474:7474" # HTTP
- "7687:7687" # Bolt
environment:
- NEO4J_AUTH=${NEO4J_USER:-neo4j}/${NEO4J_PASSWORD:-demodemo}
- NEO4J_server_memory_heap_initial__size=512m
- NEO4J_server_memory_heap_max__size=1G
- NEO4J_server_memory_pagecache_size=512m
volumes:
- neo4j_data:/data
- neo4j_logs:/logs
healthcheck:
test: ["CMD", "wget", "-O", "/dev/null", "http://localhost:7474"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
graphiti-mcp-neo4j:
profiles: [""]
image: zepai/knowledge-graph-mcp:latest
build:
context: .
dockerfile: Dockerfile
env_file:
- path: .env
required: false # Makes the file optional. Default value is 'true'
depends_on:
neo4j:
condition: service_healthy
environment:
- PORT=8000
- DATABASE_TYPE=neo4j
- NEO4J_URI=${NEO4J_URI:-bolt://neo4j:7687}
- NEO4J_USER=${NEO4J_USER:-neo4j}
- NEO4J_PASSWORD=${NEO4J_PASSWORD:-demodemo}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- MODEL_NAME=${MODEL_NAME}
- PATH=/root/.local/bin:${PATH}
- SEMAPHORE_LIMIT=${SEMAPHORE_LIMIT:-10}
ports:
- "8000:8000" # Expose the MCP server via HTTP for SSE transport
command: ["uv", "run", "graphiti_mcp_server.py", "--transport", "sse"]
falkordb:
profiles: ["falkordb"]
image: falkordb/falkordb:latest
ports:
- "6379:6379"
command: ["falkordb-server", "--loadmodule", "/FalkorDB/bin/src/falkordb.so"]
volumes:
- falkordb_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
graphiti-mcp-falkordb:
profiles: ["falkordb"]
build:
args:
INSTALL_FALKORDB: "true"
context: .
dockerfile: Dockerfile
env_file:
- path: .env
required: false
depends_on:
falkordb:
condition: service_healthy
environment:
- PORT=8001
- DATABASE_TYPE=falkordb
- FALKORDB_HOST=falkordb
- FALKORDB_PORT=6379
- FALKORDB_USER=${FALKORDB_USER:-}
- FALKORDB_PASSWORD=${FALKORDB_PASSWORD:-}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- MODEL_NAME=${MODEL_NAME}
- PATH=/root/.local/bin:${PATH}
- SEMAPHORE_LIMIT=${SEMAPHORE_LIMIT:-10}
ports:
- "8001:8001" # Expose the MCP server via HTTP for SSE transport
command: ["uv", "run", "graphiti_mcp_server.py", "--transport", "sse"]
volumes:
neo4j_data:
neo4j_logs:
falkordb_data: