Complete reference for all 24 tools available in the Mendix Public Cloud MCP server.
Lists all Mendix applications accessible to the authenticated user.
Parameters:
offset(number, optional) - Pagination offsetlimit(number, optional) - Maximum apps to returnlicenseType(string, optional) - Filter by "free" or "licensed"
Example:
{
"offset": 0,
"limit": 10,
"licenseType": "licensed"
}Retrieves detailed information about a specific app.
Parameters:
appId(string, required) - UUID of the application
Example:
{
"appId": "12345678-1234-1234-1234-123456789abc"
}Lists all environments for a specific app.
Parameters:
appId(string, required) - UUID of the applicationexpand(string, optional) - Set to "package" to include deployed package details
Example:
{
"appId": "12345678-1234-1234-1234-123456789abc",
"expand": "package"
}Gets detailed information about a specific environment.
Parameters:
appId(string, required) - UUID of the applicationenvironmentId(string, required) - UUID of the environmentexpand(string, optional) - Set to "package" for package details
Example:
{
"appId": "12345678-1234-1234-1234-123456789abc",
"environmentId": "87654321-4321-4321-4321-cba987654321",
"expand": "package"
}Starts a stopped environment (returns JobId for tracking).
Parameters:
appId(string, required) - Subdomain name of the applicationmode(string, required) - Environment mode (Test, Acceptance, Production, etc.)autoSyncDb(boolean, optional) - Auto-sync database (default: true)
Example:
{
"appId": "myapp",
"mode": "Production",
"autoSyncDb": true
}Stops a running environment.
Parameters:
appId(string, required) - Subdomain namemode(string, required) - Environment mode
Example:
{
"appId": "myapp",
"mode": "Test"
}Gets the current status of an environment.
Parameters:
appId(string, required) - Subdomain namemode(string, required) - Environment mode
Example:
{
"appId": "myapp",
"mode": "Acceptance"
}Transports (deploys) a package to an environment.
Parameters:
appId(string, required) - Subdomain namemode(string, required) - Target environment modepackageId(string, required) - Package ID to deploy
Example:
{
"appId": "myapp",
"mode": "Test",
"packageId": "package-uuid-123"
}Gets download URL for application logs for a specific date.
Parameters:
appId(string, required) - Subdomain namemode(string, required) - Environment modedate(string, required) - Date in YYYY-MM-DD format
Example:
{
"appId": "myapp",
"mode": "Production",
"date": "2024-01-15"
}Retrieves environment settings (constants, custom settings, scheduled events).
Parameters:
appId(string, required) - Subdomain namemode(string, required) - Environment mode
Example:
{
"appId": "myapp",
"mode": "Production"
}Gets the status of an asynchronous job (e.g., package upload).
Parameters:
appId(string, required) - Subdomain name of the applicationjobId(string, required) - Job ID returned from a previous operation
Example:
{
"appId": "myapp",
"jobId": "66046953-ecf7-4550-a889-4b7e9f1e1705"
}Response States:
Queued- Job is waiting to be processedRunning- Job is currently being processedCompleted- Job finished successfullyFailed- Job encountered an error
Lists all deployment packages for an app.
Parameters:
appId(string, required) - Subdomain name
Example:
{
"appId": "myapp"
}Retrieves information about a specific package.
Parameters:
appId(string, required) - Subdomain namepackageId(string, required) - Package identifierincludeUrl(boolean, optional) - Include download URL (default: false)
Example:
{
"appId": "myapp",
"packageId": "package-123",
"includeUrl": true
}Starts building a new deployment package from source control.
Parameters:
appId(string, required) - Subdomain nameversion(string, required) - Semantic version (e.g., "2.3.5")branch(string, optional) - Branch name ("main", "trunk", "branches/feature-x")revision(string, optional) - Git commit hash or SVN revision numberdescription(string, optional) - Package description
Example:
{
"appId": "myapp",
"branch": "main",
"revision": "1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8r9s0t",
"version": "2.3.5",
"description": "Production release"
}Deletes a deployment package.
Parameters:
appId(string, required) - Subdomain namepackageId(string, required) - Package ID to delete
Example:
{
"appId": "myapp",
"packageId": "package-123"
}Lists all snapshots for an environment.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifieroffset(number, optional) - Pagination offset (default: 0)limit(number, optional) - Maximum items (default: 100)
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"offset": 0,
"limit": 50
}Creates a new backup snapshot of an environment.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifiercomment(string, optional) - Description of the snapshot
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"comment": "Pre-deployment backup"
}Gets the status and details of a specific snapshot.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifiersnapshotId(string, required) - Snapshot identifier
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"snapshotId": "snapshot-abc-123"
}Deletes a snapshot permanently.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifiersnapshotId(string, required) - Snapshot ID to delete
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"snapshotId": "snapshot-abc-123"
}Creates a downloadable backup archive from a snapshot.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifiersnapshotId(string, required) - Snapshot identifierdataType(string, optional) - "database_only" or "files_and_database" (default)
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"snapshotId": "snapshot-abc-123",
"dataType": "files_and_database"
}Gets the status of an archive (includes download URL when completed).
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifiersnapshotId(string, required) - Snapshot identifierarchiveId(string, required) - Archive identifier
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"snapshotId": "snapshot-abc-123",
"archiveId": "archive-xyz-789"
}Restores an environment from a snapshot (environment must be stopped).
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Target environment identifiersourceSnapshotId(string, required) - Snapshot to restore fromdbOnly(boolean, optional) - Database-only restore (default: false)
Example:
{
"projectId": "myapp",
"environmentId": "env-test",
"sourceSnapshotId": "snapshot-from-prod",
"dbOnly": false
}Gets the status of a restore operation.
Parameters:
projectId(string, required) - Project/app identifierenvironmentId(string, required) - Environment identifierrestoreId(string, required) - Restore operation identifier
Example:
{
"projectId": "myapp",
"environmentId": "env-123",
"restoreId": "restore-operation-456"
}- Build:
mendix_start_build- Create package from source - Monitor:
mendix_get_package- Check build status - Transport:
mendix_transport_package- Deploy to environment - Start:
mendix_start_environment- Start the environment
- Create:
mendix_create_snapshot- Take a backup - Monitor:
mendix_get_snapshot- Wait for completion - Archive:
mendix_create_archive- Generate download - Download:
mendix_get_archive- Get download URL - Restore:
mendix_restore_snapshot- Restore if needed
- List:
mendix_list_environments- See all environments - Check:
mendix_get_environment_status- Check status - Stop:
mendix_stop_environment- Stop if needed - Restore:
mendix_restore_snapshot- Restore from backup - Start:
mendix_start_environment- Start environment
- API v1 vs v4: v1 uses subdomain names (e.g., "myapp"), v4 uses UUIDs
- Async Operations: Build, snapshot, archive, and restore operations are async
- State Tracking: Use
queued→running→completed/failed - Permissions: All operations require API Rights; backups require additional permissions
- Archive URLs: Valid for 8 hours after completion