This document outlines the steps for building, versioning, and publishing the @takescake/1password-mcp server.
We adhere to Semantic Versioning.
- Patch (2.4.x): Bug fixes and minor security updates.
- Minor (2.x.0): New tools, prompts, or non-breaking features.
- Major (x.0.0): Breaking changes to the MCP tool schemas or core architecture.
When bumping the version, ensure it is updated in the following locations:
package.jsonserver.jsonsrc/config.ts(theSERVER_VERSIONconstant)CHANGELOG.md
Before publishing, always run the full validation suite:
# Clean previous builds
npm run clean
# Install fresh dependencies
npm ci
# Type-check, build, and run tests
npm run build
npm run lint
npm test- Create a new GitHub Release on the
masterbranch. - The
publish.ymlworkflow will automatically trigger, build, test, and publish to npm. - Ensure the
NPM_TOKENis configured in GitHub Secrets.
If manual publishing is required:
npm login
npm publish --access publicNote: The prepublishOnly script in package.json will automatically run clean, build, and test before the package is uploaded.
OP_SERVICE_ACCOUNT_TOKEN: Required. The service account token for 1Password.OP_INTEGRATION_NAME: (Optional) Defaults to1password-mcp.OP_INTEGRATION_VERSION: (Optional) Defaults to the currentSERVER_VERSION.MCP_LOG_LEVEL: (Optional)debug,info,warn,error. Defaults toinfo.
The CI pipeline (ci.yml) runs on every push and pull request to the master branch. It validates the build across Node.js 18, 20, and 22.