Update CHANGELOG with Windows compatibility fixes and new features

This commit is contained in:
latinogino
2025-09-24 09:53:57 +02:00
parent e64c973a14
commit a4d434cdf6

View File

@@ -5,139 +5,98 @@ All notable changes to the Dolibarr MCP Server project will be documented in thi
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.0.0] - 2025-07-10
## [1.1.0] - 2025-09-24
### Added
### 🔥 MAJOR FIX: Windows Compatibility
- **FIXED**: Windows pywin32 permission issues that prevented installation
- **ADDED**: Standalone server implementation that works WITHOUT MCP package
- **ADDED**: `setup_standalone.bat` - Windows-optimized setup script
- **ADDED**: `run_standalone.bat` - Start standalone server
- **ADDED**: `requirements-windows.txt` - pywin32-free dependencies
- **ADDED**: `test_standalone.py` - Test script for standalone version
#### Core Infrastructure
- Professional MCP server implementation with comprehensive Dolibarr ERP integration
- Asynchronous HTTP client with proper session management and error handling
- Type-safe configuration management with Pydantic validation
- Comprehensive CLI interface with test and serve commands
- Professional project structure following Python best practices
### ✨ New Features
- **ADDED**: Interactive testing mode in standalone server
- **ADDED**: Enhanced error handling with detailed API error messages
- **ADDED**: Professional configuration validation with helpful setup guides
- **ADDED**: Comprehensive German README (`README_DE.md`)
#### API Client Features
- Full async/await architecture for high performance
- Custom `DolibarrAPIError` exception handling with detailed error information
- Automatic session management with context manager support
- Request/response logging for debugging and monitoring
- Flexible parameter handling for all API endpoints
### 🛠️ Improvements
- **IMPROVED**: Setup process with multiple fallback options
- **IMPROVED**: Error messages with actionable troubleshooting steps
- **IMPROVED**: Documentation with Windows-specific troubleshooting
- **IMPROVED**: Docker configuration with health checks and resource limits
#### MCP Server Capabilities
- Complete tool registration following MCP 1.0.0 specification
- JSON schema validation for all tool inputs and outputs
- Proper error propagation with meaningful error messages
- Structured response formatting for LLM consumption
### 📋 Available Tools (Complete CRUD for all modules)
- **System**: `test_connection`, `get_status`
- **Users**: `get_users`, `get_user_by_id`, `create_user`, `update_user`, `delete_user`
- **Customers**: `get_customers`, `get_customer_by_id`, `create_customer`, `update_customer`, `delete_customer`
- **Products**: `get_products`, `get_product_by_id`, `create_product`, `update_product`, `delete_product`
-**Invoices**: `get_invoices`, `get_invoice_by_id`, `create_invoice`, `update_invoice`, `delete_invoice`
-**Orders**: `get_orders`, `get_order_by_id`, `create_order`, `update_order`, `delete_order`
-**Contacts**: `get_contacts`, `get_contact_by_id`, `create_contact`, `update_contact`, `delete_contact`
-**Raw API**: `dolibarr_raw_api` - Direct access to any Dolibarr endpoint
#### Customer/Third Party Management
- `get_customers` - List customers and suppliers with pagination
- `get_customer_by_id` - Retrieve specific customer details
- `create_customer` - Create new customers with full address information
- `update_customer` - Update existing customer information
- `delete_customer` - Remove customers from the system
### 🐳 Docker
- **ADDED**: Multi-stage Dockerfile for optimized production builds
- **ADDED**: docker-compose.yml with health checks
- **ADDED**: Test service configuration for automated testing
#### Product Management
- `get_products` - List products with inventory information
- `get_product_by_id` - Retrieve specific product details
- `create_product` - Create new products with pricing and stock
- `update_product` - Update existing product information
- `delete_product` - Remove products from catalog
### 📚 Documentation
- **ADDED**: Comprehensive setup instructions for Windows
- **ADDED**: Troubleshooting guide for common issues
- **ADDED**: API endpoint documentation and examples
- **ADDED**: Contributing guidelines
#### Invoice Management
- `get_invoices` - List invoices with status filtering
- `get_invoice_by_id` - Retrieve specific invoice details
- `create_invoice` - Create new invoices with line items and calculations
- `update_invoice` - Update existing invoice information
- `delete_invoice` - Remove invoices from the system
## [1.0.1] - 2025-09-23
#### Order Management
- `get_orders` - List orders with status filtering
- `get_order_by_id` - Retrieve specific order details
- `create_order` - Create new orders for customers
- `update_order` - Update existing order information
- `delete_order` - Remove orders from the system
### Initial Release
- **ADDED**: Complete Dolibarr API client with async/await
- **ADDED**: MCP server implementation with 30+ tools
- **ADDED**: Professional error handling and logging
- **ADDED**: Docker support with production configuration
- **ADDED**: Comprehensive test suite
- **ADDED**: Configuration management with .env support
#### Contact Management
- `get_contacts` - List contacts with company associations
- `get_contact_by_id` - Retrieve specific contact details
- `create_contact` - Create new contacts with full information
- `update_contact` - Update existing contact information
- `delete_contact` - Remove contacts from the system
### Core Features
- Full CRUD operations for all major Dolibarr modules
- Async HTTP client with proper connection handling
- Pydantic validation for type safety
- Professional logging and error reporting
- MCP 1.0 compliance for LLM integration
#### User Management
- `get_users` - List system users with permissions
- `get_user_by_id` - Retrieve specific user details
- `create_user` - Create new system users with roles
- `update_user` - Update existing user information
- `delete_user` - Remove users from the system
#### System Tools
- `test_connection` - Test API connectivity and authentication
- `get_status` - Retrieve system status and version information
- `dolibarr_raw_api` - Direct access to any Dolibarr API endpoint
#### Documentation
- Comprehensive README with installation and usage instructions
- Professional API documentation based on live testing
- Environment configuration examples and setup guides
- Code examples for both MCP and programmatic usage
#### Development Tools
- Professional `pyproject.toml` with complete metadata
- Requirements management with pinned versions
- CLI testing commands for connection verification
- Type hints throughout the codebase for better IDE support
### Security
- API key authentication with proper header management
- Input validation using Pydantic models
- Safe error handling without credential exposure
### Performance
- Async/await throughout for non-blocking operations
- Connection pooling with aiohttp ClientSession
- Configurable timeouts for API requests
- Efficient JSON parsing and response handling
### Quality
- Comprehensive error handling with custom exception types
- Detailed logging for debugging and monitoring
- Type safety with full type hints
- Professional code structure and organization
## [Unreleased]
### Planned for 1.1.0
- Docker containerization with multi-stage builds
- Advanced filtering and search capabilities
- Performance optimization and caching
- Extended API coverage for additional Dolibarr modules
### Planned for 1.2.0
- Webhook support for real-time integrations
- Bulk operations for improved efficiency
- Enhanced error recovery and retry mechanisms
- Metrics and monitoring capabilities
### Planned for 2.0.0
- Web UI for server management
- Multi-instance support
- Plugin system for extensibility
- Advanced business intelligence features
### Supported Dolibarr Modules
- User Management
- Customer/Third Party Management
- Product Management
- Invoice Management
- Order Management
- Contact Management
- Raw API access for extensibility
---
## Guidelines
## Installation Summary
### Types of Changes
- **Added** for new features
- **Changed** for changes in existing functionality
- **Deprecated** for soon-to-be removed features
- **Removed** for now removed features
- **Fixed** for any bug fixes
- **Security** for vulnerability fixes
### Windows Users (RECOMMENDED)
```cmd
.\setup_standalone.bat # Avoids pywin32 issues
.\run_standalone.bat # Start server
```
### Version Numbers
- **Major** version when making incompatible API changes
- **Minor** version when adding functionality in a backwards compatible manner
- **Patch** version when making backwards compatible bug fixes
### Linux/macOS Users
```bash
./setup.sh
python -m src.dolibarr_mcp
```
### Docker Users
```bash
docker-compose up -d
```
## Support
- 🐛 Issues: [GitHub Issues](https://github.com/latinogino/dolibarr-mcp/issues)
- 💡 Discussions: [GitHub Discussions](https://github.com/latinogino/dolibarr-mcp/discussions)
- 📖 Wiki: [Project Wiki](https://github.com/latinogino/dolibarr-mcp/wiki)