Skip to main content
Glama

mcp-adr-analysis-server

by tosin2013
contribute.md5.29 kB
# Contributing Guide ## Overview This guide explains how to contribute to the MCP ADR Analysis Server project. We welcome contributions from the community and appreciate your interest in improving this tool. ## Getting Started ### Prerequisites - Node.js 20.0.0 or higher - npm 9.0.0 or higher - Git - Basic understanding of TypeScript and MCP ### Development Setup 1. **Fork and Clone** ```bash git clone https://github.com/your-username/mcp-adr-analysis-server.git cd mcp-adr-analysis-server ``` 2. **Install Dependencies** ```bash npm install ``` 3. **Build the Project** ```bash npm run build ``` 4. **Run Tests** ```bash npm test ``` ## Contribution Types ### Bug Reports When reporting bugs, please include: - Clear description of the issue - Steps to reproduce - Expected vs actual behavior - Environment details (OS, Node.js version, etc.) ### Feature Requests For new features, please: - Describe the use case - Explain the expected behavior - Consider backward compatibility - Discuss implementation approach ### Code Contributions 1. **Create a Branch** ```bash git checkout -b feature/your-feature-name ``` 2. **Make Changes** - Follow existing code style - Add tests for new functionality - Update documentation as needed 3. **Test Your Changes** ```bash npm run test npm run lint npm run typecheck ``` 4. **Commit Changes** ```bash git add . git commit -m "feat: add your feature description" ``` 5. **Push and Create PR** ```bash git push origin feature/your-feature-name ``` ## Code Style ### TypeScript - Use strict TypeScript configuration - Prefer interfaces over types for object shapes - Use meaningful variable and function names - Add JSDoc comments for public APIs ### Testing - Write unit tests for new functionality - Use descriptive test names - Follow AAA pattern (Arrange, Act, Assert) - Aim for high test coverage ### Documentation - Update README.md for user-facing changes - Add JSDoc comments for new functions - Update API reference for new tools - Follow Diataxis framework for documentation ## Development Workflow ### Branch Naming - `feature/description` - New features - `bugfix/description` - Bug fixes - `docs/description` - Documentation updates - `refactor/description` - Code refactoring ### Commit Messages Follow conventional commits: - `feat:` - New features - `fix:` - Bug fixes - `docs:` - Documentation changes - `style:` - Code style changes - `refactor:` - Code refactoring - `test:` - Test additions/changes - `chore:` - Maintenance tasks ### Pull Request Process 1. **Create Pull Request** - Use descriptive title - Link related issues - Add detailed description 2. **Review Process** - Address reviewer feedback - Update PR as needed - Ensure all checks pass 3. **Merge** - Squash commits if requested - Delete feature branch after merge - Update version if needed ## Testing ### Running Tests ```bash # Run all tests npm test # Run tests in watch mode npm run test:watch # Run tests with coverage npm run test:coverage # Run specific test suites npm run test:unit npm run test:integration ``` ### Test Structure - `tests/unit/` - Unit tests - `tests/integration/` - Integration tests - `tests/fixtures/` - Test data and fixtures ## Documentation ### Documentation Structure - `docs/` - Main documentation - `docs/tutorials/` - Step-by-step guides - `docs/how-to-guides/` - Task-oriented guides - `docs/reference/` - API and technical reference - `docs/explanation/` - Conceptual explanations ### Writing Documentation - Use clear, concise language - Include code examples - Add screenshots when helpful - Keep documentation up to date ## Release Process ### Version Management - Follow semantic versioning (semver) - Update `package.json` version - Update `CHANGELOG.md` - Tag releases in Git ### Release Steps 1. Update version in `package.json` 2. Update `CHANGELOG.md` 3. Create release PR 4. Tag release in Git 5. Publish to npm ## Community Guidelines ### Code of Conduct - Be respectful and inclusive - Welcome newcomers - Focus on constructive feedback - Respect different perspectives ### Communication - Use GitHub Issues for discussions - Be clear and concise - Provide context for questions - Help others when possible ## Getting Help ### Resources - [README.md](../../../README.md) - Project overview - [API Reference](../../reference/api-reference.md) - Technical documentation - [Troubleshooting Guide](./troubleshooting.md) - Common issues - [Developer Guidance](../../DEVELOPER_GUIDANCE.md) - Development details ### Support - GitHub Issues for bug reports and feature requests - GitHub Discussions for questions and ideas - Pull Requests for code contributions ## Recognition Contributors are recognized in: - `CONTRIBUTORS.md` file - Release notes - Project documentation - GitHub contributors page Thank you for contributing to the MCP ADR Analysis Server project! ## Related Documentation - [README.md](../../../README.md) - [API Reference](../../reference/api-reference.md) - [Developer Guidance](../../DEVELOPER_GUIDANCE.md) - [Testing Guide](../../TESTING_GUIDE.md) - [Troubleshooting Guide](./troubleshooting.md)

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tosin2013/mcp-adr-analysis-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server