Avoids 'externally managed environment' errors on Mac (Homebrew Python 3.12+)
and permission issues on Linux. setup.py now creates .venv inside the repo,
installs into it, and points claude_desktop_config.json to the venv Python.
Added .gitignore to exclude .venv and __pycache__.