MCP Vtenext

Communauté Marketing et ventes

Query, create and update opportunities and contacts in VTENext, an open-source vtiger-based CRM, via its WebService API.

Installation

Les étapes d'installation sont dans la documentation ci-dessous. Documentation

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. mcp-vtenext
  2. Requirements
  3. Setup
  4. Read-only mode
  5. Claude Code integration
  6. Tools
  7. Authentication
  8. Tests
  9. License

mcp-vtenext

MCP server for VTENext CRM: exposes the WebService API as tools for Claude and other MCP-compatible clients.

Requirements

  • Node.js 18+
  • A running VTENext instance (self-hosted or Docker, see ../docker)

Setup

cd mcp/vtenext/server
npm install
cp .env.example .env

Edit .env:

VTENEXT_URL=http://your-vtenext-instance
VTENEXT_USERNAME=admin
VTENEXT_ACCESS_KEY=your_access_key
READ_ONLY=false

The access key is in VTENext under Admin → Users → [user] → Access Key.

Read-only mode

Set READ_ONLY=true to prevent any write operation on VTENext. When enabled, the tools create_opportunita, update_opportunita and add_nota_opportunita return an error instead of writing data.

This is useful when the server is used by AI bots or automated agents that should only read CRM data. To run a read-only instance alongside a full-access one, pass the variable via the MCP config:

{
  "mcpServers": {
    "vtenext-bot": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/mcp/vtenext/server/index.js"],
      "env": {
        "VTENEXT_URL": "http://your-vtenext-instance",
        "VTENEXT_USERNAME": "admin",
        "VTENEXT_ACCESS_KEY": "your_access_key",
        "READ_ONLY": "true"
      }
    }
  }
}

Claude Code integration

Add to .mcp.json in your project root:

{
  "mcpServers": {
    "vtenext": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/mcp/vtenext/server/index.js"]
    }
  }
}

Tools

Opportunità (Potentials)
ToolDescription
list_opportunitaList opportunities with optional filters (status, search, limit)
get_opportunitaGet full details of an opportunity by ID
search_opportunitaSearch opportunities by name
create_opportunitaCreate a new opportunity (write, blocked in read-only mode)
update_opportunitaUpdate status, amount or notes on an existing opportunity (write, blocked in read-only mode)
Contatti (Contacts)
ToolDescription
search_contattiSearch contacts by name, email or company
Attività e note
ToolDescription
add_nota_opportunitaAdd a comment/note to an opportunity (write, blocked in read-only mode)
list_attivita_opportunitaList activities linked to an opportunity
Utilità
ToolDescription
describe_moduloShow available fields for any VTENext module
query_rawRun a raw VTQL SELECT query

Authentication

VTENext uses the vtiger WebService protocol:

  1. GET /webservice.php?operation=getchallenge → token
  2. MD5(token + accessKey) → hashed key
  3. POST /webservice.php with operation=login (form-encoded) → sessionName

Sessions are cached for 4 minutes (token lifetime is 5 minutes).

Tests

# Unit tests (no VTENext required)
npm test

# Integration tests (requires live VTENext at VTENEXT_URL)
npm run test:integration

License

MIT


Maintained by **Castaldo Solutions**, enterprise-grade technology built for SMEs.

Why we built an MCP server for a CRM instead of an integration: Connecting VTENext to Claude with MCP.

Questions fréquentes

Qu'est-ce que MCP Vtenext ?

Query, create and update opportunities and contacts in VTENext, an open-source vtiger-based CRM, via its WebService API.

Comment installer MCP Vtenext ?

Suivez les étapes d'installation de sa documentation, affichée sur cette page et dans son dépôt.

MCP Vtenext est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient MCP Vtenext ?

Il est publié par Castaldo-Solutions. AI.tn le référence sans le maintenir ni le recommander.

Issu des listes communautaires awesome-mcp-servers et du dépôt GitHub du projet. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.