========================================
Questions MCP Server - UV/UVX 使用指南
========================================

## 安装 uv

Windows:
  pip install uv

Linux/macOS:
  pip install uv


## 1. 使用 uv 构建包

Windows:
  build_with_uv.bat

Linux/macOS:
  chmod +x build_with_uv.sh
  ./build_with_uv.sh

或手动执行:
  uv build


## 2. 使用 uv 安装和运行

# 安装包
uv pip install dist/questions_mcp_server-1.0.0-py3-none-any.whl

# 或从当前目录安装（开发模式）
uv pip install -e .

# 运行服务
python -m src.main


## 3. 使用 uvx 直接运行（推荐）

# 从本地 wheel 包运行
uvx --from dist/questions_mcp_server-1.0.0-py3-none-any.whl questions-mcp-server

# 如果包已经发布到 PyPI，可以直接运行
uvx questions-mcp-server


## 4. 使用 uv 管理虚拟环境

# 创建虚拟环境
uv venv

# 激活虚拟环境
# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate

# 使用 uv 安装依赖（比 pip 快很多）
uv pip install -r requirements.txt


## 5. 发布到 PyPI

# 安装 twine
uv pip install twine

# 上传到 TestPyPI（测试）
twine upload --repository testpypi dist/*

# 上传到 PyPI（正式发布）
twine upload dist/*


## 6. 从 PyPI 安装后使用

用户安装:
  uvx questions-mcp-server

或:
  uv pip install questions-mcp-server
  questions-mcp-server


## 优势

✓ uv 比 pip 快 10-100 倍
✓ uvx 可以在隔离环境中运行工具，无需安装
✓ 更好的依赖解析和锁定
✓ 兼容现有 Python 生态系统


## 文件说明

- pyproject.toml      项目配置（使用 hatchling 构建）
- build_with_uv.bat   Windows 构建脚本
- build_with_uv.sh    Linux/macOS 构建脚本
- uv.lock            uv 依赖锁定文件（自动生成）


## 常用命令

# 查看 uv 版本
uv --version

# 查看已安装的包
uv pip list

# 更新包
uv pip install --upgrade questions-mcp-server

# 卸载包
uv pip uninstall questions-mcp-server

# 清理构建文件
rm -rf dist/ build/ *.egg-info


## 配置环境变量

在运行前，确保配置 .env 文件:
  EMBEDDING_API_KEY=your_api_key
  EXTERNAL_API_KEY=your_external_api_key


========================================
更多信息: https://github.com/astral-sh/uv
========================================
