enable_bundle_capability
Enable specific capabilities like iCloud, Push Notifications, or In-App Purchase for an App Store Connect bundle ID to configure app functionality.
Instructions
Enable a capability for a bundle ID
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bundleIdId | Yes | The ID of the bundle ID | |
| capabilityType | Yes | The type of capability to enable | |
| settings | No | Optional capability settings |
Implementation Reference
- src/handlers/bundles.ts:93-121 (handler)The handler function that executes the tool logic: validates input, constructs EnableCapabilityRequest, and posts to App Store Connect /bundleIdCapabilities endpoint.async enableBundleCapability(args: { bundleIdId: string; capabilityType: CapabilityType; settings?: CapabilitySetting[]; }): Promise<any> { const { bundleIdId, capabilityType, settings } = args; validateRequired(args, ['bundleIdId', 'capabilityType']); const requestBody: EnableCapabilityRequest = { data: { type: "bundleIdCapabilities", attributes: { capabilityType, settings }, relationships: { bundleId: { data: { id: bundleIdId, type: "bundleIds" } } } } }; return this.client.post('/bundleIdCapabilities', requestBody); }
- src/index.ts:573-619 (schema)MCP tool schema definition including inputSchema with required bundleIdId, capabilityType enum, and optional settings array.{ name: "enable_bundle_capability", description: "Enable a capability for a bundle ID", inputSchema: { type: "object", properties: { bundleIdId: { type: "string", description: "The ID of the bundle ID" }, capabilityType: { type: "string", description: "The type of capability to enable", enum: [ "ICLOUD", "IN_APP_PURCHASE", "GAME_CENTER", "PUSH_NOTIFICATIONS", "WALLET", "INTER_APP_AUDIO", "MAPS", "ASSOCIATED_DOMAINS", "PERSONAL_VPN", "APP_GROUPS", "HEALTHKIT", "HOMEKIT", "WIRELESS_ACCESSORY_CONFIGURATION", "APPLE_PAY", "DATA_PROTECTION", "SIRIKIT", "NETWORK_EXTENSIONS", "MULTIPATH", "HOT_SPOT", "NFC_TAG_READING", "CLASSKIT", "AUTOFILL_CREDENTIAL_PROVIDER", "ACCESS_WIFI_INFORMATION", "NETWORK_CUSTOM_PROTOCOL", "COREMEDIA_HLS_LOW_LATENCY", "SYSTEM_EXTENSION_INSTALL", "USER_MANAGEMENT", "APPLE_ID_AUTH" ] }, settings: { type: "array", description: "Optional capability settings", items: { type: "object", properties: { key: { type: "string", description: "The setting key" }, options: { type: "array", items: { type: "object", properties: { key: { type: "string" }, enabled: { type: "boolean" } } } } } } } }, required: ["bundleIdId", "capabilityType"] } },
- src/index.ts:1373-1377 (registration)Tool dispatch/registration in the MCP CallToolRequest handler switch statement, mapping 'enable_bundle_capability' to bundleHandlers.enableBundleCapability.case "enable_bundle_capability": return { toolResult: await this.bundleHandlers.enableBundleCapability(args as any) }; case "disable_bundle_capability": return { toolResult: await this.bundleHandlers.disableBundleCapability(args as any) };
- src/types/bundles.ts:72-88 (schema)TypeScript interface defining the API request body structure used by the handler for enabling bundle capabilities.export interface EnableCapabilityRequest { data: { type: "bundleIdCapabilities"; attributes: { capabilityType: CapabilityType; settings?: CapabilitySetting[]; }; relationships: { bundleId: { data: { id: string; type: "bundleIds"; }; }; }; }; }