Capacitor Mcp

by cap-go2cfb277a1488No license72 starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated today

Model Context Protocol (MCP) tools for Capacitor mobile development. Covers Ionic/Capacitor component APIs, plugin documentation, CLI commands, and AI-assisted development via MCP. Use this skill when users want to integrate AI agents with Ionic/Capacitor tooling.

AI-generated overview

Guides setup and use of the awesome-ionic-mcp server for Ionic and Capacitor mobile development.

What it does
This skill explains how to configure the awesome-ionic-mcp Model Context Protocol server in Claude Desktop, Cline, and Cursor, and documents the MCP tools it exposes. It covers Ionic component lookup, Capacitor plugin documentation, and Ionic/Capacitor CLI commands such as build, sync, add platform, and generate. It also lists common workflows, example queries, data sources, and requirements.
When to use it
Use it when someone wants to connect an AI assistant to Ionic or Capacitor tooling, look up Ionic components or Capacitor plugins from chat, or run Ionic and Capacitor CLI commands through MCP. It is aimed at AI-assisted mobile development setup and usage.
Requirements
Node.js for the npx command that runs awesome-ionic-mcp; an Ionic/Capacitor project for CLI commands; optional GITHUB_TOKEN to raise GitHub API rate limits; network access for documentation and plugin data. The server uses Puppeteer to fetch some documentation. Ships no scripts; instructions only.

Capacitor MCP Tools

Guide to using Model Context Protocol (MCP) for Ionic and Capacitor mobile development automation.

When to Use This Skill

  • User wants to automate Ionic/Capacitor development
  • User asks about MCP integration
  • User wants AI-assisted component/plugin discovery
  • User needs programmatic CLI command execution
  • User wants access to Ionic components and Capacitor plugins within AI chat

What is MCP?

MCP (Model Context Protocol) is an open standard for connecting AI models to external tools and data sources. For Capacitor development, MCP enables:

  • Access to Ionic component definitions and APIs
  • Capacitor plugin documentation lookup
  • Automated CLI command execution (build, sync, run, etc.)
  • Project configuration management
  • Real-time component demos and examples

Setting Up MCP for Capacitor

1. Install Awesome Ionic MCP Server

The awesome-ionic-mcp server is a comprehensive tool that provides access to:

  • Ionic Framework component APIs
  • Official Capacitor plugins
  • third-party plugin catalogs
  • Capacitor Community plugins
  • CapGo plugins
  • 28 Ionic/Capacitor CLI commands
Claude Desktop

Add to claude_desktop_config.json (accessible via Claude > Settings > Developer):

json
{  "mcpServers": {    "awesome-ionic-mcp": {      "command": "npx",      "args": ["-y", "awesome-ionic-mcp@latest"]    }  }}
Cline

Add to cline_mcp_settings.json:

json
{  "mcpServers": {    "awesome-ionic-mcp": {      "command": "npx",      "args": ["-y", "awesome-ionic-mcp@latest"],      "disabled": false    }  }}
Cursor

Add to .cursor/mcp.json (project-specific) or ~/.cursor/mcp.json (global):

json
{  "mcpServers": {    "awesome-ionic-mcp": {      "command": "npx",      "args": ["-y", "awesome-ionic-mcp@latest"]    }  }}

2. Optional: GitHub Token for Rate Limiting

The server makes ~160+ GitHub API calls during initialization to fetch plugin data. Without authentication, GitHub limits you to 60 requests/hour. With a token, this increases to 5,000 requests/hour.

Add GITHUB_TOKEN to your MCP configuration:

json
{  "mcpServers": {    "awesome-ionic-mcp": {      "command": "npx",      "args": ["-y", "awesome-ionic-mcp@latest"],      "env": {        "GITHUB_TOKEN": "ghp_your_token_here"      }    }  }}

Get a token from GitHub Settings → Developer settings → Personal access tokens. No special permissions needed for public repos.

Available MCP Tools

Ionic Component Tools

typescript
// Get Ionic component definitionget_ionic_component_definition({ tag: "ion-button" })// Returns TypeScript definition from @ionic/core
// List all Ionic componentsget_all_ionic_components()// Returns: ["ion-button", "ion-card", "ion-input", ...]
// Get component API documentationget_component_api({ tag: "ion-button" })// Returns API docs from ionicframework.com
// Get component demo codeget_component_demo({ tag: "ion-modal" })// Returns demo code from docs-demo.ionic.io

Capacitor Plugin Tools

typescript
// Get official Capacitor plugin APIget_official_plugin_api({ plugin: "Camera" })// Returns documentation from capacitorjs.com
// List all official pluginsget_all_official_plugins()// Returns: ["Camera", "Filesystem", "Geolocation", ...]
// Search all available Capacitor pluginsget_all_capacitor_plugins()// Returns superlist from all plugin publishers
// Get third-party plugin documentationget_plugin_api({ plugin: "capacitor-firebase" })
// List third-party pluginsget_all_free_plugins() // Free pluginsget_all_insider_plugins() // Insider/paid plugins
// Get CapGo plugin documentationget_capgo_plugin_api({ plugin: "native-biometric" })get_all_capgo_plugins()
// Get Capacitor Community plugin docsget_capacitor_community_plugin_api({ plugin: "http" })get_all_capacitor_community_plugins()

