Offers optional Cloudflare integration for content delivery network capabilities to optimize performance of the ERPNext MCP server.
Provides full CRUD operations for ERPNext documents, DocTypes, reports, and dashboards, enabling interaction with ERPNext instances through tools for document operations, schema operations, reporting, analytics, and custom method execution.
Integrates with the Frappe framework that powers ERPNext, allowing access to DocTypes, schemas, and field definitions through the ERPNext MCP server.
ERPNext MCP Server
A production-ready Model Context Protocol (MCP) server for seamless ERPNext integration with AI assistants like Claude Desktop.
🚀 Features
Complete ERPNext Integration: Full CRUD operations for documents, DocTypes, reports, and dashboards
Production-Ready Security: OAuth 2.1, API key authentication, rate limiting, and comprehensive audit logging
High Performance: Redis caching, connection pooling, and optimized API calls
Enterprise Features: Multi-tenancy support, horizontal scaling, and high availability
Comprehensive Monitoring: Health checks, metrics, and detailed logging
Docker Support: Multi-stage builds for minimal attack surface
TypeScript: Full type safety and modern JavaScript features
📋 Prerequisites
Ubuntu 20.04/22.04/24.04 LTS
Node.js 18+
Redis 6+
ERPNext instance with API access
Digital Ocean droplet (minimum 2GB RAM)
🛠️ Quick Installation
Option 1: Automated Installation (Recommended)
Option 2: Manual Installation
Option 3: Docker Installation
⚙️ Configuration
Environment Variables
Create a .env
file with the following configuration:
Claude Desktop Configuration
Add the following to your Claude Desktop configuration file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
🔧 Available Tools
Document Operations
create_document
- Create new ERPNext documentsread_document
- Retrieve document detailsupdate_document
- Update existing documentsdelete_document
- Delete documentslist_documents
- List documents with filters
Schema Operations
get_doctype
- Get DocType schema and field definitionslist_doctypes
- List all available DocTypes
Reporting & Analytics
get_report
- Execute and retrieve report datacreate_dashboard
- Create custom dashboards
Advanced Operations
execute_method
- Execute custom ERPNext methods
🔒 Security Features
Authentication: OAuth 2.1 with PKCE or API key/secret
Encryption: TLS 1.3 for all communications
Rate Limiting: Configurable per-endpoint limits
Input Validation: Zod schemas for all inputs
Audit Logging: Comprehensive activity logs
CORS Protection: Configurable allowed origins
Container Security: Non-root user, read-only filesystem
📊 Monitoring & Logging
Health Check Endpoint
Logs Location
Application logs:
/opt/erpnext-mcp-server/logs/app.log
Error logs:
/opt/erpnext-mcp-server/logs/error.log
Access logs:
/opt/erpnext-mcp-server/logs/access.log
Monitoring with Systemd
🚀 Production Deployment
Digital Ocean Recommended Specs
Basic Setup (up to 50 concurrent users):
2 vCPUs
4GB RAM
50GB SSD
$24/month
Production Setup (up to 200 concurrent users):
4 vCPUs
8GB RAM
100GB SSD
$48/month
Enterprise Setup (200+ concurrent users):
8+ vCPUs
16GB+ RAM
200GB+ SSD
Load balancer recommended
Security Hardening Checklist
Configure firewall (UFW) rules
Enable fail2ban for brute force protection
Set up SSL/TLS with Let's Encrypt
Configure log rotation
Enable automatic security updates
Set up monitoring alerts
Regular security audits
Implement backup strategy
🧪 Testing
🐛 Troubleshooting
Common Issues
Connection refused errors
Check ERPNext URL and credentials
Verify firewall rules
Check Redis connection
Authentication failures
Verify API key/secret
Check token expiration
Review audit logs
Performance issues
Monitor Redis cache hit rate
Check ERPNext server load
Review rate limiting settings
Debug Mode
Enable debug logging:
📈 Performance Optimization
Caching: Redis caching with 5-minute TTL
Connection Pooling: Reuse HTTP connections
Batch Operations: Support for bulk document operations
Compression: Gzip compression for API responses
CDN: Optional CloudFlare integration
🤝 Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
Fork the repository
Create your feature branch (
git checkout -b feature/AmazingFeature
)Commit your changes (
git commit -m 'Add some AmazingFeature'
)Push to the branch (
git push origin feature/AmazingFeature
)Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
Anthropic for the Model Context Protocol
Frappe/ERPNext team for the amazing ERP platform
Community contributors and testers
📞 Support
Documentation: Full documentation
Issues: GitHub Issues
Discussions: GitHub Discussions
Security: security@your-domain.com
Built with ❤️ for the ERPNext community
This server cannot be installed
A production-ready server that integrates ERPNext with AI assistants like Claude Desktop, enabling document operations, reporting, and analytics through natural language.
Related MCP Servers
- -securityFlicense-qualityA smart documentation server that provides AI-assisted code improvement and documentation management through Claude Desktop integration.Last updated -10
- -securityAlicense-qualityA modular server implementation for Claude AI assistants with integrated tools, enabling Claude to perform actions and access external resources like file systems, web searches, browser automation, financial data, and document generation.Last updated -96MIT License
- -securityAlicense-qualityThis is a TypeScript-based MCP server that provides integration with ERPNext/Frappe API. It enables AI assistants to interact with ERPNext data and functionality through the Model Context Protocol.Last updated -31MIT License
- -securityAlicense-qualityA TypeScript-based server that enables AI assistants to interact with ERPNext/Frappe systems through the Model Context Protocol, allowing access to documents, creation/updating of records, and running reports.Last updated -31MIT License