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