feat: enforce Python 3.11+ version check during MCP setup
This commit is contained in:
@@ -67,13 +67,22 @@ def get_windsurf_config_path(host_system: str) -> str:
|
||||
def setup_mcp_config() -> str:
|
||||
console.print(Panel("[bold yellow]Setting up MCP Python Environment[/bold yellow]", border_style="yellow"))
|
||||
python_paths: list[tuple[str, str]] = []
|
||||
for python_cmd in ["python", "python3.11", "python3.12", "python3.13"]:
|
||||
# Only check for Python 3.11 and higher
|
||||
for python_cmd in ["python3.11", "python3.12", "python3.13", "python3"]:
|
||||
python_path = shutil.which(python_cmd)
|
||||
if python_path:
|
||||
python_paths.append((python_cmd, python_path))
|
||||
# Verify the Python version is 3.11 or higher
|
||||
try:
|
||||
version_output = os.popen(f"{python_path} --version").read().strip()
|
||||
version_str = version_output.split()[1] # Gets the version number part
|
||||
major, minor = map(int, version_str.split('.')[:2])
|
||||
if major == 3 and minor >= 11:
|
||||
python_paths.append((python_cmd, python_path))
|
||||
except (IndexError, ValueError):
|
||||
continue
|
||||
|
||||
if not python_paths:
|
||||
console.print("[red]Error: Could not find any Python installation. Please install Python 3.11 or higher first.[/red]")
|
||||
console.print("[red]Error: Could not find any Python 3.11 or higher installation. Please install Python 3.11 or higher first.[/red]")
|
||||
path_to_env = Prompt.ask(
|
||||
"Enter the full path to your Python 3.11+ environment. For example in MacOS if you installed it using Homebrew, it would be [cyan]/opt/homebrew/bin/python3.11[/cyan] or [cyan]/opt/homebrew/bin/python3.12[/cyan]"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user