Skip to main content
Glama

pocketbase-mcp-server

SECURITY.md5.5 kB
# Security Policy ## Supported Versions We support security updates for the following versions: | Version | Supported | | ------- | ------------------ | | 3.x.x | ✅ Active support | | 2.x.x | ⚠️ Critical fixes only | | < 2.0 | ❌ No longer supported | ## Reporting a Vulnerability We take security seriously. If you discover a security vulnerability, please follow these steps: ### 🚨 For Critical Security Issues **DO NOT** create a public GitHub issue for security vulnerabilities. Instead, please: 1. **Email us privately** at [your-security-email@domain.com] with details 2. Include "SECURITY" in the subject line 3. Provide a detailed description of the vulnerability 4. Include steps to reproduce (if applicable) 5. Suggest a fix (if you have one) ### 📋 What to Include Please include the following information: - **Description** of the vulnerability - **Impact** assessment (who is affected, how severe) - **Steps to reproduce** the vulnerability - **Proof of concept** code (if applicable) - **Suggested fix** or mitigation - **Your contact information** for follow-up ### ⏱️ Response Timeline We will acknowledge your report within **48 hours** and provide a detailed response within **7 days** indicating: - Confirmation of the vulnerability - Our planned timeline for a fix - Any immediate workarounds or mitigations ### 🛡️ Security Considerations for Contributors When contributing to this project, please consider: #### API Keys and Secrets - Never commit API keys, tokens, or secrets - Use environment variables for sensitive configuration - Review `.env.example` for required variables - Ensure `.env` files are in `.gitignore` #### Input Validation - All user inputs must be validated with Zod schemas - Sanitize data before database operations - Validate webhook signatures (especially Stripe) - Use parameterized queries for database operations #### Authentication & Authorization - Properly validate PocketBase authentication tokens - Implement proper error handling without exposing sensitive info - Use secure defaults for all configuration options - Follow principle of least privilege #### Third-Party Services - Verify SSL/TLS for all external API calls - Implement proper timeout and retry logic - Handle rate limiting appropriately - Store credentials securely #### Common Vulnerabilities to Avoid - **SQL Injection**: Use PocketBase's built-in query builders - **XSS**: Sanitize any user-generated content - **CSRF**: Validate webhook signatures and tokens - **Information Disclosure**: Don't log sensitive data - **Insecure Dependencies**: Keep dependencies updated ### 🔒 Security Best Practices for Users #### Environment Configuration ```env # Use strong, unique values POCKETBASE_ADMIN_PASSWORD=use-a-strong-password STRIPE_SECRET_KEY=sk_test_... # Use test keys for development STRIPE_WEBHOOK_SECRET=whsec_... # Required for webhook security # Restrict access POCKETBASE_URL=http://localhost:8090 # Don't expose publicly without auth ``` #### PocketBase Security - Use strong admin passwords - Enable HTTPS in production - Configure proper CORS settings - Regularly backup your database - Keep PocketBase updated #### Stripe Security - Use environment-specific API keys - Validate all webhook signatures - Never expose secret keys in client-side code - Monitor for suspicious activity - Use Stripe's test mode for development #### Email Security - Use app-specific passwords for SMTP - Configure SPF, DKIM, and DMARC records - Validate email addresses before sending - Implement rate limiting for email sending - Monitor for bounce rates and spam reports ### 🚨 Known Security Considerations #### MCP Protocol - MCP servers have access to sensitive operations - Ensure proper authentication between client and server - Validate all tool parameters thoroughly - Limit access to production environments #### Service Integrations - **Stripe**: Webhook endpoints should validate signatures - **Email**: SMTP credentials should be stored securely - **PocketBase**: Admin tokens should be protected - **External APIs**: Rate limiting and timeout handling ### 📊 Security Monitoring We recommend monitoring for: - Failed authentication attempts - Unusual API usage patterns - Webhook signature validation failures - Database access anomalies - Email sending volume spikes ### 🔄 Security Updates - Security patches will be released as soon as possible - Critical vulnerabilities will be disclosed after fixes are available - Users will be notified via GitHub releases and security advisories - Changelogs will clearly mark security-related changes ### 🏆 Security Recognition We appreciate security researchers who help improve our project: - Responsible disclosure will be acknowledged in release notes - Severe vulnerabilities may be eligible for recognition - We welcome collaboration on security improvements ### 📞 Contact Information - **Security Email**: [your-security-email@domain.com] - **General Issues**: GitHub Issues (for non-security bugs) - **Discussions**: GitHub Discussions ### 🔗 Additional Resources - [OWASP Top 10](https://owasp.org/www-project-top-ten/) - [Stripe Security Best Practices](https://stripe.com/docs/security) - [PocketBase Security](https://pocketbase.io/docs/going-to-production/) - [Node.js Security Best Practices](https://nodejs.org/en/docs/guides/security/) --- **Thank you for helping keep Advanced PocketBase MCP Server secure!** 🔒

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/DynamicEndpoints/pocketbase-mcp-server'

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