Connectors · Developer & infrastructure
Bitrise MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Bitrise and the rest of your systems. It gives your agent 119 Bitrise actions (59 reads, 43 writes and 17 that wait for a confirmation) and holds the Bitrise credential itself, so the agent never does. It paces Bitrise's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "bitrise.apps.list", intent: "check which Bitrise account is connected"}# Get list of the apps · read · 1 upstream call- 119actionsin one signed file
- 59readlook, never change
- 43writecreate and update
- 17wait for a yesdestructive, confirmed first
Set up
Connect Bitrise in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect Bitrise.
API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
api_tokenBitrise Personal Access Token (Profile > Security > Personal access tokens) or Workspace API token
account { op: "connections.requirements", service: "bitrise" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "bitrise.apps.list" }# get list of the apps · read · 1 upstream callcheck { action: "bitrise.apps.register", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Bitrise at a glance
- Sign-in
- API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
api_token- Limits we pace to
- 5,000 calls an hour, per connection
- API covered
- Bitrise API v0.1 (Swagger 2.0 document at api-docs.bitrise.io/docs/swagger.json)
api.bitrise.io - Built from
- Bitrise's documentation, read 23 October 2026api-docs.bitrise.ioapi-docs.bitrise.io
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 50 of 59 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 6, so ask can line Bitrise up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Bitrise.
119 actions in 13 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 59readlook, never change
- 43writecreate and update
- 17destructivewait for a confirmation
Apps
8133 read · 34 write · 14 destructive
Get list of the apps · Get a list of all build artifacts · Add a new app (registration step 1) · Get a specific app
Organizations
2111 read · 7 write · 3 destructive
List organizations groups · Get list of the apps for an organization · Adds a group to the organization · List the organizations that the user is part of
Users
44 read · 0 write · 0 destructive
Get list of the apps for a user · Get list of the addons for user · List Apple API credentials for a specific user · Get a specific user
Addons
22 read · 0 write · 0 destructive
Get list of available Bitrise addons · Get a specific Bitrise addon
Builds
22 read · 0 write · 0 destructive
List all builds · Get AI-generated summary of a failed build
Me
22 read · 0 write · 0 destructive
Get your profile info · Get list of Bitrise activity events
Available stacks
11 read · 0 write · 0 destructive
List available stacks
Groups
10 read · 1 write · 0 destructive
Add a member to a group
5 more areas · 5 actions
- Pipelines 1
- Search steps 1
- Step inputs 1
- User 1
- Validate bitrise yml 1
Top actions
The Bitrise API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 33 of Bitrise's 33 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
bitrise.apps.listGet list of the apps | Get list of the apps. | read | devops.repository.list28 connectors |
bitrise.organizations.groups.listList organizations groups | List organizations groups. | read | identity.group.list262 connectors |
bitrise.me.getGet your profile info | Get your profile info. | read | identity.current_user.get307 connectors |
bitrise.apps.builds.artifacts.listGet a list of all build artifacts | Get a list of all build artifacts. | read | devops.artifact.list17 connectors |
bitrise.apps.registerAdd a new app (registration step 1) | Add a new app (registration step 1). | write | devops.repository.create18 connectors |
bitrise.apps.updateUpdates an app | Updates an app. | write | devops.repository.update19 connectors |
bitrise.organizations.groups.createAdds a group to the organization | Adds a group to the organization. | write | identity.group.create205 connectors |
bitrise.apps.deleteDeletes an app | Deletes an app. | destructive | devops.repository.delete20 connectors |
bitrise.builds.listList all builds | List all builds. | read | devops.pipeline_run.list13 connectors |
bitrise.pipelines.listList all pipelines/standalone builds | List all pipelines/standalone builds. | read | devops.pipeline_run.list13 connectors |
bitrise.apps.builds.artifacts.getGet a specific build artifact | Get a specific build artifact. | read | devops.artifact.get13 connectors |
bitrise.apps.branches.listList the branches with existing builds of an app's repository | List the branches with existing builds of an app's repository. | read | devops.branch.list12 connectors |
Try it
Prompts to paste into Claude.
Each one names the Bitrise actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List our Bitrise repositories with their visibility and default branch.
calls
bitrise.apps.list - Writewrite
Add a new app (registration step 1) in Bitrise. Show me exactly what you will send before you save it.
calls
bitrise.apps.register
Governance for Bitrise
Destructive actions wait for a yes.
17 Bitrise actions are destructive. These are all of them:
- Deletes an app
bitrise.apps.delete - Delete a build artifact
bitrise.apps.builds.artifacts.delete - Delete an application secret
bitrise.apps.secrets.delete - Delete a secret by name
bitrise.organizations.secrets.delete - Abort a specific build
bitrise.apps.builds.abort - Aborts a pipeline
bitrise.apps.pipelines.abort - Delete an outgoing webhook of an app
bitrise.apps.outgoing_webhooks.delete - Deletes a key-value cache item
bitrise.apps.cache_items.delete - Deletes all key-value cache items belonging to an app
bitrise.apps.cache_items.delete_all - Delete a build certificate
bitrise.apps.build_certificates.delete - Delete a generic project file
bitrise.apps.generic_project_files.delete - Delete a provisioning profile
bitrise.apps.provisioning_profiles.delete - Delete an android keystore file
bitrise.apps.android_keystore_files.delete - Remove service credential user of an app
bitrise.apps.service_credential_user.delete - Remove repository authorization of an app
bitrise.apps.repository_authorization.delete - Delete Apple API Credential
bitrise.organizations.apple_api_credentials.delete - Delete Google Service Credential
bitrise.organizations.google_service_credentials.delete
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Deletes an app?
intent: the user asked me to deletes an app
account { op: "keys.create", name: "bitrise-agent", allowed_actions: ["bitrise.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "bitrise.apps.delete", approver: "[email protected]" }, { match: "bitrise.apps.builds.artifacts.delete", approver: "[email protected]" }, { match: "bitrise.apps.secrets.delete", approver: "[email protected]" } ]}Cost
What Bitrise costs on actionlake.
Every Bitrise action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Bitrise refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 119 Bitrise actions
- 119actions pageeach page of a long list is one call
- 50reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Bitrise action.
119 actions by area: the id your agent calls, what it does, and its effect.
Apps81
bitrise.apps.addons.listGet list of the addons for appsreadbitrise.apps.android_keystore_files.confirm_uploadConfirm an android keystore file uploadwritebitrise.apps.android_keystore_files.createCreate an Android keystore filewritebitrise.apps.android_keystore_files.deleteDelete an android keystore filedestructivebitrise.apps.android_keystore_files.getGet a specific Android Keystore filereadbitrise.apps.android_keystore_files.listGet a list of the android keystore filesreadbitrise.apps.archived_builds.listList 1000 archived builds of an appreadbitrise.apps.bitrise_yml.config.getGetting the location of the application's bitrise.yamlreadbitrise.apps.bitrise_yml.config.updateChanging the location of the application's bitrise.yamlwritebitrise.apps.bitrise_yml.createUpload a new bitrise.yml for your applicationwritebitrise.apps.branches.listList the branches with existing builds of an app's repositoryreadbitrise.apps.build_certificates.confirm_uploadConfirm a build certificate uploadwritebitrise.apps.build_certificates.createCreate a build certificatewritebitrise.apps.build_certificates.deleteDelete a build certificatedestructivebitrise.apps.build_certificates.getGet a specific build certificatereadbitrise.apps.build_certificates.listGet a list of the build certificatesreadbitrise.apps.build_certificates.updateUpdate a build certificatewritebitrise.apps.build_requests.listList the open build requests for an appreadbitrise.apps.build_requests.updateUpdate a build requestwritebitrise.apps.build_workflows.listList the workflows of an appreadbitrise.apps.builds.abortAbort a specific builddestructivebitrise.apps.builds.artifacts.deleteDelete a build artifactdestructivebitrise.apps.builds.artifacts.getGet a specific build artifactreadbitrise.apps.builds.artifacts.listGet a list of all build artifactsreadbitrise.apps.builds.artifacts.updateUpdate a build artifactwritebitrise.apps.builds.createTrigger a new build/pipelinewritebitrise.apps.builds.getGet a build of a given appreadbitrise.apps.builds.listList all builds of an appreadbitrise.apps.builds.log.getGet the build log of a buildreadbitrise.apps.builds.rebuildRebuild a buildwritebitrise.apps.cache_items.deleteDeletes a key-value cache itemdestructivebitrise.apps.cache_items.delete_allDeletes all key-value cache items belonging to an appdestructivebitrise.apps.cache_items.download_url.getGets the download URL of a key-value cache itemreadbitrise.apps.cache_items.listList the key-value cache items belonging to an appreadbitrise.apps.change_connection_typeChange the connection type of an appwritebitrise.apps.deleteDeletes an appdestructivebitrise.apps.finishSave the application at the end of the app registration processwritebitrise.apps.generic_project_files.confirm_uploadConfirm a generic project file uploadwritebitrise.apps.generic_project_files.createCreate a generic project filewritebitrise.apps.generic_project_files.deleteDelete a generic project filedestructivebitrise.apps.generic_project_files.getGet a specific generic project filereadbitrise.apps.generic_project_files.listGet a list of the generic project filesreadbitrise.apps.generic_project_files.updateUpdate a generic project filewritebitrise.apps.getGet a specific appreadbitrise.apps.github_app_connection_configuration.updateChange Github app connection configuration of an appwritebitrise.apps.github_app_connection_configuration.update_linked_repositoriesChange the linked repositories of a Github app connectionwritebitrise.apps.listGet list of the appsreadbitrise.apps.outgoing_webhooks.createCreate an outgoing webhook for an appwritebitrise.apps.outgoing_webhooks.deleteDelete an outgoing webhook of an appdestructivebitrise.apps.outgoing_webhooks.delivery_items.getGet a specific delivery item of a webhookreadbitrise.apps.outgoing_webhooks.delivery_items.listList the webhook delivery items of an appreadbitrise.apps.outgoing_webhooks.delivery_items.redeliverRe-deliver the webhook delivery items of an appwritebitrise.apps.outgoing_webhooks.listList the outgoing webhooks of an appreadbitrise.apps.outgoing_webhooks.updateUpdate an outgoing webhook of an appwritebitrise.apps.pipelines.abortAborts a pipelinedestructivebitrise.apps.pipelines.getGet a pipeline of a given appreadbitrise.apps.pipelines.listList all pipelines and standalone builds of an appreadbitrise.apps.pipelines.rebuildRebuilds a pipelinewritebitrise.apps.provisioning_profiles.confirm_uploadConfirm a provisioning profile uploadwritebitrise.apps.provisioning_profiles.createCreate a provisioning profilewritebitrise.apps.provisioning_profiles.deleteDelete a provisioning profiledestructivebitrise.apps.provisioning_profiles.getGet a specific provisioning profilereadbitrise.apps.provisioning_profiles.listGet a list of the provisioning profilesreadbitrise.apps.provisioning_profiles.updateUpdate a provisioning profilewritebitrise.apps.registerAdd a new app (registration step 1)writebitrise.apps.register_ssh_keyAdd an SSH-key to a specific appwritebitrise.apps.register_webhookRegister an incoming webhook for a specific applicationwritebitrise.apps.repository_authorization.deleteRemove repository authorization of an appdestructivebitrise.apps.roles.getList the groups holding a role on an appreadbitrise.apps.roles.updateReplaces group roles for an appwritebitrise.apps.secrets.createCreate a new app secretwritebitrise.apps.secrets.deleteDelete an application secretdestructivebitrise.apps.secrets.getGet a single app secret by namereadbitrise.apps.secrets.listList the application secrets (with no values)readbitrise.apps.secrets.updateUpdate an existing app secretwritebitrise.apps.secrets.upsertUpsert an application secretwritebitrise.apps.secrets.value.getGet the value of an unprotected app secretreadbitrise.apps.service_credential_user.deleteRemove service credential user of an appdestructivebitrise.apps.test_devices.listList the test devices for an appreadbitrise.apps.updateUpdates an appwritebitrise.apps.update_email_notificationsUpdates the app's notification settingswrite
Organizations21
bitrise.organizations.addons.listGet list of the addons for organizationreadbitrise.organizations.apple_api_credentials.createCreate Apple API Credentialwritebitrise.organizations.apple_api_credentials.deleteDelete Apple API Credentialdestructivebitrise.organizations.apple_api_credentials.listList Apple API credentials for a specific organizationreadbitrise.organizations.apps.listGet list of the apps for an organizationreadbitrise.organizations.apps.machine_types.updateMigrate machine types of all apps in an organizationwritebitrise.organizations.available_stacks.getList available stacks for an organizationreadbitrise.organizations.getGet a specified organizationreadbitrise.organizations.google_service_credentials.createCreate Google Service Credentialwritebitrise.organizations.google_service_credentials.deleteDelete Google Service Credentialdestructivebitrise.organizations.google_service_credentials.listList Google Service credentials for a specific organizationreadbitrise.organizations.groups.createAdds a group to the organizationwritebitrise.organizations.groups.listList organizations groupsreadbitrise.organizations.listList the organizations that the user is part ofreadbitrise.organizations.members.createAdds a member to the organizationwritebitrise.organizations.members.listList the members of the organizationreadbitrise.organizations.secrets.createCreate a new organization secretwritebitrise.organizations.secrets.deleteDelete a secret by namedestructivebitrise.organizations.secrets.getGet a single secret by namereadbitrise.organizations.secrets.listGet the secrets of an organizationreadbitrise.organizations.secrets.updateUpdate an existing secretwrite
Users4
bitrise.users.addons.listGet list of the addons for userreadbitrise.users.apple_api_credentials.listList Apple API credentials for a specific userreadbitrise.users.apps.listGet list of the apps for a userreadbitrise.users.getGet a specific userread
Addons2
bitrise.addons.getGet a specific Bitrise addonreadbitrise.addons.listGet list of available Bitrise addonsread
Builds2
bitrise.builds.ai_summary.getGet AI-generated summary of a failed buildreadbitrise.builds.listList all buildsread
Me2
bitrise.me.activities.listGet list of Bitrise activity eventsreadbitrise.me.getGet your profile inforead
Available stacks1
bitrise.available_stacks.getList available stacksread
Groups1
bitrise.groups.add_memberAdd a member to a groupwrite
Pipelines1
bitrise.pipelines.listList all pipelines/standalone buildsread
Search steps1
bitrise.search_steps.listFind stepsread
Step inputs1
bitrise.step_inputs.listList step inputsread
User1
bitrise.users.apps.machine_types.updateMigrate machine types of all apps of a userwrite
Validate bitrise yml1
bitrise.bitrise_yml.validateValidate a Bitrise YAML fileread
Questions
The Bitrise MCP server, answered.
Is there a Bitrise MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 119 Bitrise actions across apps, organizations, users and addons, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Bitrise.
What do I need to connect Bitrise?
Bitrise Personal Access Token (Profile > Security > Personal access tokens) or Workspace API token. The free call account { op: "connections.requirements", service: "bitrise" } lists exactly what to paste.
Can an AI agent delete or change things in Bitrise?
Only if its key allows it, and only with an explicit confirmation. 17 Bitrise actions are destructive, including deletes an app, delete a build artifact and delete an application secret. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my Bitrise API limit?
actionlake paces every call to the limits in the Bitrise service file: 5,000 calls an hour per connection. Repeated reads are answered from cache (50 Bitrise actions can be), which never reaches Bitrise.
What does a Bitrise action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (119 Bitrise actions page). Cache hits, searches, dry runs and calls Bitrise refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which Bitrise API does it cover?
The Bitrise API v0.1 (Swagger 2.0 document at api-docs.bitrise.io/docs/swagger.json) at api.bitrise.io. It is built from Bitrise's documentation as read on 23 October 2026. 119 actions in 13 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Bitrise data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Bitrise credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent Bitrise today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.