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
- Create an API key under Settings → API keys. Make it Read-only if the agent only needs to look, not act.
- 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.