# Contributing to STK-MCP
First off, thank you for considering contributing to STK-MCP! Your help is appreciated.
This document provides guidelines for contributing to the project.
## How Can I Contribute?
There are several ways you can contribute:
* **Reporting Bugs:** If you find a bug, please open an issue in the GitHub repository. Describe the bug clearly, including steps to reproduce it, expected behavior, and actual behavior. Include STK version, Python version, and OS information if relevant.
* **Suggesting Enhancements:** Have an idea for a new feature or an improvement to an existing one? Open an issue to discuss it. Provide as much detail as possible about your suggestion.
* **Writing Code:** If you'd like to contribute code, please follow the steps below.
* **Improving Documentation:** If you find errors or areas for improvement in the README or other documentation, feel free to suggest changes.
## Development Process
1. **Fork the repository:** Create your own fork of the `stk-mcp` repository on GitHub.
2. **Clone your fork:** `git clone https://github.com/YOUR_USERNAME/stk-mcp.git`
3. **Create a branch:** `git checkout -b feature/your-feature-name` or `git checkout -b fix/your-bug-fix-name`
4. **Make your changes:** Implement your feature or bug fix.
* Follow the existing code style.
* Add comments for complex logic.
* Ensure your changes work with the required versions of Python and STK.
* Update documentation if necessary.
5. **Test your changes:** Ensure your changes don't break existing functionality. (Add details here if specific tests are set up later).
6. **Commit your changes:** Use clear and descriptive commit messages. `git commit -m "feat: Add feature X"` or `git commit -m "fix: Resolve issue Y"`
7. **Push to your fork:** `git push origin feature/your-feature-name`
8. **Open a Pull Request:** Go to the original `stk-mcp` repository on GitHub and open a pull request from your branch to the `main` branch (or the appropriate target branch).
* Provide a clear title and description for your pull request, explaining the changes and why they are needed.
* Link to any relevant issues.
## Pull Request Guidelines
* Ensure your code adheres to the project's style guidelines (details can be added here, e.g., linting tools like Black, Flake8).
* Keep pull requests focused on a single feature or bug fix.
* Provide a clear description of the changes.
* Be responsive to feedback and questions during the review process.
Thank you for contributing!