Use this skill when using UV (Python package manager), needs to set up Python virtual environments, install/manage Python CLI tools, migrate from pip/pipx to UV, Python version management, or troubleshoot UV-related issues.
Use this skill when using UV (Python package manager), needs to set up Python virtual environments, install/manage Python CLI tools, migrate from pip/pipx to UV, Python version management, or troubleshoot UV-related issues.
UV - Python Package Manager Skill
Overview
UV is an extremely fast Python package and project manager written in Rust. This skill provides guidance on using UV for Python development, with particular focus on MCP (Model Context Protocol) server integration and modern tool management workflows.
UV replaces multiple tools: pip, pip-tools, pipx, poetry, pyenv, twine, virtualenv, and more - delivering 10-100x faster performance through intelligent caching and parallel operations.
Version Awareness
Recommended Version: UV 0.9.7+ (Latest as of October 2025)
Before starting, check your UV version:
uv --version
Important Version-Specific Changes:
UV 0.9.6+: Python 3.14 is now the default (previously 3.13)
UV 0.9.6+: Free-threaded Python 3.14+ supported without explicit opt-in
UV 0.9.6+: uv build --clear flag available for cleaning build artifacts
UV 0.9.7+: Security updates for tar/ZIP archive handling
If your version is older than 0.9.0, upgrade for the best experience:
# Using pip
pip install --upgrade uv
# Or reinstall using official installer# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"# Unix/Mac
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install development tools once
uv tool install black
uv tool install flake8
uv tool install mypy
uv tool install pytest
# Use daily
black .
flake8 src/
mypy src/
pytest tests/
MCP Server Usage
# Test published MCP servers
uvx mcp-server-sqlite --db-path test.db
uvx mcp-server-git --repository /path/to/repo
# Local MCP server development
uvx --from /path/to/project server.py --env config.env
Project Initialization
# Create new project with UV
uv init my-project
cd my-project
# Add dependencies
uv add requests fastapi
# Run project
uv run python main.py
Python Version Management
# List available Python versions
uv python list
# Install default Python version (3.14 in UV 0.9.6+)
uv python install
# Install specific Python version
uv python install 3.12
uv python install 3.13
# Use in project
uv python pin 3.12
Note: As of UV 0.9.6, Python 3.14 is the default version. If you need Python 3.13 or earlier, explicitly specify the version.
Inline Script Dependencies (PEP 723)
UV supports defining dependencies directly in Python script comments:
#!/usr/bin/env -S uv run --script# /// script# dependencies = [# "requests",# "pandas",# ]# ///import requests
import pandas as pd
# Your code here
Run with automatic dependency installation:
# UV installs dependencies automatically
uv run script.py
Benefits:
Self-contained single-file scripts
No pyproject.toml needed
Easy sharing and distribution
Perfect for utilities and automation
See Inline Script Metadata Reference for comprehensive examples including MCP servers, web applications, data processing, and CLI tools.
By following these patterns and utilizing the reference documentation, you'll have a clean, efficient, and maintainable Python development environment.