Interact with Odoo instances using the XML-RPC API. Requires configuration via environment variables or config files.
A Model Context Protocol (MCP) server that provides tools for interacting with Odoo via XML-RPC.
npm install -g .
~/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"
}
}
}
}
Clone or copy this repository to your project directory
Install dependencies:
npm install
npm run build
.claude.json
in your project root:{
"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"
}
}
}
}
}
For development, you can run directly with tsx:
npm run dev -- --project your_project --environment your_env
Create a configuration file at ~/.odoo_config/<project>_<environment>.conf
:
[odoo]
url = https://your-odoo.domain.com
database = your_database
username = your_username
password = your_password
Set these environment variables (they take priority over config files):
ODOO_URL
ODOO_DATABASE
ODOO_USERNAME
ODOO_PASSWORD
odoo_search
Search for records in an Odoo model.
{
"model": "res.partner",
"domain": [["is_company", "=", true]],
"limit": 10
}
odoo_read
Read specific records by ID.
{
"model": "res.partner",
"ids": [1, 2, 3],
"fields": ["name", "email", "phone"]
}
odoo_create
Create a new record.
{
"model": "res.partner",
"values": {
"name": "New Company",
"is_company": true,
"email": "info@newcompany.com"
}
}
odoo_write
Update existing records.
{
"model": "res.partner",
"ids": [123],
"values": {
"phone": "+1-555-0123"
}
}
odoo_unlink
Delete records.
{
"model": "res.partner",
"ids": [456]
}
odoo_search_count
Count records matching a domain.
{
"model": "res.partner",
"domain": [["is_company", "=", true]]
}
odoo_fields_get
Get field definitions for a model.
{
"model": "res.partner",
"fields": ["name", "email"]
}
odoo_search_read
Search and read in one operation.
{
"model": "res.partner",
"domain": [["is_company", "=", true]],
"fields": ["name", "email"],
"limit": 5
}
npm run dev -- --project myproject --environment staging
npm run build
npm run dev -- --project idp --environment staging
MIT License
A Model Context Protocol (MCP) server that enables AI assistants to integrate with Prometheus Alertmanager
Integrates Ollama's local LLM models with MCP-compatible applications. Requires a local Ollama installation.
Turns any Swagger/OpenAPI REST endpoint with a yaml/json definition into an MCP Server with Langchain/Langflow integration automatically.
Remote server (SSE/Streamable) for the latest Svelte and SvelteKit documentation
Generate MCP servers using Smithery with Cursor IDE integration.
Run and manage docker containers, docker compose, and logs
A comprehensive MCP server for managing OPNsense firewalls, offering over 300 tools for configuration and monitoring.
Bring the full power of BrowserStack’s Test Platform to your AI tools, making testing faster and easier for every developer and tester on your team.
An MCP server for interacting with the Tatara blockchain ecosystem. Requires configuration for the Tatara RPC endpoint and a wallet private key.
MCP server for TeamCity, integrates with Claude Desktop and Cursor.