Magento Cloud MCP Server
MCP server for Adobe Commerce Cloud — REST API + SSH, no PHP CLI required
Open source Open in the app JSON README (API)
About
MCP server for Adobe Commerce Cloud — REST API + SSH, no PHP CLI required
Details
- Kind
- MCP servers
- Topic
- Developer tools
- Publisher
- juan-cinto-infracommerce
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 2.4.0
- Last push
- 2026-08-04T12:24:55Z
- Repository state
- ativo
- Language
- JavaScript
- License
- MIT
- Added
- 2026-08-29 04:00:17
- Updated
- 2026-08-29 04:00:17
- Origin id
io.github.juan-cinto-infracommerce/magento-cloud
README
# mcp-magento-cloud
MCP (Model Context Protocol) server for Adobe Commerce Cloud. Allows AI agents to interact with Magento Cloud projects — query databases, read logs, list environments, inspect activities, and more.
**No PHP CLI required** — uses the REST API and SSH directly.
## Versions
| Version | Description | Requirements |
|---------|-------------|--------------|
| **v2.x** (latest) | REST API + SSH directly. Browser login or API token. | Node.js 20+, `ssh` binary |
| **v1.x** | Wraps the `magento-cloud` PHP CLI. | Node.js 20+, `magento-cloud` CLI installed |
### Using a specific version
```bash
# Latest (v2.x)
npx -y mcp-magento-cloud
# v1.x (requires magento-cloud CLI)
npx -y mcp-magento-cloud@1.0.1
```
## Prerequisites (v2.x)
- **Node.js 20+**
- **`ssh` binary** — Available by default on Linux/macOS
## Quick Start
### Authentication
#### Automatic browser login (recommended)
No setup required. The first time you use any tool, a browser window will open automatically for OAuth2 login via your Adobe/Magento account. Credentials are stored locally in `~/.config/mcp-magento-cloud/credentials.json` and refreshed automatically.
You can also login manually:
```bash
npx -y -p mcp-magento-cloud mcp-magento-cloud-login
```
#### API token (alternative)
If you prefer using an API token (e.g. for CI/CD), create one at https://accounts.magento.cloud/user/api-tokens and pass it as an environment variable (`MAGENTO_CLOUD_CLI_TOKEN`). When a token is set, browser login is skipped.
> **Security note:** API tokens grant full access to all projects your account has access to. Treat them as sensitive secrets. If a token is compromised, revoke it immediately at the URL above.
### Configure your MCP client
#### Kilo
In `~/.config/kilo/kilo.json`:
```json
{
"mcp": {
"magento-cloud": {
"type": "local",
"command": ["npx", "-y", "mcp-magento-cloud"]
}
}
}
```
If using an API token instead of browser login, add the `environment` key:
```json
{
"mcp": {
"magento-cloud": {
"type": "local",
"command": ["npx", "-y", "mcp-magento-cloud"],
"environment": {
"MAGENTO_CLOUD_CLI_TOKEN": "your-api-token-here"
}
}
}
}
```
#### Claude Desktop
In `claude_desktop_config.json`:
```json
{
"mcpServers": {
"magento-cloud": {
"command": "npx",
"args": ["-y", "mcp-magento-cloud"]
}
}
}
```
#### Gemini CLI
In `~/.gemini/settings.json`:
```json
{
"mcpServers": {
"magento-cloud": {
"command": "npx",
"args": ["-y", "mcp-magento-cloud"]
}
}
}
```
## Available Tools
### REST API Tools
| Tool | Description |
|------|-------------|
| `list_projects` | List all projects available to the current user |
| `list_environments` | List all environments for a project |
| `get_environment_info` | Get detailed info about an environment |
| `get_environment_urls` | Get the public URLs of an environment |
| `list_activities` | List recent activities with filters |
| `get_activity_log` | Display the full log for an activity |
| `list_variables` | List project or environment variables |
| `list_services` | List services with versions and disk allocation |
### SSH Tools
| Tool | Description |
|------|-------------|
| `execute_sql` | Execute a read-only SQL query on the remote database |
| `get_environment_logs` | Read server logs (deploy, error, cron, etc.) |
| `get_environment_relationships` | Get service connection details (host, port, credentials) |
| `list_log_types` | List available log types |
### Write Tools
| Tool | Description |
|------|-------------|
| `set_cloud_config` | Set a Magento config value via `bin/magento config:set` over SSH (supports scope/scope_code and encrypted values). Blocked on the `production` environment. |
| `create_branch` | Create a new environment branch cloned from integration |
| `push_branch` | Push a local git branch to the project using SSH certificate auth |
## Security
- **SQL queries are validated** — only SELECT, SHOW, DESCRIBE, and EXPLAIN are allowed
- SQL comments are stripped and multiple statements are blocked to prevent injection
- **Production is protected** — `set_cloud_config` refuses to run against the `production` environment; such changes must be made manually
- SSH authentication uses temporary Ed25519 certificates signed by the Magento Cloud API
- Browser login stores refresh tokens locally with `0600` permissions
- API tokens should be treated as sensitive secrets — they grant full access to all projects
## Testing with MCP Inspector
```bash
# Browser login will open automatically on first tool use
npx @modelcontextprotocol/inspector node dist/main.js
# Or with API token
MAGENTO_CLOUD_CLI_TOKEN=your-token npx @modelcontextprotocol/inspector node dist/main.js
```
## Development
```bash
git clone https://github.com/juan-cinto-infracommerce/mcp-magento-cloud.git
cd mcp-magento-cloud
npm install
npm run build
npm start
```
## License
MIT