Skip to main content
Glama

RabbitMQ MCP Server

# Contributing to mcp-server-rabbitmq Thank you for your interest in contributing to mcp-server-rabbitmq! This document provides guidelines and instructions for contributing to this project. ## Development Environment Setup ### Prerequisites - Python 3.10 or higher - [uv](https://github.com/astral-sh/uv) for dependency management ### Setting Up Your Development Environment 1. Clone the repository: ```bash git clone https://github.com/kenliao94/mcp-server-rabbitmq.git cd mcp-server-rabbitmq ``` 2. Create and activate a virtual environment using `uv`: ```bash uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate ``` 3. Install dependencies: ```bash uv pip install -e . uv pip install -r requirements-dev.txt # If available, otherwise use dev dependencies from pyproject.toml ``` 4. Install pre-commit hooks: ```bash pip install pre-commit pre-commit install ``` ## Development Workflow ### Code Style This project follows a specific code style enforced by Ruff. Key style guidelines include: - Line length: 99 characters - Quote style: Double quotes - Indentation: 4 spaces - Import sorting: Using isort configuration via Ruff The pre-commit hooks will automatically check and fix many style issues when you commit. ### Running Tests Tests are written using pytest. To run the tests: ```bash pytest ``` For more verbose output: ```bash pytest -v ``` ### Pre-commit Hooks This project uses pre-commit hooks to ensure code quality. The hooks include: - Ruff for linting and formatting - Trailing whitespace removal - End-of-file fixing - YAML and TOML checking - Large file checking ## Pull Request Process 1. Fork the repository and create a new branch from `main`. 2. Make your changes, following the code style guidelines. 3. Add tests for any new functionality. 4. Ensure all tests pass. 5. Update documentation as needed. 6. Submit a pull request with a clear description of the changes. ### Commit Messages This project uses [Conventional Commits](https://www.conventionalcommits.org/) for commit messages, managed by Commitizen. Your commit messages should follow this format: ``` <type>(<scope>): <description> [optional body] [optional footer(s)] ``` Common types include: - `feat`: A new feature - `fix`: A bug fix - `docs`: Documentation changes - `style`: Code style changes (formatting, etc.) - `refactor`: Code refactoring - `test`: Adding or modifying tests - `chore`: Routine tasks, maintenance, etc. ## Versioning This project uses semantic versioning. Version bumps are handled by Commitizen based on commit messages. ## Project Structure - `mcp_server_rabbitmq/`: Main package directory - `server.py`: Main server implementation - `connection.py`: RabbitMQ connection handling - `admin.py`: RabbitMQ administration - `handlers.py`: Request handlers - `constant.py`: Constants and configuration - `tests/`: Test directory ## License By contributing to this project, you agree that your contributions will be licensed under the project's [Apache 2.0 License](LICENSE). ## Questions or Need Help? If you have questions or need help with the contribution process, please open an issue in the repository.

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/kenliao94/mcp-server-rabbitmq'

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