mcp-server-dolibarr
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-dolibarrlist all commercial proposals from last month"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-server-dolibarr
An MCP server for Dolibarr ERP/CRM. Lets Claude (or any MCP-compatible client) read and manage your Dolibarr thirdparties (clients/suppliers), commercial proposals, contracts, and invoices directly — no manual API scripting needed.
Built by Nexora 360 Digital, released for anyone running Dolibarr to use for free.
Requirements
A running Dolibarr instance (v15+) with the REST API module enabled (Setup → Modules → API)
A Dolibarr API key for the user the assistant should act as (your user profile → API/REST tab → Generate Key)
Node.js 18 or newer
Related MCP server: clio-mcp
Installation
No install needed — run it directly with npx (see configuration below), or clone this repo and run npm install.
Configuration
The server reads two environment variables:
Variable | Description | Example |
| Your Dolibarr REST API base URL |
|
| The API key generated for your Dolibarr user |
|
Claude Code
claude mcp add dolibarr \
--env DOLIBARR_URL=https://your-domain.com/dolibarr/api/index.php \
--env DOLIBARR_API_KEY=your_api_key_here \
-- npx -y mcp-server-dolibarrClaude Desktop / other MCP clients
Add to your MCP config file (e.g. claude_desktop_config.json):
{
"mcpServers": {
"dolibarr": {
"command": "npx",
"args": ["-y", "mcp-server-dolibarr"],
"env": {
"DOLIBARR_URL": "https://your-domain.com/dolibarr/api/index.php",
"DOLIBARR_API_KEY": "your_api_key_here"
}
}
}
}Available tools
Connectivity
dolibarr_ping— verify the URL/API key are working
Thirdparties (clients/suppliers)
dolibarr_list_thirdpartiesdolibarr_get_thirdpartydolibarr_find_thirdparty_by_emaildolibarr_create_thirdpartydolibarr_update_thirdparty
Commercial Proposals (Quotes)
dolibarr_list_proposalsdolibarr_get_proposaldolibarr_create_proposaldolibarr_add_proposal_linedolibarr_validate_proposal
Contracts
dolibarr_list_contractsdolibarr_get_contractdolibarr_create_contractdolibarr_add_contract_line
Invoices
dolibarr_list_invoicesdolibarr_get_invoicedolibarr_create_invoicedolibarr_add_invoice_linedolibarr_validate_invoicedolibarr_get_invoice_pdf_url
Anything else
dolibarr_request— raw passthrough to any Dolibarr REST endpoint (/products,/users,/projects, etc.) for the parts of Dolibarr's huge API surface this server doesn't wrap explicitly yet.
Notes & known Dolibarr quirks
Proposals, contracts and invoices are created in two steps in Dolibarr's API: create the header first, then add line items separately (
*_linesendpoints). The tools above mirror that.Dolibarr 23.x line-creation silent-failure bug: on Dolibarr 23 instances,
POST /{proposals|invoices|contracts}/{id}/linesactually expects the body wrapped as{"request_data": {...fields...}}, not a flat object of fields (despite this not matching the field names documented for older Dolibarr versions). Sending a flat object doesn't error — it silently creates a blank line withspecial_code: "3"(no description, qty 0, price 0) instead of your real data.dolibarr_add_proposal_line,dolibarr_add_invoice_lineanddolibarr_add_contract_linealready wrap the body correctly to work around this. If you see blank/special_code: 3lines appearing on Dolibarr versions other than 23.x, check your instance's live schema at/api/index.php/explorer/swagger.jsonand adjustindex.jsaccordingly — Dolibarr's REST API shape has changed across major versions.On some Dolibarr versions, certain endpoints (e.g. contracts) only work reliably for admin/SuperAdmin API keys — if a non-admin key fails, try generating the key as an admin user.
country_idfor thirdparties follows Dolibarr's internal country table (e.g.144= Sri Lanka in standard Dolibarr installs) — check your instance if unsure.
Contributing
Issues and PRs welcome — this was built to scratch a real itch (managing client proposals/invoices via Claude) and intentionally keeps a dolibarr_request escape hatch so it stays useful even where dedicated tools haven't been written yet.
License
MIT — see LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sachitha7/mcp-server-dolibarr'
If you have feedback or need assistance with the MCP directory API, please join our Discord server