Codemagic integration
Codemagic is a CI/CD service for mobile apps (Flutter, iOS, Android, React Native). Through its v3 REST API an agent can list apps, teams and app workflows, start builds and follow their status, artifacts and build actions, read team build analytics, manage environment variable groups and variables, tester groups and their contacts, external build notification recipients, app previews and over-the-air update usage. Billing, subscriptions, team membership, invitations and ownership, API key and OTA access or deployment keys, audit logs, build remote access and the legacy v1 caches and artifact endpoints are not exposed. Authentication is the user's personal Codemagic API token (Teams, Personal Account, Integrations, Codemagic API) sent in the x-auth-token header; it acts with that user's team role. Limit: 5,000 requests per hour.
Say what should happen.
The workflow builds itself.
What you can do with Codemagic
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Variable group, 7 operations
create_app_variable_groupCreate app variable groupPOSTCreates an environment variable group for an app and returns it with its id; add variables with import_variables.create_team_variable_groupCreate team variable groupPOSTCreates a team-level environment variable group with its advanced_security setting and returns it with its id.delete_variable_groupDelete variable groupDELETEPermanently deletes a variable group and all its variables.get_variable_groupGet variable groupGETReturns a variable group: id, name and, for a team group, its advanced_security setting.list_app_variable_groupsList app variable groupsGETLists the environment variable groups of an app (id, name). Paginated with page and page_size.list_team_variable_groupsList team variable groupsGETLists the team-level environment variable groups (id, name). Paginated with page and page_size.update_variable_groupUpdate variable groupPATCHRenames a variable group or changes its advanced_security setting (team groups only). Leave a field out to keep it.
Build, 5 operations
get_buildGet buildGETReturns a build: status, workflow, branch or tag, commit, instance type, artifacts with short-lived download URLs, labels, release notes, created, started and finished times.get_build_analyticsGet build analyticsGETReturns build analytics of a team over a period. period_from and period_to (ISO date-times) are required.list_shared_dashboard_buildsList shared dashboard buildsGETLists the builds shown on a shared build dashboard. Cursor-paginated: pass the returned cursor to get the next page.list_team_buildsList team buildsGETLists a team's builds, filtered by app, status, workflow, branch, tag or label, newest first. Cursor-paginated: pass the returned cursor to get the next page.start_buildStart buildPOSTQueues a build of workflow_id from exactly one of branch or tag and returns data.id; pass it to get_build to follow it (it may answer not found for a short while). Uses the team's build minutes.
Tester group, 5 operations
create_tester_groupCreate tester groupPOSTCreates a tester group for an app and returns it with its id.delete_tester_groupDelete tester groupDELETEDeletes a tester group.get_tester_groupGet tester groupGETReturns a tester group (id, name).list_tester_groupsList tester groupsGETLists the tester groups of an app (id, name). Paginated with page and page_size.update_tester_groupUpdate tester groupPATCHRenames a tester group.
Variable, 5 operations
delete_variableDelete variableDELETEDeletes a variable from a group.get_variableGet variableGETReturns a variable's id, name and secure flag (the value is not returned by this tool).import_variablesImport variablesPOSTAdds variables (name and value) to a group in one call, all secure or all not secure.list_variablesList variablesGETLists the variables of a group: id, name and secure flag (values are not returned by this tool). Filter with search. Paginated with page and page_size.update_variableUpdate variablePATCHChanges a variable's name, value or secure flag. Leave a field out to keep it.
Preview, 4 operations
get_app_previewGet app previewGETReturns an app preview: platform, app, build, artifact, created and expiry times.list_app_previewsList app previewsGETLists the app previews of a team. Paginated with page and page_size.start_app_previewStart app previewPOSTStarts an app preview (a streamed simulator session) of a build artifact given by artifact_path. Returns the preview with its id and expiry.stop_app_previewStop app previewDELETEStops an app preview.
Contact, 3 operations
add_tester_contactsAdd tester contactsPOSTAdds tester email addresses to a tester group. Addresses that are invalid, excluded, bounced or over the account limit are skipped. Not meant for real-time syncing.delete_tester_contactDelete tester contactDELETERemoves a contact from a tester group.list_tester_contactsList tester contactsGETLists the contacts (tester email addresses) of a tester group. Contains email addresses. Paginated with page and page_size.
External recipient, 3 operations
add_external_recipientsAdd external recipientsPOSTRegisters email addresses for build notifications. Each new address is emailed a confirmation request and gets nothing until it confirms; team members, invalid and already registered addresses are skipped.delete_external_recipientDelete external recipientDELETERemoves an external notification recipient from the team.list_external_recipientsList external recipientsGETLists the external email addresses registered to receive the team's build notifications, with their confirmation status. Contains email addresses.
App, 2 operations
list_team_appsList team appsGETLists the apps of a team, filtered by app ids or name. Paginated with page and page_size.list_user_appsList user appsGETLists the apps of the authenticated user, filtered by name; use list_team_apps for a team's apps. Paginated with page and page_size.
Team, 2 operations
get_teamGet teamGETReturns a team: name, icon and creation date.list_teamsList teamsGETLists the teams of the authenticated user; their ids are the team_id of team tools. Paginated with page and page_size.
Usage, 2 operations
get_ota_deployment_usageGet ota deployment usageGETReturns one usage metric (download_count, deployment_succeeded_count or deployment_failed_count) of an over-the-air deployment channel over a period. period_from and period_to (ISO date-times) are required.get_ota_usageGet ota usageGETReturns a team's over-the-air update usage over a period. period_from and period_to (ISO date-times) are required.
Action, 1 operation
list_build_actionsList build actionsGETLists the steps (actions) of a build with their status and timing. Paginated with page and page_size.
Build duration percentile, 1 operation
get_build_duration_percentilesGet build duration percentilesGETReturns build duration percentiles of a team, optionally for one app or workflow. period_from and period_to (ISO date-times) are required.
Builds by status, 1 operation
get_builds_by_statusGet builds by statusGETReturns a team's build counts per status, optionally for one app or workflow. period_from and period_to (ISO date-times) are required.
Builds by status over time, 1 operation
get_builds_by_status_over_timeGet builds by status over timeGETReturns a team's build counts per status over time, optionally for one app or workflow. period_from and period_to (ISO date-times) are required.
Member, 1 operation
list_team_membersList team membersGETLists the members of a team with their role, filtered by user ids or role. Contains personal data. Paginated with page and page_size.
Meta, 1 operation
get_metaGet metaGETReturns the public IP blocks Codemagic build machines (address_prefixes) and simulators (simulator_address_prefixes) use, to allow-list in firewalls. Answers without a token.
Notification, 1 operation
list_notificationsList notificationsGETLists the notifications of the authenticated user. Paginated with page and page_size.
Ota, 1 operation
get_ota_accountGet ota accountGETReturns the over-the-air updates account of the authenticated user: status and team_id.
Permission, 1 operation
get_team_permissionsGet team permissionsGETReturns the authenticated user's permissions in a team.
Preference, 1 operation
get_user_preferencesGet user preferencesGETReturns the preferences of the authenticated user.
Project, 1 operation
list_ota_projectsList ota projectsGETLists a team's over-the-air update projects. Paginated with page and page_size.
Queued time percentile, 1 operation
get_queued_time_percentilesGet queued time percentilesGETReturns queue time percentiles of a team's builds, optionally for one app or workflow. period_from and period_to (ISO date-times) are required.
Release, 1 operation
list_ota_deployment_releasesList ota deployment releasesGETLists the release history of an over-the-air update deployment channel. Paginated with page and page_size.
Share, 1 operation
share_app_previewShare app previewPOSTCreates a public id for an app preview (shared_preview_id) that anyone can open without a token through get_shared_app_preview.
Shared dashboard, 1 operation
get_shared_dashboardGet shared dashboardGETReturns a shared build dashboard by its public uuid.
Shared preview, 1 operation
get_shared_app_previewGet shared app previewGETReturns a publicly shared app preview by its shared_preview_id (from share_app_preview); works without a token.
Shorebird, 1 operation
get_shorebird_infoGet shorebird infoGETReturns information about the Codemagic Shorebird (code push) integration.
Summary, 1 operation
get_build_usage_summaryGet build usage summaryGETReturns a team's build usage summary over a period: build_count, build_duration and apps_built_count. period_from and period_to (ISO date-times) are required.
User, 1 operation
get_current_userGet current userGETReturns the user the API token belongs to: id, avatar and permissions.
Workflow, 1 operation
list_app_workflowsList app workflowsGETLists the distinct workflows of an app (id, name, source); pass an id as workflow_id to start_build.
Use Codemagic from Claude Code, Cursor or Codex
Connect Codemagic in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Codemagic operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Codemagic
- Create your workspace
Sign up free. Nothing to install.
- Connect Codemagic once
Add your Codemagic connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Codemagic integration FAQ
What can you do with the Codemagic integration?
LiveContext exposes 58 operations on Codemagic, covering variable group, build, tester group and variable.
