This document provides guidance for developers contributing to this project and details the release process.
-
Clone the repository:
git clone https://github.com/zandko/mcp-use.git cd mcp-use
-
Install dependencies:
pnpm install
Note: This project requires Node.js version 22 or higher.
-
Build the project:
pnpm build
-
Watch for changes during development:
pnpm watch
We follow Conventional Commits for our commit messages:
feat:
- A new featurefix:
- A bug fixdocs:
- Documentation only changesstyle:
- Changes that do not affect the meaning of the coderefactor:
- A code change that neither fixes a bug nor adds a featureperf:
- A code change that improves performancetest:
- Adding missing tests or correcting existing testschore:
- Changes to the build process or auxiliary tools
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
We use GitHub Actions to automate our release process, connecting GitHub Releases with npm publishing.
-
Prepare for Release:
Update the version in
package.json
using one of these commands:# For patch releases (0.0.x) - Bug fixes pnpm run release # For minor releases (0.x.0) - New features pnpm run release:minor # For major releases (x.0.0) - Breaking changes pnpm run release:major
This will:
- Update the version in package.json
- Create a git tag
- Push the changes and tag to GitHub
-
Create GitHub Release:
- Go to GitHub repository → "Releases" → "Draft a new release"
- Choose the tag that was just created
- Fill in release notes detailing what's new, fixes, and any breaking changes
- Click "Publish release"
-
Automated Publishing:
The GitHub Action will automatically:
- Verify the package version matches the GitHub tag
- Run linting and build checks
- Generate a changelog from commits since the last release
- Update the GitHub release with the changelog
- Publish to npm with the version from package.json
- Update the Contributors list in the README
- Send a notification upon successful publish (if configured)
To set up automated publishing:
-
Generate an NPM access token:
- Go to npmjs.com → User Settings → Access Tokens
- Create a new token with "Automation" type and publish permissions
-
Add the token to GitHub repository secrets:
- Go to your GitHub repository → Settings → Secrets → Actions
- Add a new secret named
NPM_TOKEN
with the value of your NPM token
-
(Optional) Discord notifications:
- Create a Discord webhook in your server
- Add the webhook URL as a GitHub repository secret named
DISCORD_WEBHOOK
Contributors are automatically updated in the README.md file whenever a push is made to the main branch, using the BobAnkh/add-contributors GitHub Action.