release: 0.0.3, switched to npm trusted publishing (#101)

* version: 0.0.2

* Switch to npm trusted publishing (OIDC)

- Remove NPM_TOKEN secret requirement from npm-publish workflow
- Uses OIDC for authentication (more secure, no long-lived tokens)
- Update CONTRIBUTING.md with trusted publisher setup instructions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* 0.0.3

---------

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
Olivier Chafik 2025-12-09 00:52:52 +01:00 • committed by GitHub
commit 5c9665325d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 19 additions and 14 deletions

View file

@ -45,7 +45,7 @@ jobs:
publish:
runs-on: ubuntu-latest
if: github.event_name == 'release'
environment: release
environment: Release
needs: [build, test]
permissions:
@ -80,6 +80,6 @@ jobs:
echo "tag=" >> $GITHUB_OUTPUT
fi
# Uses OIDC trusted publishing - no NPM_TOKEN needed
# Configure at: https://www.npmjs.com/package/@modelcontextprotocol/ext-apps/access
- run: npm publish --provenance --access public ${{ steps.npm-tag.outputs.tag }}
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

View file

@ -60,16 +60,21 @@ Please review our [Security Policy](SECURITY.md) for reporting security vulnerab
### Repository Setup
This repository uses [npm trusted publishing](https://docs.npmjs.com/trusted-publishers/) with OIDC - no secrets required.
Before publishing releases, ensure the following are configured:
1. **NPM_TOKEN secret**: Add an npm automation token to the repository secrets
- Go to Settings <20> Secrets and variables <20> Actions
- Create a new secret named `NPM_TOKEN`
- Value: an npm automation token with publish permissions for `@modelcontextprotocol/ext-apps`
1. **Trusted publisher on npm**: Configure the package to trust this GitHub repository
- Go to https://www.npmjs.com/package/@modelcontextprotocol/ext-apps/access
- Under "Trusted Publishers", click "Add trusted publisher"
- Select "GitHub Actions"
- Repository: `modelcontextprotocol/ext-apps`
- Workflow filename: `npm-publish.yml`
- Environment: `Release` (optional, for additional protection)
2. **`release` environment** (optional): Create a protected environment for additional safeguards
- Go to Settings <20> Environments <20> New environment
- Name it `release`
2. **`Release` environment** (optional): Create a protected environment for additional safeguards
- Go to Settings > Environments > New environment
- Name it `Release`
- Add required reviewers or other protection rules as needed
### Publishing a Release

4
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "@modelcontextprotocol/ext-apps",
"version": "0.0.1",
"version": "0.0.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@modelcontextprotocol/ext-apps",
"version": "0.0.1",
"version": "0.0.3",
"license": "MIT",
"workspaces": [
"examples/*"

View file

@ -1,7 +1,7 @@
{
"homepage": "https://github.com/modelcontextprotocol/ext-apps",
"name": "@modelcontextprotocol/ext-apps",
"version": "0.0.2",
"version": "0.0.3",
"license": "MIT",
"description": "MCP Apps SDK — Enable MCP servers to display interactive user interfaces in conversational clients.",
"type": "module",