mcpmon 0.1.0 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"name": "🏃", "description": "Run Docker container to upload Python distribution packages to PyPI", "inputs": {"user": {"description": "PyPI user", "required": false}, "password": {"description": "Password for your PyPI user or an access token", "required": false}, "repository-url": {"description": "The repository URL to use", "required": false}, "packages-dir": {"description": "The target directory for distribution", "required": false}, "verify-metadata": {"description": "Check metadata before uploading", "required": false}, "skip-existing": {"description": "Do not fail if a Python package distribution exists in the target package index", "required": false}, "verbose": {"description": "Show verbose output.", "required": false}, "print-hash": {"description": "Show hash values of files to be uploaded", "required": false}, "attestations": {"description": "[EXPERIMENTAL] Enable experimental support for PEP 740 attestations. Only works with PyPI and TestPyPI via Trusted Publishing.", "required": false}}, "runs": {"using": "docker", "image": "docker://ghcr.io/pypa/gh-action-pypi-publish:release-v1"}}
@@ -18,6 +18,9 @@ jobs:
18
18
  runs-on: ubuntu-latest
19
19
  permissions:
20
20
  contents: write
21
+ id-token: write
22
+ outputs:
23
+ version: ${{ steps.bump.outputs.version }}
21
24
  steps:
22
25
  - uses: actions/checkout@v4
23
26
  with:
@@ -27,6 +30,11 @@ jobs:
27
30
  with:
28
31
  python-version: "3.12"
29
32
 
33
+ - uses: actions/setup-node@v4
34
+ with:
35
+ node-version: '20'
36
+ # NOTE: No registry-url - npm OIDC trusted publishers require no auth token present
37
+
30
38
  - name: Get current version
31
39
  id: current
32
40
  run: |
@@ -35,27 +43,86 @@ jobs:
35
43
 
36
44
  - name: Bump version
37
45
  id: bump
46
+ env:
47
+ CURRENT_VERSION: ${{ steps.current.outputs.version }}
48
+ BUMP_TYPE: ${{ inputs.bump }}
38
49
  run: |
39
- IFS='.' read -r major minor patch <<< "${{ steps.current.outputs.version }}"
40
- case "${{ inputs.bump }}" in
50
+ IFS='.' read -r major minor patch <<< "$CURRENT_VERSION"
51
+ case "$BUMP_TYPE" in
41
52
  major) major=$((major + 1)); minor=0; patch=0 ;;
42
53
  minor) minor=$((minor + 1)); patch=0 ;;
43
54
  patch) patch=$((patch + 1)) ;;
44
55
  esac
45
56
  NEW_VERSION="$major.$minor.$patch"
46
57
  echo "version=$NEW_VERSION" >> $GITHUB_OUTPUT
47
- sed -i "s/version = \"${{ steps.current.outputs.version }}\"/version = \"$NEW_VERSION\"/" pyproject.toml
58
+ sed -i "s/version = \"$CURRENT_VERSION\"/version = \"$NEW_VERSION\"/" pyproject.toml
59
+ npm version "$NEW_VERSION" --no-git-tag-version
48
60
 
49
61
  - name: Commit and tag
62
+ env:
63
+ NEW_VERSION: ${{ steps.bump.outputs.version }}
50
64
  run: |
51
65
  git config user.name "github-actions[bot]"
52
66
  git config user.email "github-actions[bot]@users.noreply.github.com"
53
- git add pyproject.toml
54
- git commit -m "(release): v${{ steps.bump.outputs.version }}"
55
- git tag "v${{ steps.bump.outputs.version }}"
67
+ git add pyproject.toml package.json
68
+ git commit -m "(release): v$NEW_VERSION"
69
+ git tag "v$NEW_VERSION"
56
70
  git push && git push --tags
57
71
 
58
72
  - name: Create release
59
- run: gh release create "v${{ steps.bump.outputs.version }}" --generate-notes
60
73
  env:
61
74
  GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
