Capacitor Mcp

Cap-go/capgo-skills/skills/capacitor-mcp

作者 Cap-go2cfb277a148832bdb1a835b01e4de323687b498b无许可证72 个星标收录于 2026年10月9日更新于 2026年10月9日仓库今天更新

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 生成的概览

指导为 Ionic 与 Capacitor 移动开发配置和使用 awesome-ionic-mcp 模型上下文协议服务器。

功能
该技能说明如何在 Claude Desktop、Cline、Cursor 等客户端中安装和配置 awesome-ionic-mcp MCP 服务器,并介绍其提供的工具。这些工具涵盖 Ionic 组件定义与示例、来自多个发布方的 Capacitor 插件文档,以及用于构建、同步、运行和生成代码的 Ionic 与 Capacitor CLI 命令。它还列出示例提问和常见工作流,用于 AI 辅助的 Ionic/Capacitor 开发。
适用场景
当用户希望把 AI 助手接入 Ionic 或 Capacitor 工具链、在对话中查询组件或插件 API,或以编程方式执行 Ionic 与 Capacitor CLI 命令时使用。适用于基于 Ionic 和 Capacitor 构建的移动应用项目。
运行要求
需要 Node.js 以通过 npx 运行服务器、支持 MCP 的客户端,以及用于获取文档和插件数据的网络访问。可选的 GitHub 令牌可提高 API 速率限制。执行 CLI 命令需要 Ionic/Capacitor 项目。服务器使用 Puppeteer,初始化时可能启动浏览器。该技能不附带脚本,仅为说明文档。

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
  • Capawesome plugins (free and insider)
  • 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 Capawesome plugin documentationget_plugin_api({ plugin: "capacitor-firebase" })
// List Capawesome 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 Capawesome 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)
  • capawesome.io (Capawesome plugins)
  • 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

来源与署名

来源:Cap-go/capgo-skills位于skills/capacitor-mcp提交2cfb277

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架