Skip to main content
Glama
mgcrea

@mgcrea/mcp-cloudkit

by mgcrea

CloudKit: Raw Request

cloudkit_request
Read-only

Issue arbitrary CloudKit management API GET requests as a fallback for undocumented endpoints not covered by specific tools; writes remain disabled.

Instructions

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyNoJSON request body.
pathYesAbsolute API path, e.g. "/v1/database/teams/{teamId}/containers/{containerId}/environments/DEVELOPMENT/schema".
methodNoHTTP method.GET
confirmNoRequired for any method other than GET. Explicit acknowledgement of a write.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.2.0
    • changedInput schema / properties / path / description
      Previous value: -"Absolute API path, e.g. \"/v1/database/teams/{teamId}/containers/{containerId}/environments/DEVELOPMENT/recordTypes\"."New value: +"Absolute API path, e.g. \"/v1/database/teams/{teamId}/containers/{containerId}/environments/DEVELOPMENT/schema\"."
  2. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, and the description adds meaningful context beyond that: writes are currently disabled and only GET is available. It also explains the rationale (undocumented API, need for a fallback). It stops short of describing response shape or failure behavior for arbitrary paths.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the tool's identity, then rationale, then the constraint and preference. Every sentence earns its place, though the rationale sentence is slightly long-winded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an escape-hatch tool with no output schema and full schema coverage, the description supplies the context an agent needs: what it is, why it exists, when to prefer siblings, and the current GET-only limitation. Return-value details are not needed here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including an example path and an explanation of confirm, so the schema already carries parameter meaning. The description reinforces the GET-only constraint but adds no format or syntax detail beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('issue an arbitrary CloudKit management API request') and frames it as an escape hatch. It explicitly contrasts itself with the sibling cloudkit_* tools, so an agent can tell when this is the right pick without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Prefer a specific tool when one fits' gives a clear selection rule, and 'this exists because the API is undocumented, so one endpoint being shaped differently than expected should not make the rest unreachable' explains the fallback condition. It does not name which sibling covers which route, but the general guidance is unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.