75
+ NEW_VERSION: ${{ steps.bump.outputs.version }}
76
+ run: gh release create "v$NEW_VERSION" --generate-notes
77
+
78
+ # Publish to PyPI
79
+ - name: Install build
80
+ run: pip install build
81
+
82
+ - name: Build Python package
83
+ run: python -m build
84
+
85
+ - name: Publish to PyPI
86
+ uses: pypa/gh-action-pypi-publish@release/v1
87
+
88
+ # Publish to npm (OIDC trusted publisher)
89
+ - name: Upgrade npm for OIDC support
90
+ run: npm install -g npm@latest && npm --version
91
+
92
+ - name: Publish to npm
93
+ run: npm publish --provenance --access public
94
+
95
+ build-binaries:
96
+ needs: release
97
+ runs-on: ${{ matrix.os }}
98
+ permissions:
99
+ contents: write
100
+ strategy:
101
+ matrix:
102
+ include:
103
+ - os: ubuntu-latest
104
+ target: linux-x64
105
+ - os: macos-latest
106
+ target: darwin-arm64
107
+ - os: macos-13
108
+ target: darwin-x64
109
+ steps:
110
+ - uses: actions/checkout@v4
111
+ with:
112
+ ref: v${{ needs.release.outputs.version }}
113
+
114
+ - uses: oven-sh/setup-bun@v2
115
+ with:
116
+ bun-version: latest
117
+
118
+ - name: Build binary
119
+ env:
120
+ TARGET: ${{ matrix.target }}
121
+ run: bun build --compile mcpmon.ts --outfile "mcpmon-$TARGET"
122
+
123
+ - name: Upload to release
124
+ env:
125
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
126
+ VERSION: ${{ needs.release.outputs.version }}
127
+ TARGET: ${{ matrix.target }}
128
+ run: gh release upload "v$VERSION" "mcpmon-$TARGET" --clobber
@@ -0,0 +1 @@
1
+ {"version":1,"verification_material":{"certificate":"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","transparency_entries":[{"logIndex":"854724717","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"dsse","version":"0.0.1"},"integratedTime":"1769383533","inclusionPromise":{"signedEntryTimestamp":"MEQCIB4BSUl8FcjWriaoAZjRJcZ4Q4mtBJvXFdJJY5CGG4vCAiALbVdmSh0jVhxqATm9v29EnF0RCGS7D1dmMLPUHyvf9Q=="},"inclusionProof":{"logIndex":"732820455","rootHash":"eE1ekh3Xgk1rETOEFfJQR6ealKWkswYFPwZffvD5HLQ=","treeSize":"732820460","hashes":["pdGeTdNp4KglQuIDJuS3kpxwHtz8O2HLBWpvv1XO7LE=","/35+EsqjYiVWORgZJrJ8YmNvqD3zAGMwN16X+V0H4hw=","5Lpzt0SDkMvXkzuXQkM4IczaD3YieQihqNFRiJ/0j4I=","b5uNlze6Z88KmJxo+FmTFgLDzgycYBj0oyfE6wA63eY=","74KmBe4Kjlo2YGKnnWSZDq70uawwQKc6lVoDBeIyJZ0=","MZE7wMO38x+IyNk2UeqawjOiRE8nzWZDKxJ4B96w+ro=","8QqJNOeX+oNUh9Jl2kca4qTMqiJPStt58YXQM9mqAHw=","DwKwRQf8bLfvAlZCumHHqyln+KUP87MajXC3gQiRsXk=","rF9MeFdsXSqGF8vqzgxBkGyzLstktTr84yuHfN9eI14=","avGfYpplrUBIQg4ezCF3xrJGXOH8Uh/sOtaaNxjyqmo=","sss5FthkuTnwa241eO0hxXXBCR3QeypHRP73o9RzO9g=","jfukQMAVfCqCrlYwRqqUd/hbEP4yotGKGxR4+c54pfA=","OllZ6+8Si5cuPekJ1g/CP+sXnQHy2JgxYEUmTqicIqc=","dBkbakOCkLCPfwfbc9RJj5FE13JWP1L+K/QnvWbBXjw=","8UxdDATbCIzp+y4X0U33q0Ofz5gDN3girMGDR3eDQes=","i0MObzT1TBsOoj2fSfX5tVy/0RDAzekFRhxMA9dNLRk=","tpLJI2Sg9ZYY8iWiNmofGyoEHdnSBSJwiMmlIBYhOfQ=","O8/imYCTZtbxIc+69c8pb8IaxPdmSK7UPXh/ip+hoLI=","6OLWbtKvxLyT2cr4F2qdHh0quyYiSl/P7LpDfVrK6R8=","WFmkMhmL2tOzDi6lp4zGgaCzwux2vGOM44v1vr1wuDs=","F9MSQ5SmoFr+hoADclpdFY52/TLfHDnNPYb9ZNYO5gI=","T4DqWD42hAtN+vX8jKCWqoC4meE4JekI9LxYGCcPy1M="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n732820460\neE1ekh3Xgk1rETOEFfJQR6ealKWkswYFPwZffvD5HLQ=\n\n— rekor.sigstore.dev wNI9ajBGAiEAu2Y7qOW6TowsdnlINmGgzDLDuJ3Aef6HUi8Z+Oia+rACIQDpLVUacCCAMP3/rV66VfEaIJptyZcu7YttNHVsT2kKqw==\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiZHNzZSIsInNwZWMiOnsiZW52ZWxvcGVIYXNoIjp7ImFsZ29yaXRobSI6InNoYTI1NiIsInZhbHVlIjoiZmQ2MjQ2YzYxYmJlYzNiMjU5ZDQ4MjFkMWVlY2E0ZGFhMjgxZDE1ODMxMDEzY2VjMTljMWEwMzU5NzgxY2JlMSJ9LCJwYXlsb2FkSGFzaCI6eyJhbGdvcml0aG0iOiJzaGEyNTYiLCJ2YWx1ZSI6IjBiNWJiZDVjNjBmYzIyZmFhNWE0MjU2OGQxODUwYWNlZjkxYWUwZGI2NGEzNDJlMGQzMWQ3YjBhZTQ5MDcwYWEifSwic2lnbmF0dXJlcyI6W3sic2lnbmF0dXJlIjoiTUVVQ0lRRFFGek5wMkJYYXZuRWpZOTVINm83WVJ1VlJKK1FvNGF4a3Jya3lwa1JJWndJZ1RWQ3o0L0UvNy9EV0sySEF3OXorcERObzczblZscjVsWmE3NldiekxPVE09IiwidmVyaWZpZXIiOiJMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1Vkc1ZFTkRRbWgxWjBGM1NVSkJaMGxWVUc5a1lVcEZlRTFTUzNkRFVYVXZVbWgyY0dSMUwxWTJhblpSZDBObldVbExiMXBKZW1vd1JVRjNUWGNLVG5wRlZrMUNUVWRCTVZWRlEyaE5UV015Ykc1ak0xSjJZMjFWZFZwSFZqSk5ValIzU0VGWlJGWlJVVVJGZUZaNllWZGtlbVJIT1hsYVV6RndZbTVTYkFwamJURnNXa2RzYUdSSFZYZElhR05PVFdwWmQwMVVTVEZOYWsxNVRsUk5lVmRvWTA1TmFsbDNUVlJKTVUxcVRYcE9WRTE1VjJwQlFVMUdhM2RGZDFsSUNrdHZXa2w2YWpCRFFWRlpTVXR2V2tsNmFqQkVRVkZqUkZGblFVVnFOVFpJTjNBMVRIbDZTR1paTHpaS2Ntc3JMemMzVlhSbVUxUXllbEkxUW1wUlVsY0tVbUZLVkd0NVlYZE9aVE4wVUcxT1ZYaGlaREo0U2xOc2EyMHhhMGxXUVhWVmRUSlBORnBpVDJ4SVVVUmhXbWhJTmpaUFEwSlViM2RuWjFVeVRVRTBSd3BCTVZWa1JIZEZRaTkzVVVWQmQwbElaMFJCVkVKblRsWklVMVZGUkVSQlMwSm5aM0pDWjBWR1FsRmpSRUY2UVdSQ1owNVdTRkUwUlVablVWVkVLM2hKQ21wek9GSm5ZbFE0S3pCa2JuWkthekVyVHpoc1ZITjNkMGgzV1VSV1VqQnFRa0puZDBadlFWVXpPVkJ3ZWpGWmEwVmFZalZ4VG1wd1MwWlhhWGhwTkZrS1drUTRkMWRuV1VSV1VqQlNRVkZJTDBKR1FYZFViMXBOWVVoU01HTklUVFpNZVRsdVlWaFNiMlJYU1hWWk1qbDBUREpKZUU0emIzWmlWMDUzWWxjNWRRcE1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU0wcHNZa2RXYUdNeVZYVmxWekZ6VVVoS2JGcHVUWFpoUjFab1draE5kbUpYUm5CaWFrRTFDa0puYjNKQ1owVkZRVmxQTDAxQlJVSkNRM1J2WkVoU2QyTjZiM1pNTTFKMllUSldkVXh0Um1wa1IyeDJZbTVOZFZveWJEQmhTRlpwWkZoT2JHTnRUbllLWW01U2JHSnVVWFZaTWpsMFRVSTRSME5wYzBkQlVWRkNaemM0ZDBGUlNVVkZXR1IyWTIxMGJXSkhPVE5ZTWxKd1l6TkNhR1JIVG05TlJGbEhRMmx6UndwQlVWRkNaemM0ZDBGUlRVVkxSMUV3VGxSSmVWcEhVWGhQVkdkM1RqSk5lVTFxUlRSUFZHUm9XVEphYVUxVWF6Uk5iVlV3VFVSWk0wNXRTVEZOUjFVeENrNUhWWGRHVVZsTFMzZFpRa0pCUjBSMmVrRkNRa0ZSU0ZWdFZuTmFWMFo2V2xSQldrSm5iM0pDWjBWRlFWbFBMMDFCUlVaQ1FYUnBUVlJrTmt3eU1Xb0tZMGN4ZG1KcVFXUkNaMjl5UW1kRlJVRlpUeTlOUVVWSFFrRTVlVnBYV25wTU1taHNXVmRTZWt3eU1XaGhWelIzVDNkWlMwdDNXVUpDUVVkRWRucEJRZ3BEUVZGMFJFTjBiMlJJVW5kamVtOTJURE5TZG1FeVZuVk1iVVpxWkVkc2RtSnVUWFZhTW13d1lVaFdhV1JZVG14amJVNTJZbTVTYkdKdVVYVlpNamwwQ2sxR2QwZERhWE5IUVZGUlFtYzNPSGRCVVd0RlZHZDRUV0ZJVWpCalNFMDJUSGs1Ym1GWVVtOWtWMGwxV1RJNWRFd3lTWGhPTTI5MllsZE9kMkpYT1hVS1RIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VEROS2JHSkhWbWhqTWxWMVpWY3hjMUZJU214YWJrMTJZVWRXYUZwSVRYWmlWMFp3WW1wQk5BcENaMjl5UW1kRlJVRlpUeTlOUVVWTFFrTnZUVXRIVVRCT1ZFbDVXa2RSZUU5VVozZE9NazE1VFdwRk5FOVVaR2haTWxwcFRWUnJORTF0VlRCTlJGa3pDazV0U1RGTlIxVXhUa2RWZDBoUldVdExkMWxDUWtGSFJIWjZRVUpEZDFGUVJFRXhibUZZVW05a1YwbDBZVWM1ZW1SSFZtdE5RelJIUTJselIwRlJVVUlLWnpjNGQwRlJkMFZKUVhkbFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKSmVFNHpiM1ppVjA1M1lsYzVkVTFFWjBkRGFYTkhRVkZSUWdwbk56aDNRVkV3UlV0bmQyOWFSRkV4VFdwS2ExcEVSVFZQUkVFeldYcEplVTFVWnpWT01rWnFXbTFKZUU5VVozbGFWRkYzVG1wak1sbHFWWGRhVkZVd0NscFVRV1pDWjI5eVFtZEZSVUZaVHk5TlFVVlBRa0pGVFVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQUtRa0YzVFVOcVJYaE9SRWwzVGxSVk0wOUVSWGRLZDFsTFMzZFpRa0pCUjBSMmVrRkNSVUZSV2tSQ1pHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhZ3BpTWpCMldXcEZNMlZxUVZoQ1oyOXlRbWRGUlVGWlR5OU5RVVZTUWtGclRVSjZUVEpOZWswd1QwUlJkMWhCV1V0TGQxbENRa0ZIUkhaNlFVSkZaMUpQQ2tSRmVHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaWmFrVXpaV2s1ZEZrelFuUmlNalIyVEcxa2NHUkhhREZaYVRrellqTktjbHB0ZUhZS1pETk5kbU50Vm5OYVYwWjZXbE0xTldKWGVFRmpiVlp0WTNrNWIxcFhSbXRqZVRsMFdWZHNkVTFFWjBkRGFYTkhRVkZSUW1jM09IZEJVazFGUzJkM2J3cGFSRkV4VFdwS2ExcEVSVFZQUkVFeldYcEplVTFVWnpWT01rWnFXbTFKZUU5VVozbGFWRkYzVG1wak1sbHFWWGRhVkZVd1dsUkJhRUpuYjNKQ1owVkZDa0ZaVHk5TlFVVlZRa0pOVFVWWVpIWmpiWFJ0WWtjNU0xZ3lVbkJqTTBKb1pFZE9iMDFHU1VkRGFYTkhRVkZSUW1jM09IZEJVbFZGVWtGNFEyRklVakFLWTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1rbDRUak52ZG1KWFRuZGlWemwxVERKR2FtUkhiSFppYmsxMlkyNVdkV041T0hsTlZFMHdUVlJSZVFwT1ZHZDRUbms1YUdSSVVteGlXRUl3WTNrNGVFMUNXVWREYVhOSFFWRlJRbWMzT0hkQlVsbEZRMEYzUjJOSVZtbGlSMnhxVFVsSFNrSm5iM0pDWjBWRkNrRmtXalZCWjFGRFFraHpSV1ZSUWpOQlNGVkJNMVF3ZDJGellraEZWRXBxUjFJMFkyMVhZek5CY1VwTFdISnFaVkJMTXk5b05IQjVaME00Y0Rkdk5FRUtRVUZIWWpremIxbHVRVUZCUWtGTlFWSnFRa1ZCYVVKVlptcHlaVlZIVGpsRlNIRkpWR2N3VjNBd1NtRXZZMGMyUkZCYWRtbGxZV05CZVRkQ016bEtRUXBWZDBsbldHcHNVM0JyTjFVMlNYVTNNVzU0TmsxMlNsQlFXamhRWjJKRE16VlBha295SzJGaE9GZHpOa05pZDNkRFoxbEpTMjlhU1hwcU1FVkJkMDFFQ21GQlFYZGFVVWwzU1VWck5rbEhXSEJKY3pGd2NVbGljM2RDUlVaMVZYSkRTMEp4ZWpGUGMzVkhUamxNVGtWUlZXUlBORkU0WW5WTU9FVjZhbUZEZEVjS1dHRjFhMDFIVkRSQmFrVkJORVo1U0Uxbk1tdHFOMHhtUzJGamRIZHRhVXRzZEdvNFUweGphRVZ4U2tKTldFbDVWRWRMYjJ4SVdUWjFUVmh5VjI0MFJncFJiWEowWjBjd2VUSjBiek1LTFMwdExTMUZUa1FnUTBWU1ZFbEdTVU5CVkVVdExTMHRMUW89In1dfX0="}]},"envelope":{"statement":"eyJfdHlwZSI6Imh0dHBzOi8vaW4tdG90by5pby9TdGF0ZW1lbnQvdjEiLCJzdWJqZWN0IjpbeyJuYW1lIjoibWNwbW9uLTAuMS40LXB5My1ub25lLWFueS53aGwiLCJkaWdlc3QiOnsic2hhMjU2IjoiZWU0YjRmODlkMmU3MzI0MGMzODM3ZGJlYTM3ODhkNTEyMDA2ZDRlNmRmZDUyMmYzNWRiMzhmNDM0MWRmMmQxOCJ9fV0sInByZWRpY2F0ZVR5cGUiOiJodHRwczovL2RvY3MucHlwaS5vcmcvYXR0ZXN0YXRpb25zL3B1Ymxpc2gvdjEiLCJwcmVkaWNhdGUiOm51bGx9","signature":"MEUCIQDQFzNp2BXavnEjY95H6o7YRuVRJ+Qo4axkrrkypkRIZwIgTVCz4/E/7/DWK2HAw9z+pDNo73nVlr5lZa76WbzLOTM="}}
Binary file
@@ -0,0 +1 @@
1
+ {"version":1,"verification_material":{"certificate":"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","transparency_entries":[{"logIndex":"854724714","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"dsse","version":"0.0.1"},"integratedTime":"1769383532","inclusionPromise":{"signedEntryTimestamp":"MEUCIQDZSFWe7ove2wZmYjD9+E4wMIg1pKZyCabS093sxTb1jwIgGQ3wocq5ScAy8WF0PqWS3pBdFSLugsYGKJYR1w71LXk="},"inclusionProof":{"logIndex":"732820452","rootHash":"QqQZjFx9z+R7lB0+3aYwqKyeWxqEpwfolt93Cprx7nQ=","treeSize":"732820453","hashes":["5Lpzt0SDkMvXkzuXQkM4IczaD3YieQihqNFRiJ/0j4I=","74KmBe4Kjlo2YGKnnWSZDq70uawwQKc6lVoDBeIyJZ0=","MZE7wMO38x+IyNk2UeqawjOiRE8nzWZDKxJ4B96w+ro=","8QqJNOeX+oNUh9Jl2kca4qTMqiJPStt58YXQM9mqAHw=","DwKwRQf8bLfvAlZCumHHqyln+KUP87MajXC3gQiRsXk=","rF9MeFdsXSqGF8vqzgxBkGyzLstktTr84yuHfN9eI14=","avGfYpplrUBIQg4ezCF3xrJGXOH8Uh/sOtaaNxjyqmo=","sss5FthkuTnwa241eO0hxXXBCR3QeypHRP73o9RzO9g=","jfukQMAVfCqCrlYwRqqUd/hbEP4yotGKGxR4+c54pfA=","OllZ6+8Si5cuPekJ1g/CP+sXnQHy2JgxYEUmTqicIqc=","dBkbakOCkLCPfwfbc9RJj5FE13JWP1L+K/QnvWbBXjw=","8UxdDATbCIzp+y4X0U33q0Ofz5gDN3girMGDR3eDQes=","i0MObzT1TBsOoj2fSfX5tVy/0RDAzekFRhxMA9dNLRk=","tpLJI2Sg9ZYY8iWiNmofGyoEHdnSBSJwiMmlIBYhOfQ=","O8/imYCTZtbxIc+69c8pb8IaxPdmSK7UPXh/ip+hoLI=","6OLWbtKvxLyT2cr4F2qdHh0quyYiSl/P7LpDfVrK6R8=","WFmkMhmL2tOzDi6lp4zGgaCzwux2vGOM44v1vr1wuDs=","F9MSQ5SmoFr+hoADclpdFY52/TLfHDnNPYb9ZNYO5gI=","T4DqWD42hAtN+vX8jKCWqoC4meE4JekI9LxYGCcPy1M="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n732820453\nQqQZjFx9z+R7lB0+3aYwqKyeWxqEpwfolt93Cprx7nQ=\n\n— rekor.sigstore.dev wNI9ajBFAiBVLMSIaR0zcE5L0lp4GkSwIvzI7yF4azFq0BNIcw5X+gIhAIZlXAewEihLxBFfMpD0RMeEhPPG+1g6B+JIvyWoEXP7\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiZHNzZSIsInNwZWMiOnsiZW52ZWxvcGVIYXNoIjp7ImFsZ29yaXRobSI6InNoYTI1NiIsInZhbHVlIjoiZGRkZDVkOWQwYmE3YmY4MzQ3ZDgyMmI2NDZhYjI5MTdjODNjMGMwNmE4N2Q5MjU2OTI2MmIxNjE0NjhmZTM2MiJ9LCJwYXlsb2FkSGFzaCI6eyJhbGdvcml0aG0iOiJzaGEyNTYiLCJ2YWx1ZSI6IjJkMjAzNjVjYmEwYTBkMzQ0MzAxZDMzZjU0YmM1NzI4YTM0NzhmMTMzNDRlNGVlYjJkY2IyMTUyMjc3ODczZjgifSwic2lnbmF0dXJlcyI6W3sic2lnbmF0dXJlIjoiTUVRQ0lEOFRjaVczUnJxODJmVVFtYXcwUDllVVJvUW9VSUJYcHU0WUlyamd4V0VpQWlBYXdTYitxTlp0MjdjYk1jc3VpWlAxOVhvN3JoUzBhdklxUHpZN1pRYld2UT09IiwidmVyaWZpZXIiOiJMUzB0TFMxQ1JVZEpUaUJEUlZKVVNVWkpRMEZVUlMwdExTMHRDazFKU1Vkc1ZFTkRRbWgxWjBGM1NVSkJaMGxWVUc5a1lVcEZlRTFTUzNkRFVYVXZVbWgyY0dSMUwxWTJhblpSZDBObldVbExiMXBKZW1vd1JVRjNUWGNLVG5wRlZrMUNUVWRCTVZWRlEyaE5UV015Ykc1ak0xSjJZMjFWZFZwSFZqSk5ValIzU0VGWlJGWlJVVVJGZUZaNllWZGtlbVJIT1hsYVV6RndZbTVTYkFwamJURnNXa2RzYUdSSFZYZElhR05PVFdwWmQwMVVTVEZOYWsxNVRsUk5lVmRvWTA1TmFsbDNUVlJKTVUxcVRYcE9WRTE1VjJwQlFVMUdhM2RGZDFsSUNrdHZXa2w2YWpCRFFWRlpTVXR2V2tsNmFqQkVRVkZqUkZGblFVVnFOVFpJTjNBMVRIbDZTR1paTHpaS2Ntc3JMemMzVlhSbVUxUXllbEkxUW1wUlVsY0tVbUZLVkd0NVlYZE9aVE4wVUcxT1ZYaGlaREo0U2xOc2EyMHhhMGxXUVhWVmRUSlBORnBpVDJ4SVVVUmhXbWhJTmpaUFEwSlViM2RuWjFVeVRVRTBSd3BCTVZWa1JIZEZRaTkzVVVWQmQwbElaMFJCVkVKblRsWklVMVZGUkVSQlMwSm5aM0pDWjBWR1FsRmpSRUY2UVdSQ1owNVdTRkUwUlVablVWVkVLM2hKQ21wek9GSm5ZbFE0S3pCa2JuWkthekVyVHpoc1ZITjNkMGgzV1VSV1VqQnFRa0puZDBadlFWVXpPVkJ3ZWpGWmEwVmFZalZ4VG1wd1MwWlhhWGhwTkZrS1drUTRkMWRuV1VSV1VqQlNRVkZJTDBKR1FYZFViMXBOWVVoU01HTklUVFpNZVRsdVlWaFNiMlJYU1hWWk1qbDBUREpKZUU0emIzWmlWMDUzWWxjNWRRcE1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU0wcHNZa2RXYUdNeVZYVmxWekZ6VVVoS2JGcHVUWFpoUjFab1draE5kbUpYUm5CaWFrRTFDa0puYjNKQ1owVkZRVmxQTDAxQlJVSkNRM1J2WkVoU2QyTjZiM1pNTTFKMllUSldkVXh0Um1wa1IyeDJZbTVOZFZveWJEQmhTRlpwWkZoT2JHTnRUbllLWW01U2JHSnVVWFZaTWpsMFRVSTRSME5wYzBkQlVWRkNaemM0ZDBGUlNVVkZXR1IyWTIxMGJXSkhPVE5ZTWxKd1l6TkNhR1JIVG05TlJGbEhRMmx6UndwQlVWRkNaemM0ZDBGUlRVVkxSMUV3VGxSSmVWcEhVWGhQVkdkM1RqSk5lVTFxUlRSUFZHUm9XVEphYVUxVWF6Uk5iVlV3VFVSWk0wNXRTVEZOUjFVeENrNUhWWGRHVVZsTFMzZFpRa0pCUjBSMmVrRkNRa0ZSU0ZWdFZuTmFWMFo2V2xSQldrSm5iM0pDWjBWRlFWbFBMMDFCUlVaQ1FYUnBUVlJrTmt3eU1Xb0tZMGN4ZG1KcVFXUkNaMjl5UW1kRlJVRlpUeTlOUVVWSFFrRTVlVnBYV25wTU1taHNXVmRTZWt3eU1XaGhWelIzVDNkWlMwdDNXVUpDUVVkRWRucEJRZ3BEUVZGMFJFTjBiMlJJVW5kamVtOTJURE5TZG1FeVZuVk1iVVpxWkVkc2RtSnVUWFZhTW13d1lVaFdhV1JZVG14amJVNTJZbTVTYkdKdVVYVlpNamwwQ2sxR2QwZERhWE5IUVZGUlFtYzNPSGRCVVd0RlZHZDRUV0ZJVWpCalNFMDJUSGs1Ym1GWVVtOWtWMGwxV1RJNWRFd3lTWGhPTTI5MllsZE9kMkpYT1hVS1RIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VEROS2JHSkhWbWhqTWxWMVpWY3hjMUZJU214YWJrMTJZVWRXYUZwSVRYWmlWMFp3WW1wQk5BcENaMjl5UW1kRlJVRlpUeTlOUVVWTFFrTnZUVXRIVVRCT1ZFbDVXa2RSZUU5VVozZE9NazE1VFdwRk5FOVVaR2haTWxwcFRWUnJORTF0VlRCTlJGa3pDazV0U1RGTlIxVXhUa2RWZDBoUldVdExkMWxDUWtGSFJIWjZRVUpEZDFGUVJFRXhibUZZVW05a1YwbDBZVWM1ZW1SSFZtdE5RelJIUTJselIwRlJVVUlLWnpjNGQwRlJkMFZKUVhkbFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKSmVFNHpiM1ppVjA1M1lsYzVkVTFFWjBkRGFYTkhRVkZSUWdwbk56aDNRVkV3UlV0bmQyOWFSRkV4VFdwS2ExcEVSVFZQUkVFeldYcEplVTFVWnpWT01rWnFXbTFKZUU5VVozbGFWRkYzVG1wak1sbHFWWGRhVkZVd0NscFVRV1pDWjI5eVFtZEZSVUZaVHk5TlFVVlBRa0pGVFVRelNteGFiazEyWVVkV2FGcElUWFppVjBad1ltcEJZVUpuYjNKQ1owVkZRVmxQTDAxQlJWQUtRa0YzVFVOcVJYaE9SRWwzVGxSVk0wOUVSWGRLZDFsTFMzZFpRa0pCUjBSMmVrRkNSVUZSV2tSQ1pHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhZ3BpTWpCMldXcEZNMlZxUVZoQ1oyOXlRbWRGUlVGWlR5OU5RVVZTUWtGclRVSjZUVEpOZWswd1QwUlJkMWhCV1V0TGQxbENRa0ZIUkhaNlFVSkZaMUpQQ2tSRmVHOWtTRkozWTNwdmRrd3laSEJrUjJneFdXazFhbUl5TUhaWmFrVXpaV2s1ZEZrelFuUmlNalIyVEcxa2NHUkhhREZaYVRrellqTktjbHB0ZUhZS1pETk5kbU50Vm5OYVYwWjZXbE0xTldKWGVFRmpiVlp0WTNrNWIxcFhSbXRqZVRsMFdWZHNkVTFFWjBkRGFYTkhRVkZSUW1jM09IZEJVazFGUzJkM2J3cGFSRkV4VFdwS2ExcEVSVFZQUkVFeldYcEplVTFVWnpWT01rWnFXbTFKZUU5VVozbGFWRkYzVG1wak1sbHFWWGRhVkZVd1dsUkJhRUpuYjNKQ1owVkZDa0ZaVHk5TlFVVlZRa0pOVFVWWVpIWmpiWFJ0WWtjNU0xZ3lVbkJqTTBKb1pFZE9iMDFHU1VkRGFYTkhRVkZSUW1jM09IZEJVbFZGVWtGNFEyRklVakFLWTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1rbDRUak52ZG1KWFRuZGlWemwxVERKR2FtUkhiSFppYmsxMlkyNVdkV041T0hsTlZFMHdUVlJSZVFwT1ZHZDRUbms1YUdSSVVteGlXRUl3WTNrNGVFMUNXVWREYVhOSFFWRlJRbWMzT0hkQlVsbEZRMEYzUjJOSVZtbGlSMnhxVFVsSFNrSm5iM0pDWjBWRkNrRmtXalZCWjFGRFFraHpSV1ZSUWpOQlNGVkJNMVF3ZDJGellraEZWRXBxUjFJMFkyMVhZek5CY1VwTFdISnFaVkJMTXk5b05IQjVaME00Y0Rkdk5FRUtRVUZIWWpremIxbHVRVUZCUWtGTlFWSnFRa1ZCYVVKVlptcHlaVlZIVGpsRlNIRkpWR2N3VjNBd1NtRXZZMGMyUkZCYWRtbGxZV05CZVRkQ016bEtRUXBWZDBsbldHcHNVM0JyTjFVMlNYVTNNVzU0TmsxMlNsQlFXamhRWjJKRE16VlBha295SzJGaE9GZHpOa05pZDNkRFoxbEpTMjlhU1hwcU1FVkJkMDFFQ21GQlFYZGFVVWwzU1VWck5rbEhXSEJKY3pGd2NVbGljM2RDUlVaMVZYSkRTMEp4ZWpGUGMzVkhUamxNVGtWUlZXUlBORkU0WW5WTU9FVjZhbUZEZEVjS1dHRjFhMDFIVkRSQmFrVkJORVo1U0Uxbk1tdHFOMHhtUzJGamRIZHRhVXRzZEdvNFUweGphRVZ4U2tKTldFbDVWRWRMYjJ4SVdUWjFUVmh5VjI0MFJncFJiWEowWjBjd2VUSjBiek1LTFMwdExTMUZUa1FnUTBWU1ZFbEdTVU5CVkVVdExTMHRMUW89In1dfX0="}]},"envelope":{"statement":"eyJfdHlwZSI6Imh0dHBzOi8vaW4tdG90by5pby9TdGF0ZW1lbnQvdjEiLCJzdWJqZWN0IjpbeyJuYW1lIjoibWNwbW9uLTAuMS40LnRhci5neiIsImRpZ2VzdCI6eyJzaGEyNTYiOiI5NWU3ZDQ3NmIwZTA5M2VmNTBlOTg5ZDY5YzU2YzM2NDdiZThlZjZiNTU2YTZhOTg4YjI5ZWY0NjgxMTFkY2IwIn19XSwicHJlZGljYXRlVHlwZSI6Imh0dHBzOi8vZG9jcy5weXBpLm9yZy9hdHRlc3RhdGlvbnMvcHVibGlzaC92MSIsInByZWRpY2F0ZSI6bnVsbH0=","signature":"MEQCID8TciW3Rrq82fUQmaw0P9eURoQoUIBXpu4YIrjgxWEiAiAawSb+qNZt27cbMcsuiZP19Xo7rhS0avIqPzY7ZQbWvQ=="}}
package/mcpmon.py CHANGED
@@ -2,8 +2,8 @@
2
2
  """mcpmon: Hot reload for MCP servers. Like nodemon, but for MCP."""
3
3
 
4
4
  import argparse
5
- import subprocess
6
5
  import signal
6
+ import subprocess
7
7
  import sys
8
8
  from pathlib import Path
9
9
 
@@ -65,9 +65,8 @@ def start_process(command: list[str]) -> subprocess.Popen:
65
65
  def should_reload(changes: set, extensions: set[str]) -> bool:
66
66
  """Check if any changed file matches our extensions."""
67
67
  for change_type, path in changes:
68
- if change_type in (Change.added, Change.modified):
69
- if Path(path).suffix.lstrip(".") in extensions:
70
- return True
68
+ if change_type in (Change.added, Change.modified) and Path(path).suffix.lstrip(".") in extensions:
69
+ return True
71
70
  return False
72
71
 
73
72
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcpmon",
3
- "version": "0.1.0",
3
+ "version": "0.1.4",
4
4
  "description": "Hot reload for MCP servers. Like nodemon, but for MCP.",
5
5
  "type": "module",
6
6
  "main": "mcpmon.ts",
@@ -10,12 +10,18 @@
10
10
  "scripts": {
11
11
  "build": "bun build --compile mcpmon.ts --outfile dist/mcpmon"
12
12
  },
13
- "keywords": ["mcp", "hot-reload", "nodemon", "bun", "development"],
13
+ "keywords": [
14
+ "mcp",
15
+ "hot-reload",
16
+ "nodemon",
17
+ "bun",
18
+ "development"
19
+ ],
14
20
  "author": "be.nvy",
