Contributor Guide¶
Thank you for your interest in contributing to JamfMCP! This guide will help you get started.
Code of Conduct¶
By participating in this project, you agree to abide by our code of conduct:
Be respectful and inclusive
Welcome newcomers and help them get started
Focus on constructive criticism
Respect differing viewpoints and experiences
Prerequisites¶
Python 3.13 or higher
uv package manager
Git for version control
GitHub account
Development Overview¶
Configuring your development environment for best success
Security practices to keep in mind when contributing
Implementing FastMCP logging mechanisms
Testing strategies and running tests
Development Principles¶
Code Quality¶
Type Hints: All functions typed
Docstrings: Sphinx-style documentation
Testing: Comprehensive test coverage
Linting: Ruff for style consistency
Async First¶
All API calls are async
Use
asynciopatternsHandle concurrency properly
Avoid blocking operations
Error Handling¶
Structured error responses
Proper logging at all levels
Graceful degradation
User-friendly messages