Ionic CLI Commands

All commands accept a project_directory parameter (defaults to current directory).

Project Information
typescript
// Get comprehensive project infoionic_info({ format: "json" })
// Get configuration valueionic_config_get({ key: "name" })
// Set configuration valueionic_config_set({ key: "name", value: "MyApp" })
// Unset configuration valueionic_config_unset({ key: "telemetry" })
Project Setup
typescript
// Create new Ionic projectionic_start({  name: "MyApp",  template: "tabs", // blank, list, sidemenu, tabs  type: "react", // angular, react, vue  capacitor: true})
// List available templatesionic_start_list()
// Initialize existing projectionic_init({ name: "MyApp", type: "react" })
// Repair project dependenciesionic_repair()
Build & Serve
typescript
// Build web assetsionic_build({  project_directory: "./my-app",  prod: true,  engine: "browser" // or "cordova"})
// Start development server (manual launch recommended)// Note: Server runs in foreground, manual launch preferredionic_serve({  project_directory: "./my-app",  port: 8100,  lab: false})
Code Generation
typescript
// Generate pageionic_generate({  type: "page",  name: "home",  project_directory: "./my-app"})
// Generate componentionic_generate({  type: "component",  name: "user-card"})
// Generate serviceionic_generate({  type: "service",  name: "auth"})
// Other types: directive, guard, pipe, class, interface, module
Integrations
typescript
// List available integrationsintegrations_list()
// Enable integration (e.g., Capacitor)integrations_enable({ integration: "capacitor" })
// Disable integrationintegrations_disable({ integration: "cordova" })

Capacitor CLI Commands

Project Management
typescript
// Check Capacitor setupcapacitor_doctor({ platform: "ios" })
// List installed pluginscapacitor_list_plugins()
// Initialize Capacitorcapacitor_init({  name: "MyApp",  id: "com.example.app",  web_dir: "dist"})
// Add platformcapacitor_add({ platform: "ios" })capacitor_add({ platform: "android" })
// Migrate to latest versioncapacitor_migrate()
Build & Sync
typescript
// Sync web assets and dependenciescapacitor_sync({ platform: "ios" })
// Copy web assets onlycapacitor_copy({ platform: "android" })
// Update native dependenciescapacitor_update({ platform: "ios" })
// Build native releasecapacitor_build({  platform: "ios",  scheme: "App",  configuration: "Release"})
Run & Deploy
typescript
// Run on device/emulatorcapacitor_run({  platform: "ios",  target: "iPhone 15 Pro"})
// Open native IDEcapacitor_open({ platform: "ios" }) // Opens Xcodecapacitor_open({ platform: "android" }) // Opens Android Studio

Common Workflows

Create New Project

typescript
// 1. Create Ionic projectionic_start({  name: "MyApp",  template: "tabs",  type: "react",  capacitor: true})
// 2. Add iOS platformcapacitor_add({  project_directory: "./MyApp",  platform: "ios"})
// 3. Build and syncionic_build({  project_directory: "./MyApp",  prod: true})capacitor_sync({  project_directory: "./MyApp",  platform: "ios"})

Check Project Health

typescript
// Get system infoionic_info({ format: "json" })
// Check Capacitor setupcapacitor_doctor({ platform: "ios" })
// List installed pluginscapacitor_list_plugins()

Generate Code

typescript
// Generate page with routingionic_generate({ type: "page", name: "profile" })
// Generate reusable componentionic_generate({ type: "component", name: "user-avatar" })
// Generate serviceionic_generate({ type: "service", name: "data" })

AI-Assisted Development Benefits

With awesome-ionic-mcp, AI assistants can:

  1. Discover Components: Ask "What Ionic components can I use for forms?" and get accurate API docs
  2. Find Plugins: Ask "Is there a Capacitor plugin for biometric authentication?" and get relevant results
  3. Execute Commands: Request "Build the iOS app" and the CLI command runs automatically
  4. Generate Code: Get component examples with proper TypeScript definitions
  5. Troubleshoot: Look up plugin APIs and configuration without leaving the chat

Example Queries

With the MCP server installed, you can ask your AI assistant:

  • "Show me the API for ion-modal component"
  • "List all available Capacitor Camera plugin methods"
  • "Generate a new page called settings"
  • "What third-party plugins are available for Firebase?"
  • "Build my app for iOS"
  • "Sync my Capacitor project"
  • "What are all the free CapGo plugins?"

Technical Details

Data Sources

The awesome-ionic-mcp server aggregates data from:

  • @ionic/core package (TypeScript definitions)
  • ionicframework.com (component API docs)
  • docs-demo.ionic.io (component demos)
  • capacitorjs.com (official plugins)
  • third-party plugin catalogs
  • capacitor-community (community plugins)
  • capgo.app (CapGo plugins)

Requirements

  • Node.js (for npx command)
  • Optional: GitHub token for avoiding API rate limits
  • Ionic/Capacitor project (for CLI commands)

Browser Automation

The server uses Puppeteer to fetch some documentation. You may see a browser window spawn and close during initialization - this is normal.

Resources

Source and attribution

Source:cap-go/capgo-skillsinplugins/capacitor-core/skills/capacitor-mcpat commit2cfb277

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal