OpenPyXL MCP Server
by jonemo
Verified
- openpyxl-mcp-server
- .github
- workflows
name: Release New Version
on:
workflow_dispatch:
inputs:
version:
description: "Version number (e.g. 1.2.3)"
required: true
type: string
permissions:
contents: write # required for creating releases
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, macos-latest]
include:
- os: windows-latest
artifact_name: openpyxl_mcp_server.exe
- os: macos-latest
artifact_name: openpyxl_mcp_server
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements-dev.txt
- name: Build executable
run: |
pyinstaller openpyxl_mcp_server.spec
- name: Sign macOS executable
if: matrix.os == 'macos-latest'
run: |
codesign --force --deep --sign - dist/openpyxl_mcp_server
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.artifact_name }}
path: ./dist/${{ matrix.artifact_name }}
release:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4 # Because the gh tool requires a repo. gh used here because the official action/create-release is deprecated since 2021.
- name: Download Windows artifact
uses: actions/download-artifact@v4
with:
name: openpyxl_mcp_server.exe
path: ./dist
- name: Download macOS artifact
uses: actions/download-artifact@v4
with:
name: openpyxl_mcp_server
path: ./dist
- name: Create Release and Upload Assets
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
gh release create v${{ inputs.version }} \
--title "v${{ inputs.version }}" \
--notes "Release v${{ inputs.version }}" \
./dist/openpyxl_mcp_server.exe \
./dist/openpyxl_mcp_server