xenoci-mcp
OfficialEnables triggering XenoCI remote macOS builds from Bitrise CI using the XenoCast CLI and an API key secret.
Enables triggering XenoCI remote macOS builds from Buildkite CI using the XenoCast CLI and an API key secret.
Enables triggering XenoCI remote macOS builds from CircleCI using the XenoCast CLI and an API key secret.
Provides a GitHub Action to send builds from GitHub Actions jobs to XenoCI macOS VMs, with inputs for script, source, Xcode version, timeout, artifacts, and environment variables, returning build logs and billing status.
Enables triggering XenoCI remote macOS builds from GitLab CI using the XenoCast CLI and an API key secret.
Enables triggering XenoCI remote macOS builds from Jenkins using the XenoCast CLI and an API key secret.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@xenoci-mcpupload this folder, run ./ci.sh on macOS, stream logs, return exit code"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
XenoCI 빌드 Action (이전 방식)
XenoCI는 GitHub Actions 워크플로의 runs-on을 xenoci-macos로 바꿔 씁니다, XenoCI GitHub App을 GitHub 조직에 설치하면 따로 발급할 키나 시크릿이 없습니다, 연결 순서는 빠른 시작에 있습니다
jobs:
build:
runs-on: xenoci-macos
steps:
- uses: actions/checkout@v4
- run: xcodebuild -scheme App -destination 'platform=iOS Simulator,name=iPhone 17e' test이 Action(Xeno-CI/build@v1)은 GitHub 러너(ubuntu-latest 등)에서 이미 쓰던 API 키로 잡을 XenoCI VM에 보내던 이전 방식입니다, 새로 연결할 때는 위 runs-on 방식을 씁니다, 이미 이 Action을 쓰는 워크플로를 위해 입력과 동작을 아래에 남깁니다
워크플로 (이전 방식)
jobs:
ios:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: Xeno-CI/build@v1
with:
api-key: ${{ secrets.XENOCI_API_KEY }}
script: ./ci.sh
artifacts: build/*.ipaAction은 키를 ::add-mask::로 가린 뒤 /api/runner/v1에 Authorization: Bearer <키>로 잡을 보냅니다, 잡마다 새 macOS VM에서 돌고 끝나면 지워지며 시작한 분마다 조직 크레딧에서 차감합니다, 10초는 1분, 1분 1초는 2분으로 계산합니다
Related MCP server: script-runner
입력
입력 | 필수 | 설명 |
| 예 | 이미 쓰던 API 키, |
| 예 | 빌드 스크립트 파일 경로(저장소 기준) |
|
| |
| Xcode 버전 | |
| 제한 시간(분), 기본 30 | |
| 모을 결과물 경로(쉼표로 구분, 예: | |
| API 주소, 기본 https://xenoci.com | |
| 빌드 스크립트에 넘길 환경 변수, 한 줄에 |
빌드 로그가 스텝 로그로 나오고, 빌드 종료 코드가 스텝 종료 코드가 됩니다
잡이 끝나면 로그 끝에 실행 시간, 과금 분, 차감 크레딧, 남은 잔액이 한 줄로 남습니다
잔액 부족(402
insufficient_credit), 실행 중 소진(credit_exhausted), 조직 지출 한도(organization_spend_limit)는::error title=XenoCI 잔액 소진::…충전: <링크>같은 한 줄을 남기고 종료 코드 3으로 끝납니다, 충전은 사람이 콘솔에서 합니다api-key가 비었거나xci_live_로 시작하지 않으면 서버에 요청하지 않고 바로 실패합니다
포크 PR
pull_request는 포크에서 온 PR에 시크릿을 주지 않습니다. 그래서 포크 PR은 빌드가 실패할 뿐 키는 새지 않습니다. pull_request_target에서 PR 코드를 체크아웃하고 api-key를 넘기지 마세요. 포크 PR의 코드가 키와 함께 실행됩니다
# 금지: 이렇게 쓰지 않는다
on: pull_request_target
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.head.sha }}
- uses: Xeno-CI/build@v1
with:
api-key: ${{ secrets.XENOCI_API_KEY }}
script: ./ci.shThis server cannot be deployed
Maintenance
Related MCP Connectors
Hosted one-shot code execution: send a snippet plus optional files, get stdout, stderr, exit...
MCP server for Appcircle mobile CI/CD platform.
Create, deploy, and operate MCP servers directly from your GitHub repositories.
Remote MCP for Android CLI agent build gate, structured receipts, audit logs, and reviewer-ready evi
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceMCP server and CLI for iOS development — build, test, automate, and diagnose from any AI agent or terminal.2MIT
- FlicenseNot gradedqualityBmaintenanceRemote MCP server that launches user-supplied scripts inside disposable Docker containers, returning task IDs for async tracking and bounded output tails.-
- AlicenseAqualityCmaintenanceEnables coding agents to build, test, archive, and run iOS apps on a remote Mac fleet from any environment, with XcodeBuildMCP-compatible tools and live simulator access.1117 npmMIT
- -licenseNot gradedqualityNot gradedmaintenanceEnables MCP clients to securely execute bounded coding tasks through registered backends, with idempotent job submission, status polling, and artifact retrieval. It isolates each job in Git worktrees and supports optional branch publishing and pull request creation under strict policy constraints.-