From 91168829ad48bccc34ffa143a93b5e9e5be9f0b4 Mon Sep 17 00:00:00 2001 From: Vasilije <8619304+Vasilije1990@users.noreply.github.com> Date: Tue, 1 Jul 2025 13:15:32 +0200 Subject: [PATCH] feat: add mcp switch (#1039) ## Description ## DCO Affirmation I affirm that all code in every commit of this pull request conforms to the terms of the Topoteretes Developer Certificate of Origin. --- cognee-mcp/entrypoint.sh | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/cognee-mcp/entrypoint.sh b/cognee-mcp/entrypoint.sh index 91a88c572..7a7cf70b8 100644 --- a/cognee-mcp/entrypoint.sh +++ b/cognee-mcp/entrypoint.sh @@ -4,6 +4,10 @@ set -e # Exit on error echo "Debug mode: $DEBUG" echo "Environment: $ENVIRONMENT" +# Set default transport mode if not specified +TRANSPORT_MODE=${TRANSPORT_MODE:-"stdio"} +echo "Transport mode: $TRANSPORT_MODE" + # Run Alembic migrations with proper error handling. # Note on UserAlreadyExists error handling: # During database migrations, we attempt to create a default user. If this user @@ -28,19 +32,31 @@ fi echo "Database migrations done." -echo "Starting Cognee MCP Server..." +echo "Starting Cognee MCP Server with transport mode: $TRANSPORT_MODE" # Add startup delay to ensure DB is ready sleep 2 -# Modified Gunicorn startup with error handling +# Modified startup with transport mode selection and error handling if [ "$ENVIRONMENT" = "dev" ] || [ "$ENVIRONMENT" = "local" ]; then if [ "$DEBUG" = "true" ]; then echo "Waiting for the debugger to attach..." - exec python -m debugpy --wait-for-client --listen 0.0.0.0:5678 -m cognee + if [ "$TRANSPORT_MODE" = "sse" ]; then + exec python -m debugpy --wait-for-client --listen 0.0.0.0:5678 -m cognee --transport sse + else + exec python -m debugpy --wait-for-client --listen 0.0.0.0:5678 -m cognee --transport stdio + fi else - exec cognee + if [ "$TRANSPORT_MODE" = "sse" ]; then + exec cognee --transport sse + else + exec cognee --transport stdio + fi fi else - exec cognee + if [ "$TRANSPORT_MODE" = "sse" ]; then + exec cognee --transport sse + else + exec cognee --transport stdio + fi fi