Skip to main content
Glama
mgcrea

@mgcrea/mcp-cloudkit

by mgcrea

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CLOUDKIT_DEBUGNoSet to 1 to log to stderr.
CLOUDKIT_TEAM_IDYesYour 10-character Apple Developer team id.
CLOUDKIT_MAX_RETRIESNoRetry budget for 429/5xx. Defaults to 3.3
CLOUDKIT_ALLOW_WRITESNoSet to 1 to register cloudkit_deploy_schema and cloudkit_import_schema. Off by default.0
CLOUDKIT_CONTAINER_IDNoDefault container, e.g. iCloud.com.acme.App, so it need not be passed on every call.
CLOUDKIT_MANAGEMENT_TOKENYesYour CloudKit management token (Apple's own variable name used by xcrun cktool).

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
cloudkit_auth_statusA

Report whether this server has a working CloudKit management token, whether writes are enabled, and — when something is missing — exactly what to set. Call this first when a tool you expected is not listed: an absent tool here means missing configuration rather than a bug.

cloudkit_list_containersA

List the CloudKit containers this team can manage, with their ids. Use this to find the container id the other cloudkit_* tools take.

cloudkit_list_record_typesA

List a container environment's record types and their fields. This is how you confirm a newly added field actually reached CloudKit: Core Data and SwiftData prefix everything with CD_, so a Swift property isHidden on Track appears here as CD_isHidden on CD_Track. A field missing from DEVELOPMENT has not been written by any client yet — there is nothing to deploy until one has.

cloudkit_export_schemaA

Export an environment's full schema as a .ckdb document. Returns the text, or writes it to outputPath and reports where it went. Exporting both environments and diffing them locally is one way to review a pending change; cloudkit_diff_schema is the direct one.

cloudkit_diff_schemaA

Show what deploying would change: the pending differences between the container's DEVELOPMENT and PRODUCTION schemas, one row per change. Read this before cloudkit_deploy_schema. Production is additive-only and irreversible — a field can be added forever, but never removed, renamed or retyped — so a diff proposing anything other than additions is a reason to stop.

cloudkit_validate_schemaA

Validate a local .ckdb file against a container environment without importing it. Read-only: it reports whether the schema would be accepted, and changes nothing.

cloudkit_requestA

Escape hatch: issue an arbitrary CloudKit management API request. The other cloudkit_* tools cover the documented-by-observation routes; this exists because the API is undocumented, so one endpoint being shaped differently than expected should not make the rest unreachable. Prefer a specific tool when one fits. Only GET is available while writes are disabled.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mgcrea/mcp-cloudkit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server