Merge pull request #16 from ledilson/patch-1

Update setup_mcp.py to work with different platforms
This commit is contained in:
Cole Medin 2025-02-24 12:55:55 -06:00 committed by GitHub
commit 27a87a0cc9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -2,6 +2,7 @@ import os
import json
import subprocess
import sys
import platform
def setup_venv():
# Get the absolute path to the current directory
@ -21,8 +22,12 @@ def setup_venv():
# Install requirements if we just created the venv
if venv_created:
print("\nInstalling requirements...")
# Use the venv's pip to install requirements
pip_path = os.path.join(venv_path, 'Scripts', 'pip.exe')
# Determine the correct pip path based on the OS
if platform.system() == "Windows":
pip_path = os.path.join(venv_path, 'Scripts', 'pip.exe')
else: # macOS or Linux
pip_path = os.path.join(venv_path, 'bin', 'pip')
requirements_path = os.path.join(base_path, 'requirements.txt')
subprocess.run([pip_path, 'install', '-r', requirements_path], check=True)
print("Requirements installed successfully!")
@ -31,8 +36,12 @@ def generate_mcp_config():
# Get the absolute path to the current directory
base_path = os.path.abspath(os.path.dirname(__file__))
# Construct the paths
python_path = os.path.join(base_path, 'venv', 'Scripts', 'python.exe')
# Determine the correct python path based on the OS
if platform.system() == "Windows":
python_path = os.path.join(base_path, 'venv', 'Scripts', 'python.exe')
else: # macOS or Linux
python_path = os.path.join(base_path, 'venv', 'bin', 'python')
server_script_path = os.path.join(base_path, 'mcp_server.py')
# Create the config dictionary
@ -49,7 +58,7 @@ def generate_mcp_config():
config_path = os.path.join(base_path, 'mcp-config.json')
with open(config_path, 'w') as f:
json.dump(config, f, indent=2)
print(f"\nMCP configuration has been written to: {config_path}")
print(f"\nMCP configuration for Cursor:\n\n{python_path} {server_script_path}")
print("\nMCP configuration for Windsurf/Claude Desktop:")