Odoo XML-RPC MCP Server
Interaja com instâncias do Odoo usando a API XML-RPC. Requer configuração via variáveis de ambiente ou arquivos de configuração.
Documentação
Odoo XML-RPC MCP Server
Um servidor Model Context Protocol (MCP) que fornece ferramentas para interagir com o Odoo via XML-RPC.
Recursos
- Conecte-se a qualquer instância do Odoo via XML-RPC
- Parâmetros de projeto e ambiente configuráveis
- Suporte a variáveis de ambiente com prioridade sobre arquivos de configuração
- Conjunto completo de operações do Odoo: pesquisar, ler, criar, escrever, excluir
- Integração com Claude Desktop e Claude Code
Instalação
Instalação Global (Desktop MCP Server)
- Instale globalmente usando npm:
npm install -g .
- Adicione à sua configuração do Claude Desktop (
~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"odoo-xmlrpc": {
"command": "odoo-xmlrpc-mcp-server",
"args": ["--project", "your_project", "--environment", "your_env"],
"env": {
"ODOO_URL": "https://your-odoo.domain.com",
"ODOO_DATABASE": "your_database",
"ODOO_USERNAME": "your_username",
"ODOO_PASSWORD": "your_password"
}
}
}
}
Instalação Local (Claude Code)
-
Clone ou copie este repositório para o diretório do seu projeto
-
Instale as dependências:
npm install
- Compile o projeto:
npm run build
- Crie
.claude.jsonna raiz do seu projeto:
{
"mcp": {
"servers": {
"odoo-xmlrpc": {
"command": "node",
"args": ["./dist/index.js", "--project", "your_project", "--environment", "your_env"],
"env": {
"ODOO_URL": "https://your-odoo.domain.com",
"ODOO_DATABASE": "your_database",
"ODOO_USERNAME": "your_username",
"ODOO_PASSWORD": "your_password"
}
}
}
}
}
Desenvolvimento
Para desenvolvimento, você pode executar diretamente com tsx:
npm run dev -- --project your_project --environment your_env
Configuração
Método de Arquivo de Configuração
Crie um arquivo de configuração em ~/.odoo_config/<project>_<environment>.conf:
[odoo]
url = https://your-odoo.domain.com
database = your_database
username = your_username
password = your_password
Variáveis de Ambiente (Prioridade)
Defina estas variáveis de ambiente (elas têm prioridade sobre arquivos de configuração):
ODOO_URLODOO_DATABASEODOO_USERNAMEODOO_PASSWORD
Uso
Ferramentas Disponíveis
odoo_search
Pesquise registros em um modelo do Odoo.
{
"model": "res.partner",
"domain": [["is_company", "=", true]],
"limit": 10
}
odoo_read
Leia registros específicos por ID.
{
"model": "res.partner",
"ids": [1, 2, 3],
"fields": ["name", "email", "phone"]
}
odoo_create
Crie um novo registro.
{
"model": "res.partner",
"values": {
"name": "New Company",
"is_company": true,
"email": "info@newcompany.com"
}
}
odoo_write
Atualize registros existentes.
{
"model": "res.partner",
"ids": [123],
"values": {
"phone": "+1-555-0123"
}
}
odoo_unlink
Exclua registros.
{
"model": "res.partner",
"ids": [456]
}
odoo_search_count
Conte registros que correspondem a um domínio.
{
"model": "res.partner",
"domain": [["is_company", "=", true]]
}
odoo_fields_get
Obtenha definições de campos para um modelo.
{
"model": "res.partner",
"fields": ["name", "email"]
}
odoo_search_read
Pesquise e leia em uma única operação.
{
"model": "res.partner",
"domain": [["is_company", "=", true]],
"fields": ["name", "email"],
"limit": 5
}
Desenvolvimento
Requisitos
- Node.js 18+
- npm ou yarn
Executando Localmente
npm run dev -- --project myproject --environment staging
Compilação
npm run build
Testando a Conexão
npm run dev -- --project idp --environment staging
Licença
Licença MIT