15
21
  "license": "MIT",
16
22
  "repository": {
17
23
  "type": "git",
18
- "url": "https://github.com/b17z/mcpmon"
24
+ "url": "git+https://github.com/b17z/mcpmon.git"
19
25
  },
20
26
  "engines": {
21
27
  "bun": ">=1.0.0"
package/pyproject.toml CHANGED
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "mcpmon"
7
- version = "0.1.0"
7
+ version = "0.1.4"
8
8
  description = "Hot reload for MCP servers. Like nodemon, but for MCP."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -1,50 +0,0 @@
1
- name: Publish to npm
2
-
3
- on:
4
- release:
5
- types: [published]
6
-
7
- jobs:
8
- publish-npm:
9
- runs-on: ubuntu-latest
10
- permissions:
11
- contents: read
12
- id-token: write
13
- steps:
14
- - uses: actions/checkout@v4
15
-
16
- - uses: actions/setup-node@v4
17
- with:
18
- node-version: '20'
19
- registry-url: 'https://registry.npmjs.org'
20
-
21
- - name: Publish to npm
22
- run: npm publish --access public
23
-
24
- build-binaries:
25
- runs-on: ${{ matrix.os }}
26
- permissions:
27
- contents: write
28
- strategy:
29
- matrix:
30
- include:
31
- - os: ubuntu-latest
32
- target: linux-x64
33
- - os: macos-latest
34
- target: darwin-arm64
35
- - os: macos-13
36
- target: darwin-x64
37
- steps:
38
- - uses: actions/checkout@v4
39
-
40
- - uses: oven-sh/setup-bun@v2
41
- with:
42
- bun-version: latest
43
-
44
- - name: Build binary
45
- run: bun build --compile mcpmon.ts --outfile mcpmon-${{ matrix.target }}
46
-
47
- - name: Upload to release
48
- run: gh release upload ${{ github.ref_name }} mcpmon-${{ matrix.target }} --clobber
49
- env:
50
- GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -1,26 +0,0 @@
1
- name: Publish to PyPI
2
-
3
- on:
4
- release:
5
- types: [published]
6
-
7
- jobs:
8
- publish:
9
- runs-on: ubuntu-latest
10
- permissions:
11
- id-token: write
12
- steps:
13
- - uses: actions/checkout@v4
14
-
15
- - uses: actions/setup-python@v5
16
- with:
17
- python-version: "3.12"
18
-
19
- - name: Install build
20
- run: pip install build
21
-
22
- - name: Build package
23
- run: python -m build
24
-
25
- - name: Publish to PyPI
26
- uses: pypa/gh-action-pypi-publish@release/v1