Thanks for your interest in Faxbot! Whether you're reporting a bug, requesting a feature, or contributing code, we're here to help.
Don't hesitate to open an issue. Seriously. Faxbot has many moving parts, and we'd rather help you get unstuck than have you struggle alone.
To help us assist you quickly, please include:
- Backend: Which backend are you using? (
phaxio,sinch,sip, orFAX_DISABLED=truefor testing) - Compliance: Are you bound by HIPAA requirements, or are you a non-healthcare user?
- MCP Integration (if applicable):
- Which MCP server? (Node.js stdio/HTTP/SSE, or Python stdio/SSE)
- Which transport? (stdio, HTTP, or SSE+OAuth)
- Expected behavior: What did you think would happen?
- Actual behavior: What actually happened?
- Steps to reproduce: How can we recreate the issue?
- Logs: Relevant log output (see note about PHI/PII below)
- Screenshots: If applicable, especially for UI-related issues
- Environment: Docker, local development, cloud deployment?
Never include protected health information (PHI) or personally identifiable information (PII) in issues, logs, or screenshots. This includes:
- Phone numbers
- Patient names or identifiers
- Document contents
- API keys or secrets
Redact sensitive information with [REDACTED] or *** before sharing.
Use the issue template and include the configuration details above.
Describe your use case and why the feature would be valuable. Consider which backends it would apply to.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Test across relevant backends (see Testing)
- Commit with clear messages
- Push to your branch
- Open a Pull Request
Faxbot supports multiple backends and configurations. When contributing code:
- Test Mode: Use
FAX_DISABLED=truefor development—no actual faxes are sent - Backend-Specific: If your change affects a specific backend, test with that backend
- MCP Changes: Test the relevant MCP transport (stdio/HTTP/SSE)
- SDK Changes: Test both Node.js and Python SDKs if applicable
- Python: Follow PEP 8, use
blackfor formatting - JavaScript/Node.js: Use ESLint configuration in the project
- Documentation: Update relevant docs in
docs/directory
Faxbot handles sensitive healthcare data. When contributing:
- Never commit API keys, secrets, or test PHI
- Consider HIPAA implications for new features
- Use secure defaults
- Document security requirements clearly
Open an issue with the "question" label. We're happy to help you understand the codebase, architecture decisions, or how to implement your use case.
The maintainers are friendly and want Faxbot to succeed. Don't be shy!