Dolibarr MCP Server
Allows n8n workflows to interact with Dolibarr ERP/CRM via the MCP server, enabling automation of Dolibarr operations such as CRUD on thirdparties, products, orders, and other endpoints.
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., "@Dolibarr MCP Serverlist all thirdparties"
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.
Dolibarr MCP Server
A compliant Model Context Protocol (MCP) server that provides structured access to Dolibarr ERP/CRM API endpoints. Built with Nitro and implementing the JSON-RPC 2.0 specification.
Features
✅ MCP Compliant: Full implementation of the Model Context Protocol specification
🔧 Complete CRUD Operations: GET, POST, PUT, DELETE support for all Dolibarr endpoints
🚀 Production Ready: Built with Nitro for optimal performance and deployment flexibility
🔒 Secure: Environment-based configuration with API key authentication
📦 Easy Integration: Compatible with n8n, Claude, and other MCP clients
🌍 Multi-runtime: Supports Node.js, Bun, and Deno
Related MCP server: Smartsheet MCP Server
Quick Start
Prerequisites
Node.js 18+
pnpm 9.0+
Dolibarr instance with REST API enabled
Valid Dolibarr API key
Installation
# Clone the repository
git clone https://github.com/ivanmartin33/dolibarr-mcp-server.git
cd dolibarr-mcp-server
# Install dependencies
pnpm install
# Copy environment file
cp .env.example .env
# Edit .env with your Dolibarr configuration
# Start development server
pnpm run devEnvironment Setup
Create a .env file in your project root:
DOLI_URL=https://your-dolibarr-instance.com/api/index.php
DOLI_KEY=your-dolibarr-api-keyRunning the Server
# Development
pnpm run dev
# Production build
pnpm run build
# Start production server
pnpm run startThe server will be available at http://localhost:3000
MCP Tools Available
The server exposes four main tools for interacting with Dolibarr:
1. dolibarr_get
Fetch data from Dolibarr API using GET method.
{
"name": "dolibarr_get",
"arguments": {
"endpoint": "thirdparties",
"id": "1",
"params": {
"limit": "10"
}
}
}2. dolibarr_post
Create new data in Dolibarr API using POST method.
{
"name": "dolibarr_post",
"arguments": {
"endpoint": "thirdparties",
"data": {
"name": "New Company",
"client": 1
}
}
}3. dolibarr_put
Update existing data in Dolibarr API using PUT method.
{
"name": "dolibarr_put",
"arguments": {
"endpoint": "thirdparties",
"id": "1",
"data": {
"name": "Updated Company Name"
}
}
}4. dolibarr_delete
Delete data from Dolibarr API using DELETE method.
{
"name": "dolibarr_delete",
"arguments": {
"endpoint": "thirdparties",
"id": "1"
}
}API Endpoints
Main MCP Endpoint
POST /mcp- Main JSON-RPC 2.0 endpoint for MCP communication
Additional Endpoints
GET /mcp/describe- Server information and tool descriptionsPOST /mcp/tools/call- Direct tool execution endpointGET /- Landing page with server information
MCP Protocol Examples
Initialize Connection
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "initialize",
"params": {},
"id": 1
}'List Available Tools
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "tools/list",
"params": {},
"id": 2
}'Execute a Tool
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "dolibarr_get",
"arguments": {
"endpoint": "users"
}
},
"id": 3
}'Integration with n8n
The Dolibarr MCP Server can be easily integrated with n8n for workflow automation:
Connection URLs
n8n in Docker:
http://host.docker.internal:3000/mcpLocal n8n:
http://localhost:3000/mcp
Starting Server for Docker Access
NITRO_HOST=0.0.0.0 NITRO_PORT=3000 pnpm run devHTTP Request Node Configuration
In your n8n workflow, add an HTTP Request node:
Method: POST
URL:
http://host.docker.internal:3000/mcp(for Docker) orhttp://localhost:3000/mcp(local)Headers:
{ "Content-Type": "application/json" }Body:
{ "jsonrpc": "2.0", "method": "tools/call", "params": { "name": "dolibarr_get", "arguments": { "endpoint": "{{ $json.endpoint }}", "id": "{{ $json.id }}" } }, "id": "{{ $runIndex }}" }
Dolibarr Configuration
API Setup in Dolibarr
Enable REST API Module:
Go to
Home > Setup > Modules/ApplicationsActivate "Web services REST API"
Create API User:
Go to
Users & GroupsCreate a new user or select existing
Generate API key in user profile
Set Permissions:
Assign appropriate permissions to the API user
Recommended: Create dedicated API user with minimal required rights
Common Dolibarr Endpoints
users- User managementthirdparties- Companies/customersproducts- Product catalogorders- Sales ordersinvoices- Customer invoicesproposals- Commercial proposalscontracts- Contractsprojects- Project management
Production Deployment
Environment Variables
Variable | Description | Default |
| Dolibarr API base URL |
|
| Dolibarr API key |
|
| Server host |
|
| Server port |
|
Docker
FROM node:18-alpine
# Enable corepack for pnpm
RUN corepack enable
WORKDIR /app
COPY package.json pnpm-lock.yaml ./
RUN pnpm install --frozen-lockfile --prod
COPY . .
RUN pnpm run build
ENV NITRO_HOST=0.0.0.0
ENV NITRO_PORT=3000
EXPOSE 3000
CMD ["node", ".output/server/index.mjs"]Docker Compose
version: '3.8'
services:
dolibarr-mcp:
build: .
ports:
- "3000:3000"
environment:
- DOLI_URL=http://host.docker.internal:4000/api/index.php
- DOLI_KEY=your-api-key
- NITRO_HOST=0.0.0.0
- NITRO_PORT=3000
restart: unless-stoppedLicense
This project is licensed under the MIT License - see the LICENSE file for details.
Links
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceEnables interaction with the Xano API through a Model Context Protocol (MCP) interface, providing secure and type-safe management of Xano database operations.Last updated
- Alicense-qualityDmaintenanceEnables interaction with Smartsheet API to search, retrieve, create, update, and manage sheets, rows, webhooks, sharing permissions, cross-sheet references, and perform bulk operations through the Model Context Protocol.Last updated161Apache 2.0
- Alicense-qualityFmaintenanceEnables interaction with the Edgee API for managing organizations, projects, domains, components, users, invitations, and API tokens through the Model Context Protocol.Last updated9Apache 2.0
- Alicense-qualityDmaintenanceProvides a Model Context Protocol interface for the Dolibarr ERP/CRM, enabling AI agents to manage customers, products, invoices, and orders. It features specialized search tools and server-side filtering to efficiently interact with Dolibarr's REST API while minimizing token usage.Last updated1MIT
Related MCP Connectors
Manage products, EU Digital Product Passports, operator parties, and GS1 EPCIS supply-chain events.
A Model Context Protocol server for Wix AI tools
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/ivanmartin33/dolibarr-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server