Skip to content

Account and API

Connect AI agents with MCP

Let AI agents manage your Odoo hosting through the CloudPilot MCP server.

CloudPilot runs a Model Context Protocol (MCP) server, so AI assistants and agents such as Claude, Cursor or your own agent can work with your CloudPilot account: list servers and Odoo instances, check status and logs, look at backups and run a few safe actions.

Server address

https://mcp.cloudpilot.app/mcp

It uses the Streamable HTTP transport. It authenticates with a CloudPilot API key sent as Authorization: Bearer nck_…, so your MCP client must let you set a request header.

Connect a client

  1. Create an API key under Settings → API keys. Make it Read-only if the agent only needs to look, not act.
  2. Add the server to your MCP client with the key in the header.

Claude Code:

claude mcp add --transport http cloudpilot https://mcp.cloudpilot.app/mcp \
  --header "Authorization: Bearer $CLOUDPILOT_API_KEY"

Clients configured with JSON (for example a project .mcp.json):

{
  "mcpServers": {
    "cloudpilot": {
      "type": "http",
      "url": "https://mcp.cloudpilot.app/mcp",
      "headers": { "Authorization": "Bearer ${CLOUDPILOT_API_KEY}" }
    }
  }
}

Tools

Area Tools
Account get_me, list_notifications
Servers list_servers, get_server, get_server_stats
Odoo instances list_instances, get_instance, get_instance_status, get_instance_logs, list_instance_modules
Backups list_backups, list_backup_schedules
Actions create_backup, restart_instance, start_instance, stop_instance, get_operation (progress of an action)

The server cannot delete anything or restore backups. Actions run in the background: the agent gets an operation ID and checks its progress with get_operation.

Agent-to-agent (A2A)

The same operations are available to other AI agents over the A2A protocol (version 1.0, JSON-RPC) at https://mcp.cloudpilot.app/a2a, described by the Agent Card at https://cloudpilot.app/.well-known/agent-card.json. Each tool above is an A2A skill. Send a message with a data part naming the skill and its arguments, with the same API key in the Authorization header:

{ "data": { "skill": "get_instance", "arguments": { "instanceId": "…" } } }

The reply is a completed task whose artifact holds the CloudPilot API response as JSON. The endpoint does not understand free-form chat requests.

Access and safety

  • MCP access is included in the Pro and Business plans. Each API key can make up to 60 MCP requests a minute on Pro, and 300 on Business.
  • The agent has exactly the access of the API key: the account it was created in and the role of the person who created it. A read-only key can't run actions.
  • The MCP server stores nothing. It passes each request to the CloudPilot API with your key.
  • Most MCP clients ask before running a tool that changes something. Stopping an instance is marked as destructive.
  • Revoke the key under Settings → API keys to cut off the agent at once.

Still stuck? Email hello@cloudpilot.app and we'll help.