Skip to main content
Glama
gqy20

Europe PMC Literature Search MCP Server

publish.yml1.95 kB
name: Publish Python Package on: push: tags: - 'v*' jobs: publish: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6.0.1 - name: Set up Python uses: actions/setup-python@v6.1.0 with: python-version: '3.12' - name: Install uv run: pip install uv - name: Extract tag version id: version run: | # 从 Git 标签提取版本号 (例如 v0.1.9 -> 0.1.9) VERSION=${GITHUB_REF#refs/tags/v} echo "version=$VERSION" >> $GITHUB_OUTPUT echo "Tag version: $VERSION" - name: Clean previous builds run: | rm -rf dist/ build/ *.egg-info/ - name: Build package run: | uv build --verbose ls -la dist/ - name: Verify package version run: | # 构建包的版本信息 PACKAGE_VERSION=$(uvx --from . article-mcp info 2>/dev/null | grep -o 'version[^0-9]*[0-9]\+\.[0-9]\+\.[0-9]\+' | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+' || echo "unknown") EXPECTED_VERSION="${{ steps.version.outputs.version }}" echo "Expected version: $EXPECTED_VERSION" echo "Package version: $PACKAGE_VERSION" # 验证文件名是否包含正确的版本号 DIST_FILES=$(ls dist/) echo "Distribution files: $DIST_FILES" if [[ ! "$DIST_FILES" =~ "$EXPECTED_VERSION" ]]; then echo "❌ ERROR: Package version mismatch!" echo "Expected version: $EXPECTED_VERSION" echo "Found in files: $DIST_FILES" exit 1 fi echo "✅ Version verification passed" - name: Test package installation run: | # 测试包是否能正确安装和运行 uvx --from . article-mcp info - name: Publish to PyPI env: TWINE_USERNAME: __token__ TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} run: | pip install twine twine upload --verbose dist/*

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gqy20/article-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server