io.github.OtaKit/otakit MCP Server
io.github.OtaKit/otakit
Open-source OTA update framework for Capacitor apps—ship web updates without app store reviews.
What is the io.github.OtaKit/otakit MCP server?
The OtaKit MCP server enables Claude and other AI agents to inspect, upload, release, monitor, and revert over-the-air updates for Capacitor mobile apps. It integrates with OtaKit's fully open-source update framework, allowing you to manage app releases directly from your development environment without going through app store review processes.
OtaKit is a self-hostable over-the-air update system for Capacitor apps. The MCP server lets AI agents automate the entire release workflow—reading your Capacitor project, validating changes for safety, uploading web bundles, and managing releases across channels. You can ship updates instantly to production without app store delays, with automatic rollback if the app doesn't confirm the update within a timeout.
How to install io.github.OtaKit/otakit
Copy-paste configuration for popular MCP clients.
Tools & capabilities
Tools this server exposes to the agent.
upload— Upload a web bundle to OtaKit and create a releaseinspect— Inspect and validate Capacitor project configuration and bundle safetyrelease— Promote a bundle to a channel and publish to the CDNmonitor— Monitor device events and update statusrevert— Revert to a previous bundle version
Use cases
- Ship hotfixes to your Capacitor app instantly without waiting for app store review
- Automate OTA release workflows directly from your IDE or AI agent
- Validate that web changes are safe to send over-the-air before deployment
- Monitor which devices have received and confirmed updates
- Roll back to a previous version if issues are detected in production
io.github.OtaKit/otakit MCP server FAQ
It's an MCP integration that lets Claude and other AI agents manage over-the-air updates for Capacitor apps, automating the entire workflow from validation to release and monitoring.
Yes, OtaKit is fully open-source (MIT license) and offers a free managed service at otakit.app. You can also self-host the entire platform on your own infrastructure.
Run `npx -y @otakit/cli@latest login`, then add the plugin via `claude plugin marketplace add OtaKit/otakit` and install it.
From your project directory, run `npx -y @otakit/cli@latest connect`. It will detect your client, sign you in if needed, and show the resolved app before writing any configuration.
Yes, you'll need to sign in with OtaKit (via the CLI or Claude plugin). The server validates your app configuration and permissions before allowing uploads or releases.
Yes, the entire platform is open-source and can run on your own infrastructure with Postgres, S3-compatible storage, and a CDN. See otakit.app/docs/self-host for setup details.
README (reference)
Source of truth, from the repository.
OtaKit
Fully open-source, self-hostable over-the-air update framework for Capacitor apps. Release updates directly to your Capacitor app without app store reviews.
Try it for free: OtaKit.app
Self-hosting
OtaKit is hosted-first — the managed service at otakit.app runs everything for you — but the entire platform is in this repo and can run on your own infrastructure. The minimal stack is the console (a standard Next.js app), Postgres, and an S3-compatible bucket behind a CDN.
Full step-by-step guide: otakit.app/docs/self-host
How it works
- Create an app in the dashboard.
- Copy its
appIdintocapacitor.config.*. - Build the app's web assets.
- Run
otakit upload --releaseto upload the bundle and publish a release. - The server writes the bundle and manifest to object storage behind the CDN.
- On the next app launch or resume, the plugin fetches the manifest from the CDN, compares it to the current bundle, and downloads the new version if available.
- If
notifyAppReady()is called within the timeout, the new bundle is confirmed. Otherwise the plugin rolls back to the previous bundle automatically.
MCP & Agent Skills
Ask Claude Code, Codex, or VS Code to ship an update and it reads your Capacitor project, checks whether the change is safe to send over the air, uploads the build, and stops for your approval before anything reaches a device.
One command from your project directory:
npx -y @otakit/cli@latest connect
It detects your client, signs you in if needed, and prints the console, organization, project, and
app it resolved — plus the exact file it will write — before writing anything. --dry-run shows
the plan and writes nothing.
Claude Code has a plugin that ships the server and the OtaKit Agent Skill together:
npx -y @otakit/cli@latest login
claude plugin marketplace add OtaKit/otakit
claude plugin install otakit@otakit
See the MCP and Agent Skills guide for Codex, Claude Code, remote OAuth, permissions, workflows, and self-hosting.
Core concepts
- App — the Capacitor app identified by its
appId - Bundle — one uploaded web build zip with a version, hash, and size
- Release — a promotion of a bundle to a channel, which publishes a manifest to the CDN
- Channel — an optional release track such as
staging - Runtime version — an optional native compatibility lane configured in the plugin
Packages
packages/capacitor-plugin— the runtime that lives inside the mobile apppackages/cli— CLI for uploading bundles and creating releasespackages/mcp-core— shared MCP contracts, tool catalog, and server registrationpackages/site— public site, docs, contact, legal pagespackages/console— dashboard, API, auth, billing, and Prisma schemapackages/ingest— Cloudflare Worker for device event ingestiontinybird/— Tinybird datasources and pipes for event analytics
packages/
capacitor-plugin/ Capacitor OTA plugin
cli/ Upload + release CLI
mcp-core/ Shared MCP contracts and tool catalog
ingest/ Cloudflare Worker event ingest service
site/ Next.js public site + docs
console/ Next.js dashboard + API + auth + billing
tinybird/ Tinybird event analytics project
examples/
demo-app/ Demo Capacitor app wired to the local plugin
Package docs
packages/capacitor-plugin/README.mdpackages/cli/README.mdpackages/ingest/README.mdpackages/site/README.mdpackages/console/README.mdtinybird/README.md
Local development
- Node.js 20.9+, pnpm 9+
- The console app (
packages/console) requires Postgres and R2-compatible storage. Seepackages/console/.env.example. - Device event analytics optionally require the ingest service (
packages/ingest) and a Tinybird workspace. - See each package README for setup details.
pnpm install
pnpm dev # starts the console app in dev mode
License
MIT
Related MCP servers
Behavioral MCP that enforces quality gates on AI coding via explicit LLM evaluations of plans, code, and tests.

OurPay Wallet
Crypto wallet for AI agents: balances, payments, swaps and trading with owner controls.

ovecc
Architecture guardrails for AI-written code: dependency graph, impact, dead code, CI gate
Nigerian & Commonwealth legal reasoning, RAG search, contract analysis, and citation verification.
FreeAgent accounting MCP: bank reconciliation, expenses, mileage claims and receipts.

Oya Browser
Real Chrome for agents: start a browser, read pages as numbered markdown, click, type, and automate with built-in automation.

