diff --git a/lib/crewai/src/crewai/mcp/transports/stdio.py b/lib/crewai/src/crewai/mcp/transports/stdio.py index 9fa48960d..683c7fe81 100644 --- a/lib/crewai/src/crewai/mcp/transports/stdio.py +++ b/lib/crewai/src/crewai/mcp/transports/stdio.py @@ -69,6 +69,8 @@ class StdioTransport(BaseTransport): if allowed_commands is not None: base_command = os.path.basename(command) + # Strip extension for Windows compatibility (e.g., python.exe -> python) + base_command = os.path.splitext(base_command)[0] if base_command not in allowed_commands: raise ValueError( f"Command '{command}' is not in the allowed commands list: " diff --git a/lib/crewai/tests/mcp/test_stdio_config.py b/lib/crewai/tests/mcp/test_stdio_config.py index c620f4f78..30c6e71c6 100644 --- a/lib/crewai/tests/mcp/test_stdio_config.py +++ b/lib/crewai/tests/mcp/test_stdio_config.py @@ -1,7 +1,5 @@ """Tests for MCPServerStdio allowed_commands config integration.""" -import pytest - from crewai.mcp.config import MCPServerStdio from crewai.mcp.transports.stdio import DEFAULT_ALLOWED_COMMANDS