Files
dolibarr-mcp/docs/development.md
Benju1 b059d9c40e feat(invoice): implement atomic invoice tools (REFACTOR-3)
- Add create_invoice_draft, add_invoice_line, update_invoice_line, delete_invoice_line, set_invoice_project, validate_invoice tools
- Update DolibarrClient with corresponding methods
- Add tests for atomic invoice operations
- Update development docs with venv instructions
2025-12-08 17:13:33 +01:00

1.5 KiB
Raw Blame History

Development

This project uses the same lightweight tooling philosophy as prestashop-mcp. The code lives under src/, tests under tests/ and optional Docker assets are kept separate in docker/.

Install development dependencies

It is recommended to use a virtual environment to avoid conflicts with system packages (especially on Linux systems with externally managed environments).

# Create a virtual environment
python3 -m venv .venv

# Activate the virtual environment
source .venv/bin/activate  # On Linux/macOS
# .venv\Scripts\activate   # On Windows

# Install dependencies
pip install -r requirements.txt
pip install -e .

Run the test suite

Once your virtual environment is active:

pytest

To gather coverage metrics:

pytest --cov=src/dolibarr_mcp --cov-report=term-missing

If you encounter "command not found" errors, ensure your virtual environment is activated or run via python module:

python3 -m pytest

Formatting and linting

The project intentionally avoids heavy linting dependencies. Follow the coding style already present in the repository and run the test-suite before opening a pull request.

Docker tooling

Container assets live in docker/:

  • Dockerfile production-ready image for the MCP server
  • docker-compose.yml local stack that spins up Dolibarr together with the MCP server

Build and run the container locally with:

docker compose -f docker/docker-compose.yml up --build