Odoo Sh

SSH-based MCP server enabling AI-assisted Odoo.sh development with Git and module creation workflows.
  • typescript

1

GitHub Stars

typescript

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "dalahmasdev-odoo-sh-mcp-server": {
      "command": "node",
      "args": [
        "/absolute/path/to/Odoo.sh MCP/dist/index.js"
      ],
      "env": {
        "LOG_LEVEL": "info",
        "SSH_TIMEOUT": "30000",
        "ODOO_SH_SSH_HOST": "project-name.dev.odoo.com",
        "ODOO_SH_SSH_PORT": "22",
        "ODOO_SH_SSH_USER": "BUILD_ID",
        "ODOO_SH_SSH_KEY_PATH": "/absolute/path/to/ssh/key"
      }
    }
  }
}

You can run the Odoo.sh MCP Server locally to interact with your Odoo.sh projects over SSH, enabling AI-assisted development, Git operations, and live environment insight through a standardized MCP client. This guide walks you through installation, configuration, and practical usage so you can build and modify Odoo modules directly from your preferred MCP client.

How to use

Once you have the MCP server configured, you connect with your MCP client (such as Claude Desktop or Cline) to perform SSH-based operations against your Odoo.sh project. You can view project and branch information, trigger builds, inspect logs, manage files and directories, and run code in the Odoo shell. Use it to create new modules, modify existing ones, and push changes back to the remote Odoo.sh repository. The workflow supports standard Git actions (status, add, commit, push, pull, checkout) and adds AI-assisted development to scaffold and iterate on modules.

How to install

Prerequisites: install Node.js and npm, obtain an Odoo.sh account with SSH access, and ensure you have an MCP client installed (examples: Warp, Claude Desktop, Cline, Continue). Then follow these steps to set up the MCP server locally and prepare your client configuration.

  1. Install dependencies with npm.

  2. Build the project to generate the runtime artifacts.

  3. Configure your MCP client to connect via the stdio-based server entry described in the configuration section.

Configuration

Environment variables control how the MCP server connects to Odoo.sh and how it behaves. Create a secure .env file or export the variables in your shell before starting the client. The following variables are used by the MCP server setup.

ODOO_SH_SSH_HOST=project-name.dev.odoo.com
ODOO_SH_SSH_USER=BUILD_ID
ODOO_SH_SSH_KEY_PATH=/absolute/path/to/ssh/key
ODOO_SH_SSH_PORT=22
ODOO_SH_SSH_PASSPHRASE=
SSH_TIMEOUT=30000
LOG_LEVEL=info

Using with Claude Desktop (example)

Configure Claude Desktop to connect to the MCP server using a local stdio command that runs the MCP runtime. Provide the absolute path to the runtime script and the required SSH environment variables.

{
  "mcpServers": {
    "odoo_sh": {
      "command": "node",
      "args": ["/absolute/path/to/Odoo.sh MCP/dist/index.js"],
      "env": {
        "ODOO_SH_SSH_HOST": "project-name.dev.odoo.com",
        "ODOO_SH_SSH_USER": "BUILD_ID",
        "ODOO_SH_SSH_KEY_PATH": "/absolute/path/to/ssh/key"
      }
    }
  }
}

Using with Cline (VSCode)

Add a similar stdio configuration to VSCode settings to connect your editor directly to the MCP server.

{
  "cline.mcpServers": {
    "odoo_sh": {
      "command": "node",
      "args": ["/absolute/path/to/Odoo.sh MCP/dist/index.js"],
      "env": {
        "ODOO_SH_SSH_HOST": "${env:ODOO_SH_SSH_HOST}",
        "ODOO_SH_SSH_USER": "${env:ODOO_SH_SSH_USER}",
        "ODOO_SH_SSH_KEY_PATH": "${env:ODOO_SH_SSH_KEY_PATH}"
      }
    }
  }
}

Available tools

get_project_info

Retrieve project details including the branch list and repository information to plan work on a given project.

get_current_branch

Query the currently checked-out branch for the project.

list_branches

List branches with last commit information for quick navigation (may have issues in some MCP clients).

get_build_history

Fetch commit/build history for a specific branch to track changes and status.

trigger_build

Initiate a new build by creating an empty commit on a chosen branch.

list_databases

List all PostgreSQL databases and their sizes for project maintenance.

get_logs

Retrieve Odoo logs of various types with a configurable number of lines.

execute_odoo_shell

Run Python code inside the Odoo shell environment for live experimentation.

git_status

Show the current Git working tree status including modified, staged, and untracked files.

write_file

Create or update a file with given content using base64 transfer to preserve data integrity.

read_file

Read and return the contents of a specified file.

list_files

List files and directories within a specified path.

create_directory

Create a directory path, including necessary parent directories.

git_add

Stage specified files for commit in the Git index.

git_commit

Commit staged changes with a message.

git_push

Push commits to the remote repository on a given or current branch.

git_checkout

Switch to an existing branch or create a new one.

git_pull

Pull updates from the remote repository to synchronize changes.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational