Install the ap CLI and sign in
A script installs the current release into ~/.local/bin (Windows: %LOCALAPPDATA%\ap-cli) and adds the folder to your PATH; the setup app ships the CLI as well, and remote workspaces have it preinstalled.
# macOS and Linux
curl -fsSL https://www.application-platform.com/install.sh | sh
# Windows (PowerShell)
irm https://www.application-platform.com/install.ps1 | iex
The script accepts --dir, --version, and --no-modify-path (after sh -s --); the manual binaries are on the downloads page. Then, in a new terminal:
ap login # opens the browser to sign in
ap whoami # shows user and organization
ap doctor # checks that Git, Docker, runtimes and friends are present
ap cli-update check # checks for a newer CLI release
ap cli-update update-now installs a newer release, ap logout removes the stored session, and the commands for working inside a repository are covered in Local development.
Install the agent plugin
The MIT-licensed plugin at doppelt-digital/application-platform-plugin needs Node.js 18 or newer plus the ap CLI; one command detects the installed agent tools, writes skills and MCP configuration, starts ap login and verifies the session with ap whoami:
npx --yes github:doppelt-digital/application-platform-plugin
If you prefer to sign in separately, install only the plugin:
npx plugins add doppelt-digital/application-platform-plugin -s user -y
ap login
Claude Code and Codex have their own marketplaces, and tools without MCP support get the skills only:
# Claude Code
claude plugin marketplace add doppelt-digital/application-platform-plugin
claude plugin install application-platform@application-platform --scope user
# Codex, then install from /plugins
codex plugin marketplace add doppelt-digital/application-platform-plugin
# Skills only, without MCP (OpenCode, Windsurf, Continue)
npx skills add doppelt-digital/application-platform-plugin -g -y
In Cursor you open Customize → Plugins or use npx plugins add from above; the installer places the plugin under ~/.cursor/plugins/local/application-platform, and after any variant you reload the editor. Work with an AI agent walks through the same installation step by step.
The plugin ships the skills setup-and-login, create-project, import-existing-project and run-local, the slash commands /setup-and-login, /create-project and /import-existing-project, a Cursor rule with the platform conventions, and the MCP configuration for the server application-platform, which starts ap mcp serve over stdio. For your own entry in .cursor/mcp.json or .mcp.json, this block is enough:
{
"mcpServers": {
"application-platform": {
"command": "ap",
"args": ["mcp", "serve"]
}
}
}
The MCP tools
Destructive tools require confirm=true, and status messages show no internal infrastructure terms.
| Area | Tools |
|---|---|
| Identity and status | platform_whoami, platform_watch, platform_status |
| Organizations | platform_organizations_* with list, get, create, update, invite and member management |
| Projects | platform_projects_* with list, get, create, update, delete, demo_json, clone, import_local, status, import_android_keystore and load_tests |
| Servers | platform_servers_* with list, get, create, update, delete and monitoring |
| Credentials | platform_credentials_create for web space, SMTP, App Store, Play Store, Hetzner and Hostinger, plus platform_credentials_sentry_projects |
| Workspaces, computers, compliance | platform_workspaces_*, platform_computers_*, platform_compliance_* |
The call order for import and project creation is described in Import an existing repository and Create a new project.
When the agent gets stuck
If a tool reports not logged in or session expired, run ap login and check with ap whoami. If ap is missing from the PATH, install the CLI and reload the editor. If the server application-platform is missing in the client, the plugin is usually not installed or the window has not been reloaded.
Cloud agents without a local ap cannot use the stdio MCP; import and project creation need a locally running agent. If create, import or watch fails, that error message stands; the agent does not work around it with its own git clone or git remote add.