The Road to Capacitor 9
Hope everyone had a great summer and got some time to relax and recharge their batteries! As summer winds down, it’s time to gear up for iOS 27 and Android 17, and we’ve been hard at work on Capacitor 9 — forecasted to launch at the end of November — to make sure you’ll be ready. In fact, we’ve already shipped Capacitor 8.5 to fix an issue blocking developers testing the latest Xcode SDKs and iOS betas.
Our summer has been quite busy: we’ve got more to share about Capacitor 9, three new plugins to showcase, and we’re looking for your input to help shape the agentic future of Capacitor. But first, a heads-up about CocoaPods.
Reminder — CocoaPods goes read-only
On December 2, 2026, CocoaPods trunk goes permanently read-only — no new podspecs or version updates. The risk isn’t Capacitor itself, but the CocoaPods-hosted native dependencies your plugins pull in, like Firebase, Stripe, and other native SDKs. Once trunk freezes, those stop receiving updates too.
Capacitor has supported Swift Package Manager since Capacitor 6 and made it the default in Capacitor 8, so if you haven’t already, now’s the time to migrate your app to SPM to keep everything current.
What should a Capacitor MCP server do?
We’re exploring what a Capacitor MCP server could look like — a way for agents to pull real, accurate information about your project instead of guessing from whatever they picked up in training.
To build the right thing, we need to know where AI is getting Capacitor wrong today. We’re looking to answer the following questions:
- Where has AI been confidently wrong about your project?
- What do you still double-check by hand every time?
- What would you not want an AI touching without asking first?
Specific examples help us the most, something like “it told me Camera.takePhoto() takes a quality string instead of a number” gives us more to work with than a general feature request.
Head over to our GitHub discussion to share what you’ve seen, or vote in the poll if you’d rather just weigh in quickly.
Dial up three new plugins
Plugins for native contacts, native calendar, and health & fitness data have existed as OutSystems-exclusive plugins for a while. Over the summer we’ve opened them up as part of official Capacitor plugins.
Contacts handles searching, picking, creating, updating, and removing device contacts. Calendar covers creating, finding, modifying, and removing calendar events. And Health & Fitness connects to Apple HealthKit and Android Health Connect for reading and writing health and fitness data. All three have already been running in production inside OutSystems apps, and now the rest of the Capacitor community gets to use them too.
What’s coming in Capacitor 9
The long-awaited Cordova Optionality feature — the ability to exclude the Cordova-compatibility layer from your app builds — is in Capacitor 9 and we’re excited to finally ship it! Special thanks to those who have already tested it in our Capacitor 9 alphas and filed bugs. Those bugs led to some much-needed iOS modernization refactors: we’ve converted the remaining objective-C code in Capacitor’s iOS implementation to Swift, and will no longer be distributing Capacitor as an XCFramework. Those changes are mostly internal, but plugin authors will need to run our migration tooling to make sure Capacitor is pulled in correctly.
Mobile computing used to mean running a single instance of an app, and using apps one-at-a-time. With the advent of foldable and large-screen devices this is no longer the case, and we’re laying the foundation for multi-instance and windowed apps in Capacitor 9. We’re committed to shipping a compatibility floor to ensure your apps will work on these form factors, with support for window management APIs and per-instance bridge state as fast follows if they don’t make it in 9.0.
Our final focus for Capacitor 9 is making Capacitor itself easier for AI agents to understand — clearer docs, better-annotated APIs, and tooling aware when an agent, not a person, is behind the wheel. It’s early, but it’s the same thread running through the MCP server exploration above: building towards agents that work from real information instead of guesses.
That just about wraps up our summer here on the Capacitor team! Remember to plan to migrate off CocoaPods if you haven’t already, give the early alphas of Capacitor 9 a test run, and kindly let us know what you’d like to see in a Capacitor MCP server. You can follow our progress on Capacitor 9 on GitHub and we’ll be reaching back out towards the end of the year as Capacitor 9 approaches GA!


