Skip to content

Contributing to Puppeteer MCP

Thank you for your interest in contributing to Puppeteer MCP! This guide will help you get started.

Complete contribution guide:

  • Getting started
  • Development setup
  • Submission process
  • Review guidelines
  • Recognition

Our community standards:

  • Expected behavior
  • Unacceptable behavior
  • Reporting process
  • Enforcement
  • Attribution

Reporting security issues:

  • Vulnerability disclosure
  • Security updates
  • Best practices
  • Contact information
  • Check open issues
  • Look for good first issue labels
  • Review the roadmap
  • Propose new features
Terminal window
# Fork and clone
git clone https://github.com/YOUR_USERNAME/puppeteer-mcp.git
cd puppeteer-mcp
# Install dependencies
npm install
# Set up git hooks
npm run prepare
Terminal window
# Create a branch
git checkout -b feature/your-feature
# Make changes
# Write tests
# Update docs
# Verify everything works
npm run typecheck
npm run lint
npm test
  • Push your branch
  • Open PR with clear description
  • Link related issues
  • Wait for review

Help us improve by reporting bugs:

  • Use issue templates
  • Provide reproduction steps
  • Include environment details
  • Share error messages

Suggest new features:

  • Explain use case
  • Provide examples
  • Consider implementation
  • Discuss alternatives

Improve our docs:

  • Fix typos
  • Add examples
  • Clarify explanations
  • Translate content

Enhance test coverage:

  • Write unit tests
  • Add integration tests
  • Create E2E scenarios
  • Fix flaky tests

Submit code improvements:

  • Fix bugs
  • Add features
  • Refactor code
  • Optimize performance

Follow our coding standards:

  • TypeScript strict mode
  • ESLint rules
  • Prettier formatting
  • Naming conventions

All code must be tested:

  • Write tests first (TDD)
  • Maintain 85%+ coverage
  • Include edge cases
  • Document test purpose

Update relevant docs:

  • API documentation
  • README updates
  • Code comments
  • Usage examples

Use conventional commits:

feat: add new browser action
fix: resolve memory leak in session manager
docs: update API reference
test: add unit tests for auth module
chore: update dependencies
  • Tests pass locally
  • Code follows standards
  • Documentation updated
  • Changelog entry added
  • No merge conflicts

Include:

  • What changes were made
  • Why they were needed
  • How to test them
  • Related issues
  • Respond to feedback
  • Make requested changes
  • Ask questions if unclear
  • Be patient and respectful
  • Delete your branch
  • Update your fork
  • Celebrate! 🎉
Terminal window
# Run single test file
npm test -- auth.test.ts
# Run tests in watch mode
npm run test:watch
# Debug tests
node --inspect-brk node_modules/.bin/jest
Terminal window
# Format code
npm run format
# Check types
npm run typecheck
# Build project
npm run build
# Run all checks
npm run verify
  • GitHub Issues - Bug reports and features
  • GitHub Discussions - Questions and ideas
  • Pull Requests - Code contributions

We value all contributions! Contributors are:

  • Listed in CONTRIBUTORS.md
  • Mentioned in release notes
  • Given credit in commits

Regular contributors may become core contributors with:

  • Write access to repository
  • Review responsibilities
  • Architecture decisions

Your contributions make Puppeteer MCP better for everyone. We appreciate your time and effort in improving this project.

Ready to contribute? Check out our open issues and get started!